CIFS Performance Testing
We combine several hardware components to produce our NAS reviews. It all starts with the Quanta CB220 server that we rebuilt with more system memory and Intel Xeon E5-2690 processors. The system produces the workload for the NAS to run. Between the CB220 and the NAS, we use a powerful Supermicro SSE-X3348TR switch.
We configured the Synology DS1819+ system in four ways. The first is as a base system with eight Seagate IronWolf Pro 12TB drives running in RAID 6 with the built-in gigabit network. The second configuration uses the 10GbE add-in card adapter for higher throughput to the system. The third and fourth configurations use the NVMe accelerator card to cache IO data using Intel's Optane SSD 110GB drives. The third configuration is a single Optane SSD for read only cache. The fourth configuration uses two Optane SSD 110GB SSDs in a read and write cache configuration.
Sequential Read Performance
The Synology DS1819+ doesn't have any problems saturating the upper throughput limits of a Gigabit Ethernet bus from the factory. The system even saturates a 10-gigabit network with enough read requests.
Sequential Write Performance
Since we have the two configurations with SSDs, we run an overprovisioning pass on any test with data writes to find steady state. This is a good practice for testing any NAS. Some companies use the system's DRAM for IO cache as well.
The DS1819+ doesn't saturate the 10GbE network with eight HDDs but it does burst to just under 900 MB/s. At 1 OIO, a fancy way of saying a single data transfer to the NAS, the system writes around 350 MB/s. That nearly doubles when we push two files to the system.
The two cache configurations are irrelevant in this test. The read-only cache doesn't do anything when writing data, and the read/write cache only works on small block size data, like we often find in random workloads.
Sequential Mixed Workloads
If you do anything other than simply holding files on a NAS, you will eventually pass data in both directions. These are mix workloads. Ethernet is bidirectional, and fast NAS can maximize the bandwidth in both directions.
Over a gigabit network, the DS1819+ pulls a perfect reverse bathtub curve with the full bidirectional bandwidth utilized. This is only possible with ample processor performance to move the bits along.
Over a 10-gigabit network, the throughput is much higher, but the IO is more inconsistent. For most workloads, the quality of service isn't that important. The system is able to surpass the limits of single direction 10GbE in read centric mixes. Once the mix enters more writes than reads the performance drops.
Random Read Performance
The random read test is the first in this series to take advantage of the cache SSDs. In this case, we utilized Intel's M.2 Optane SSD with 110GB of capacity. You can see the results with Samsung's 1TB 960 Pro in comparison here.
The Optane SSD produces around 30,000 random read IOPS at queue depth 1 inside a PC. In a NAS and over a network, the same drive delivers right around 4,000 IOPS at 1 OIO. The random read performance is significantly higher than the HDD only configuration, even with a 10GbE network.
Random Write Performance
The processor in the Synology DS1819+ is powerful for a business NAS, but it's not a full application server with dual Xeons with massive system memory. The system is strong enough to run applications, but not in the same class as systems used to run massive databases and real-time OLTP. You can see that in the random write tests where the results fall all over the place. There isn't a consistent line of IO, even using Intel's Optane SSD for cache. The last chart does show that the Optane SSDs in read plus write cache does increase performance.
Random Mixed Workloads
The random mixed workload results are interesting. The read plus write cache configuration shows a strong advantage in this test, as it should. The 100% random read shows a strong uptick in with the read-only SSD cache, but it takes quite a while to increase performance. In the future, we plan to increase the ramp-up time in the test to see if more preconditioning increases the read-only cache results.
The two HDD only tests are only noteworthy on the right end of the chart, where we have more data writes than reads. The Synology DS1819+ uses DRAM, either from the HDD or the system memory, to cache small block size writes. This is a finite resource though so it quickly runs out of space and the data must write directly to disks when that happens. You can see a slight uptick in performance as more writes enter the workload.