Greetings!
tldr:
My NAS performs slowly when using AFP, CIFS, or FTP despite positive results in iperf. The drives seem to be functioning properly in all but one test. I don't know where I should look next in resolving this.
------------------------------------------------------
Longer version:
I have slower than expected read / write speeds to my four drive striped system whether configured using UFS or ZFS. This mostly occurs when I access the drives remotely (AFP, CIFS, FTP). Sounds like a network issue, but iperf says otherwise. My network speeds both incoming and outgoing are excellent. Ping response time to the NAS runs between .125-.225 ms. iperf reports my network speed at 95MB/s from desktop to NAS and 115MB/s from NAS to desktop. The network, from what I can tell, is running great.
Regarding disk speed, I ran 'dd if=/dev/zero of=/path/to/file bs=4096' to each drive individually and got about 45MB/s writes. When I ssh in and run dd to the striped volume I get about 175MB/s. When I cp a file from a 7200rpm SATA drive on my desktop to the NAS I get about 38MB/s. cp from NAS to desktop runs at about 65MB/s (the same speed I get when I cp from the desktop to itself). When I cp a file locally from the NAS to itself I get about 52-65MB/s (this seems low to me for a four drive striped array). AJA System Test gets 30-43MB/s writes to the NAS from the desktop with 85MB/s reads.
Each of the above tests reflects performance when connected over AFP. CIFS is slightly slower. I haven't bothered to measure the exact transfer rate over FTP, but it's in the same ballpark. The above also uses UFS striped; ZFS is also slower.
I've watched system resources in top and my cpu and RAM have room to breathe during each test. AFP gets up there on cpu, but even then I still have about 10% inactive.
Questions:
Why the performance gap between cp and dd?
What of the performance gap between cp on the NAS and cp on the desktop?
Why do I get such good performance running dd on the NAS and such poor performance running it through the network? I'm not even beginning to approach the data rate that I get from iperf.
Any help is greatly appreciated. I've been working on this for days on end without coming to a solution.
Here are the details of my setup:
FreeNAS 8.2 - 64 bit
SuperMicro XSPA-H-D525 MLB with dual core 1.8GHZ Atom and 82574L gigabit NIC plus 4GB RAM
4x Samsung 2TB green drives
tldr:
My NAS performs slowly when using AFP, CIFS, or FTP despite positive results in iperf. The drives seem to be functioning properly in all but one test. I don't know where I should look next in resolving this.
------------------------------------------------------
Longer version:
I have slower than expected read / write speeds to my four drive striped system whether configured using UFS or ZFS. This mostly occurs when I access the drives remotely (AFP, CIFS, FTP). Sounds like a network issue, but iperf says otherwise. My network speeds both incoming and outgoing are excellent. Ping response time to the NAS runs between .125-.225 ms. iperf reports my network speed at 95MB/s from desktop to NAS and 115MB/s from NAS to desktop. The network, from what I can tell, is running great.
Regarding disk speed, I ran 'dd if=/dev/zero of=/path/to/file bs=4096' to each drive individually and got about 45MB/s writes. When I ssh in and run dd to the striped volume I get about 175MB/s. When I cp a file from a 7200rpm SATA drive on my desktop to the NAS I get about 38MB/s. cp from NAS to desktop runs at about 65MB/s (the same speed I get when I cp from the desktop to itself). When I cp a file locally from the NAS to itself I get about 52-65MB/s (this seems low to me for a four drive striped array). AJA System Test gets 30-43MB/s writes to the NAS from the desktop with 85MB/s reads.
Each of the above tests reflects performance when connected over AFP. CIFS is slightly slower. I haven't bothered to measure the exact transfer rate over FTP, but it's in the same ballpark. The above also uses UFS striped; ZFS is also slower.
I've watched system resources in top and my cpu and RAM have room to breathe during each test. AFP gets up there on cpu, but even then I still have about 10% inactive.
Questions:
Why the performance gap between cp and dd?
What of the performance gap between cp on the NAS and cp on the desktop?
Why do I get such good performance running dd on the NAS and such poor performance running it through the network? I'm not even beginning to approach the data rate that I get from iperf.
Any help is greatly appreciated. I've been working on this for days on end without coming to a solution.
Here are the details of my setup:
FreeNAS 8.2 - 64 bit
SuperMicro XSPA-H-D525 MLB with dual core 1.8GHZ Atom and 82574L gigabit NIC plus 4GB RAM
4x Samsung 2TB green drives