Steam library on NFS - lower than expected performance?

Hi All,

I’ve got lower than I was expecting performance, using Steam as a test. Bloons TD6 is taking over five and a half minutes to load. Nier Automata is simlar and even “Lit: Bend the light” (515MB disk space) takes over 3 minutes to load.

CPUs (client or server) are almost idle, NIC is not working hard. MTU is 9000. Its a home lab with not much running (ubiquiti management). SSDs are only occasionally breaking 2MB/s and there’s 245G RAM free on Truenas.

Switching from NFS to iscsi can shave up to 20 seconds off launch, but its normally quite similar. No speed-up is evident on subsequent loads (not RAM caching?)
SSDs are running off a cheap carrier card (motherboard bifurcation).

Does anyone have any hints on where to look for trouble?

  • Truenas 24.10.1: Dell 5820 (W2155 CPU)/256G RAM/Steam library running on pool utilising just 1 vdev with 3x Samsung 980 Pro 2TB SSDs in x16 slot/ Chelsio dual port 40G NIC (one link back to back with client) storage network / 1G management NIC

  • Client is X79 / E5-2667v2 / 32G RAM / Chelsio 40G NIC / Ubuntu 24.10

  • tcpdump confirms correct NIC usage for NFS.

  • iperf confirms network performance at ~20GB/s.

  • peak NIC throughput peaks with a couple of spikes at 400Mb/s from the Truenas reporting graph, most traffic is at 3Mb/s

  • A separate pool & vdev exist (mirrored 12TB HDD) for all other data.

What speeds do you get for moving games off and on the iSCSI?
My guess is the problem is latency.
Game libraries on iSCSI are mostly a meme by Lawrence Systems nowadays :smile:
SSDs are cheap, and iSCSI is too slow for modern games anyway.
You can get a 70$ 1TB NVME drive that will outperform your iSCSI, it is not even close. And you can still use your pool to offload the games. That way you also don’t never need to use iSCSI and can use NFS datasets without the downsides of blockstorage.

1 Like