Hello,
I am experiencing unexpectedly low read/write performance on my TrueNAS Scale server running version Dragonfish-24.04.2.
The pool in question consists of x4 Western Digital Red Pro 16TB 7200 RPM drives in RAIDZ-1. Each of these drives have been benchmarked to read and write in the ballpark of ~210 MB/s. I found a RAIDZ calculator which suggested that I should get read speeds of ~3x that of an individual drive, which would be ~630 MB/s.
The connection between my laptop and the TrueNAS server is limited to 1 gbps - this is my laptop’s NIC. The cable between my laptop, the switch between them, and the NIC on my TrueNAS server all support 2.5G. I did test multiple cables and got the same results. Therefore, I would expect my bottleneck to be 1 gbps / 125 MB/s.
However, the best I can achieve is 80 MB/s writes and 70 MB/s reads over SMB, which is significantly less than my network connection. Useful notes:
- No SMART tests, scrubs, or other tasks were running to the best of my knowledge
- No apps should have been putting any significant load on the pool
- The dataset had no compression and no encryption
- Not very scientific, but I was copying large files (~1-2 GB) to get ~an ideal scenario because this is faster than many small files (RIP git users)
- I have DDR5 RAM and a Core i9, so I don’t believe these are the issue
Questions
- Any ideas on what’s causing this poor performance?
- I acknowledge the calculator may have been wrong, or I interpreted the results incorrectly, so does anyone have any experience which indicates whether these are reasonable values for my setup?
- I’m not familiar with SMB overhead - could this be the issue?