After several weeks of severe benchmarking, we’d like to share our findings on the Samsung 845DC PRO. We purchased multiple drives, tortured them under various load levels in different setups and found that they seem to be the perfect fit for “wide sata”-type of deployments (non-NVMe).
Note: all data, including raw benchmark output file at µs-precision is available at GitHub!
We tested the 400GB model but expect the 800GB model to behave similar. Our findings:
We liked:
- drive certified at up to 7x with stress testing at 14x on default settings (1.5kb records, 67% read-rate)
- very good latencies at the lower (majority/~80%@7x complete at 64-128µs) and upper end (hardly any ops > 8ms)
- 12-14x is still stable, can run at that load if 12% > 1ms, 5% > 2ms and 1.5% > 4ms latency is still acceptable for your app and no headroom for peaks is required (e.g. offline-processing, immediate instability if going beyond that write load)!
- durability: 10 DWPD warranty is enough to run 12x load at 24/7 for the complete warranty time (5 years)
- economics (we paid 250-275$ per 400GB, Intel charges twice that per GB! (Update: now 195$ on amazon.de))
- well performing 400GB model allows “wide sata” deployment of 8+ drives with linear scalability.
We didn’t like:
- latency per second shows periodic spikes (some algorithm) which makes up for the majority of % > x averages.
- no firmware update to lower effect of that algorithm 2 years after it was initially released
- uncertainty if product will reach end of life (sales) in 2016 and how that might affect pricing/availability.
- Intel does a better job on the 1ms and 2ms buckets (probably due to better firmware).
Our tests with default read ratio of .66 (so 1x = 1000 writes + 2000 reads at 1.5kb):
- 1x without over-provisioning (“passing” ACT)
- 3x without over-provisioning (“passing” ACT)
- 5x without over-provisioning (“passing” ACT)
- 6x without over-provisioning (stable at increased latency)
- 12x without over-provisioning (stable at increased latency)
- 16x without over-provisioning (failed to complete)
- 1x with additional 21% OP (“passing” ACT)
- 3x with additional 21% OP (“passing” ACT)
- 6x with additional 21% OP (“passing” ACT)
- 7x with additional 21% OP (“passing” ACT)
- 7.5x with additional 21% OP (stable at increased latency)
- 12x with additional 21% OP (stable at increased latency)
- 14x with additional 21% OP (stable at increased latency)
- 15x with additional 21% OP (instable, dozens of errors on console)
- 16x with additional 21% OP (failed to complete)
and with non-default read/write ratios:
- 3000 writes + 36,000 reads with additional 21% OP (“passing” ACT)
- 6000 writes + 24,000 reads without over-provisioning (stable at increased latency)
- 6000 writes + 24,000 reads with additional 21% OP (“passing” ACT)
- 12,000 writes + 6,000 reads with additional 21% OP (stable at increased latency)
All tests (if not stated differently) were run on cheap desktop-class hardware running CentOS 7.1: Intel 4770k Cpu, GA-HD87-HD3 Mobo, 16gb DDR3-1600 non-ECC. We had some stability issues with ACT on Ubuntu 14.04 LTS, therefore we’d recommend to use CentOS. 21% OP means remaining capacity was 296 GiB / 318 GB. Pricing above is from Europe in Q4/2015, excl. sales tax (not paid by EU companies).
We think that publishing the raw benchmark results is one way of giving back to the community after we have received so much support from the team and others. If anybody is interested in benchmarking a special workload on these drives, we can do so (just contact me via GitHub). Any feedback is welcome.
Note: some of the results will be uploaded to github within the next days. Come back in a few days to find more results, especially with double read-rate (80% read, 20% write)