Different avg. latency between SSD 845DC EVO and 850 PRO?

Status
Not open for further replies.

BNoir

Cadet
Joined
Apr 22, 2016
Messages
5
Hallo Freenas Forum,

first of all - thanks to the developers for this cool software and thanks to this forum that helped learning the basics and details of FreeNAS.

It's a bit LONG story. You can also go down to "HERE" were the concrete question is asked.

I came to FreeNAS about 6 months agao as I was really unhappy with our IT installation.
About 4 years ago we have bought a bundle of 2 ESXi Servers (in meanwhile 3) and a Netgear ReadyNAS 4200V1 (Raid-5) as storage (everything connected via 10 Gig/s) from our IT company, who also built up and configured everything. We have about 15 Windows VMs and 5 Linux VMs. Most of them don't have high load.
About 30 users work on 3 Terminal-Servers (Windows 2008 R2, we are currentcly changing to Windows 2012).

From my point of view the IT company did a quite poor job. They needed many months to build up everything etc.. Since then we had performance issues, foremost the users working on the Terminalservers complained about "hanging" Desktops. The IT company tried a lot to ease the problems, I even bought some quite useless new hardware (faster 10K harddrives in Raid-1, new Switches etc.) but never found a solution, which our users were really happy with.

I'm quite sure for a long time, that the ReadyNAS 4200 is crap for our use case. In the attached file you'll see the latency of one of our Terminalservers on the ReadyNAS 4200. As avg. latencies of > 100ms are really bad the main problem seems to be the peaks. In this image you'll see it goes up to 800ms, but I have seen > 2.000ms quite often.
However, last summer we bought PernixData, which is a local SSD write and read cache on the host side.
The attached images are from the performance tab of PernixData. You see the "VM observed" is about 1-3 ms
This helped to ease the problems a bit, but they didn't get away. I think the "hanging" Desktops still happen, if the requested data are not on the local SSD cache and the ReadyNAS needs to answer too long (i.e. 500ms and more).
ReadyNAS 4200.PNG


As the christmas season 2015 went near - were we have high volume business - I searched for a solution on my own - and I came along FreeNAS.
I took our old Thomas Krenn server from 2009 (Xeon 3220 2,4 Ghz with 8 GB ECC RAM) and first bought a 850 Pro SSD (consumer version) as I didn't know if this works at all and would bring improvements to our existing ReadyNAS solution.
However after some minor problems I tested it with one of our Terminalserver VMs and the results were great. Latencies have been very low (~ 1 ms) and users on that machine stopped complaining.
I decied to work with this solution during christmas time, so our users could work without being enerved by hanging and slow IT.
To have a redunandt solution I took another old server (almost the same Thomas Krenn Xeon 3210 2,13 Ghz 8 GB ECC RAM) and bought 2x Samsung SSD 845DC EVO and set up another FreeNAS, this time with mirror-1 and zvol as device extent via iSCSI.
Everything worked great during christmas and I was really happy with this "solution".

I just moved the Terminalservers to the 2 FreeNAS servers. The Fileservers and other Severs with Databases etc. stayed on the ReadyNAS 4200. I thought - in worst case - if something goes wrong I can build up the Terminalserver from last backup. The user data are transfered to the fileserver every time they log out, so I did see small risks of a big data loss.
But nothing went wrong.


Thank you for your patience. I jus wanted to give you a proper image about my situation and how I did come to it.

HERE starts the real question.

I realized I installed the first server with the 1x Samsung 850 Pro SSD in iSCSI device mode without using the ZFS file system (no zvol) at all. Yesterday I changed this. I also added another 850 Pro SSD and recreated the storage with a zvol which is used as iSCSI device extent and reconnected it to my small ESXi cluster. Furthermore I changed the update trail from 9.3 to 9.10 as that is marked as stable now.

I now have two very similar machines:
Freenas 1: 2x 850 Pro SSD on Xeon 3220 2,4 Ghz, 8 GB ECC connected via 1 Gbit/s, no ZIL write cache, no L2ARC read cache, FreeNAS 9.10
Freenas 2: 2x 845DC EVO on Xeon 3210 2,13 Ghz, 8 GB ECC connected via 1 Gbit/s, no ZIL write cache, no L2ARC read cache, FreeNAS 9.3
I have read in the forums that sync=always is highly recommended, especially in iSCSI block devices used in ESXi, so I change to this mode for the SSD zvol on the Freenas 2 server some months ago.
In the attached image you'll se the differences in latency.
With sync=standard (between the red bars) the latency is < 1ms --> RAM latency). But also with sync=always I have quite stable and low latencys which are < 5 ms all the time.
This is the server with 2x Samsung 845DC EVO.
freenas with SSD 845DC EVO.PNG


The next image is from Freenas 1.
2x Samsung 850 Pro
Between the bars -> sync=standard, no latency of course.
After setting sync=always I expected more or less the same latencies s with Freenas 2.
But you see they are much higher latencies betwen 10-30ms. Of course this is way better than I ever had with the ReadyNAS (which doesn't support SSDs, so I couldn't test it there).
But for a SSD server the latency is quite poor.
freenas with SSD 850 Pro.PNG


The rest of the hardware is almost the same, so why these big differences?
Thanks for everyone who made it up till here and thank you for any answer.

One word to the 850 Pro.
I know this is a consumer version and shouldn't be used in a NAS, altough the TBW is quite high. I know it has no Power loss protection. I have attached an Eaton UPS to both Freenas servers and configured them to shut down on time in case of power loss.
Furthermore - as explained above - I accept a little risk of data loss as I "just" run the Terminalserver the.

Right now I'm asking myself how to go on.
Of course this setup is probably not the final one. The servers take ~ 130 Watt each and altough latency is for me much more important than raw performance I'd like to have a solution with 10 Gbit/s in the end.
I considered buying 1 or even 2 (redundancy) FreeNAS Mini XL or also a FreeNAS certified system from iXSystems.
My IT company complains about FreeNAS not being marked as "VMware ready". However, if this crappy Netgear ReadyNAS is certified but has not useable latencies this "VMware ready" doesn't say much for real life.
Of course I also could buy a TrueNAS from iXSystems, but that is a lot of money.
Or I build up my own FreeNAS server(s).
Or I listen to my IT company and buy a new version of something like ReadyNAS, Qnap etc.?

What do you think? I'm happy for every opinion about this issue.

Greetings
 

zambanini

Patron
Joined
Sep 11, 2013
Messages
479
du brauchst ein deutlich groesseres setup und wirst um truenas von ixsystems nicht herumkommen. wir reden hier von HA, min 128gb ram pro node usw. vorallem wirst du die latency unter vsphere nur mit sehr viel hardware power erreichen. optimal waere ein flash only system, bei platten solltest du an den fuellgrad denken -> ab 40% spuehrst du eine verlangsamung. gerade terminalserver lassen dich dann bluten.
 

depasseg

FreeNAS Replicant
Joined
Sep 16, 2014
Messages
2,874
One word to the 850 Pro.
I know this is a consumer version and shouldn't be used in a NAS, altough the TBW is quite high. I know it has no Power loss protection. I have attached an Eaton UPS to both Freenas servers and configured them to shut down on time in case of power loss.
What you are seeing is the difference between the 850Pro and 845DC. When you set sync=always, you are forcing the write to the pool (or a SLOG, which isn't applicable in this case). So you either need a lower latency pool or a low latency SLOG. I bet if you took an 845DC from freenas2 and added it to freenas1 as a Log (SLOG) for your pool, you will see a reduction in latency.

And as for power protection, a UPS will not protect the Data in flight in the SSD. If you do a hard reset of the server (or lose power supplies), you will lose whatever was in the memory of the SSD, which will cause corruption, especially since the pool thinks that transaction was committed to stable storage.
 

BNoir

Cadet
Joined
Apr 22, 2016
Messages
5
Thanks to your answers.

@zambanini
I appreciate your opinion. However, I'm not sure if I have a "power" problem. I'm quite satisfied with my current solution with these really old servers from 2009. Even the Freenas Mini boxes have better hardware as these.
The Freenas 2 (the one with the 2x 845DC EVO) has excellent latencies (< 5ms in 99% of time) even with sync=always and no SLOG and two active Terminal servers stored on it.
However of course my current systems as well as any other Freenas solution is not "Vmware ready" and my IT company doesn't like this and they won't give me support for this. But I'm not sure if I will work with them in future as they never found an accepatble solution for my latency problems with the ReadyNAS 4200.

In fact, I just realised they set the Readynas 4200 NFS-storage to "async"!?! So I assume my Freenas solution with sync=always is even more secure regarding corrupted vmdk files. Or are there any substantial differences between an async Readynas and an async Freenas in favor of the Readynas? I set the Readynas to sync, but got constant latencies > 500ms for the VMs residing on this storage, so I quickly changed back to async.

@depasseg
Thank you for your input. I couldn't believe it at first glance, but probably you are right. Probably the 845DC SSD "knows" that it has power loss protection, so it saves the data in cache and returns the ack for the data transfer before saving on solid drive, while the 850Pro "knows" it has no such power loss protection so it returns the ack just after the data has been saved on the solid drive. At least that's my noobie explanation.
But if this would be true, there should be no danger in losing any data in case of power loss. Or is the write latency of the 850Pro (with using internal caches) that much more poor than a 845DC (avg. 20ms vs. 1ms)? That's simple cursiosity. I will never buy again a consumer drive to work in Freenas - promised.

I just bought a 240 GB Samsung SM863 to use as a SLOG device and will have a look if and how the latencies will change.
 

BNoir

Cadet
Joined
Apr 22, 2016
Messages
5
A little update.

I have added the SM863 as SLOG device and indeed latency has reduced to the same level as it is on Freenas 2 with SSD 845DC Eco without SLOG.
Thanks for your help. This differences between the 850 Pro (consumer SSD) and 845DC Eco (enerprise SSD) is really interesting.
 
Status
Not open for further replies.
Top