DenisInternet
Dabbler
- Joined
- Jun 14, 2022
- Messages
- 28
Hey folks, I've been running my self built TrueNAS scale system for a few months, overall I love it. Also this forum has been a huge help in figuring things out, can't thank enough all the awesome and detailed documentation.
Overall I am very happy with how my system is running, the one thing though that doesn't seem to add up are the read and write speeds I am getting on my system. Before purchasing more RAM, or Testing new cables, new NIC etc. I was hoping to get some pointers on what and how to test things, to better understand what is causing the "bottleneck" or if the speeds I am getting are in fact correct for my setup.
I read the ZFS STORAGE POOL LAYOUT guide a few times, and ran a few shell commands to test things, and it seems that either my network settings/switch is bottlenecking the speeds (in which case, I will go back to the MicroTik discord folks for help with that), or I am not understanding the results I am getting, which as a newbie/rookie is very likely.
These speeds above look correct to what my RaidZ1 NVME pool should be capable of, but when testing the speeds on my Mac Studio using "Blackmagic Speed Test" I am getting 717.8 MB/s write speeds and 1464.5 MB/s read speeds.
So from more reading on the forums, I start reading/learning about iperf3 and that I should use that to test my actual network connection, so I tried running:
root@truenas[~]# iperf3 -c 192.168.1.253
iperf3: error - unable to connect to server: Connection refused
Tried trouble shooting but no success so far. Do I need to disconnect/shutdown my SMB share to run this test, or is this my MacStudio's firewall stopping my from running the test?
Specs and additional details below.
CPU: AMD EPYC 7302p+
MOBO: Supermicro H12SSL-i
SSDs: x6 WD UltraStar DC SN630 7.68TB NVMe PCIe 3.1x4 U.2 (In Raid z1)
RAM: x4 Supermicro (Hynix) 16GB 288-Pin DDR4 3200 (PC4-25600)
Broadcom HBA 9500-16i Tri-Mode - storage controller
Switch: MikroTik CRS504-4XQ-IN
NAS NIC: Supermicro AOC-S25G-B2S Rev 1.01 25GbE 2-Port PCIe 3.0 x8 Network Adapter
Mac Studio NIC: Sonnet Twin25G Dual 25G SFP28 to Thunderbolt 3 Adapter
For anyone reading, I found this very helpful to explain/visualize things: https://jro.io/r2c2/
Thanks!
*Update 3.
1) Made a clean install of TrueNAS to make sure nothing funky was happening.
2) Upgraded to 256GB RAM to improve performance.
3) Purchased second NIC to for Windows Machine, to test speed on two systems (MacOS and WinOS)
4) I changed the pool from 1 vdev with 6 NVMEs in RaidZ1 to a 2 vdev 3 NVME in Raid z1, and finally 3vdev mirrored pairs and while my performance has improved slightly, it is still much slower than expected.
Is there any other setting I can use to improve performance? It seems I am getting a bottleneck somewhere.
I am not sure if the bottleneck is SMB, my HBA, or somehow my CPU?
Overall I am very happy with how my system is running, the one thing though that doesn't seem to add up are the read and write speeds I am getting on my system. Before purchasing more RAM, or Testing new cables, new NIC etc. I was hoping to get some pointers on what and how to test things, to better understand what is causing the "bottleneck" or if the speeds I am getting are in fact correct for my setup.
I read the ZFS STORAGE POOL LAYOUT guide a few times, and ran a few shell commands to test things, and it seems that either my network settings/switch is bottlenecking the speeds (in which case, I will go back to the MicroTik discord folks for help with that), or I am not understanding the results I am getting, which as a newbie/rookie is very likely.
root@truenas[~]# dd if=/dev/zero of=/mnt/Nautilus_01/Post_Main/test.dat bs=2048k count=10000
10000+0 records in
10000+0 records out
20971520000 bytes (21 GB, 20 GiB) copied, 5.93856 s, 3.5 GB/s
root@truenas[~]# dd of=/dev/null if=/mnt/Nautilus_01/Post_Main/test.dat bs=2048k count=10000
10000+0 records in
10000+0 records out
20971520000 bytes (21 GB, 20 GiB) copied, 3.12151 s, 6.7 GB/s
root@truenas[~]#
These speeds above look correct to what my RaidZ1 NVME pool should be capable of, but when testing the speeds on my Mac Studio using "Blackmagic Speed Test" I am getting 717.8 MB/s write speeds and 1464.5 MB/s read speeds.
So from more reading on the forums, I start reading/learning about iperf3 and that I should use that to test my actual network connection, so I tried running:
root@truenas[~]# iperf3 -c 192.168.1.253
iperf3: error - unable to connect to server: Connection refused
Tried trouble shooting but no success so far. Do I need to disconnect/shutdown my SMB share to run this test, or is this my MacStudio's firewall stopping my from running the test?
Specs and additional details below.
CPU: AMD EPYC 7302p+
MOBO: Supermicro H12SSL-i
SSDs: x6 WD UltraStar DC SN630 7.68TB NVMe PCIe 3.1x4 U.2 (In Raid z1)
RAM: x4 Supermicro (Hynix) 16GB 288-Pin DDR4 3200 (PC4-25600)
Broadcom HBA 9500-16i Tri-Mode - storage controller
Switch: MikroTik CRS504-4XQ-IN
NAS NIC: Supermicro AOC-S25G-B2S Rev 1.01 25GbE 2-Port PCIe 3.0 x8 Network Adapter
Mac Studio NIC: Sonnet Twin25G Dual 25G SFP28 to Thunderbolt 3 Adapter
For anyone reading, I found this very helpful to explain/visualize things: https://jro.io/r2c2/
Thanks!
*Update 3.
1) Made a clean install of TrueNAS to make sure nothing funky was happening.
2) Upgraded to 256GB RAM to improve performance.
3) Purchased second NIC to for Windows Machine, to test speed on two systems (MacOS and WinOS)
4) I changed the pool from 1 vdev with 6 NVMEs in RaidZ1 to a 2 vdev 3 NVME in Raid z1, and finally 3vdev mirrored pairs and while my performance has improved slightly, it is still much slower than expected.
Is there any other setting I can use to improve performance? It seems I am getting a bottleneck somewhere.
I am not sure if the bottleneck is SMB, my HBA, or somehow my CPU?
Last edited: