I figured it's better to start another topic rather than tack on to another user's post, because they tend to get specific based on the individual's configuration. My system is in the signature. While I'm waiting on my SATA controller and 4 SATA drives, I decided to setup a ZFS volume on a 300GB PATA drive just to get comfortable with the way FreeNAS operates.
I enabled CIFS with Large RW, send with sendfile(2) and AIO enabled. I created a Windows share and made it 777 because I haven't yet learned how to make it writable to the windows user any other way. I'll figure that out later.
On Windows 7 Professional, I see the server as FREENAS.LOCAL and see the CIFS share "Test" under that.
With no config changes copy speeds from Windows to FreeNAS were abysmal, somewhere in the 2-7MB range. iperf indicated the performance was 523 Mbits/sec. The NIC is a PCI Realtek Gigabit and I verified 1000 is shown in the media line in ifconfig. A Windows ftp to the same share got me about 34MB/s on a large file copy.
Here's my current loader.conf:
With everything but the prefetch in there, the speeds were still less than 10MB/s. I added the prefetch line and am now up to about 35 MB/s. It's much better but still slower than I expected.
I also setup another volume on a 120GB PATA disk as UFS and created a Windows share for it. With no tuning the copy speed was 20-30 MB/s but the system panicked during the copy and had to be rebooted. I haven't tried it again since making the loader.conf changes mentioned above. It's not a high priority for me because the ultimate goal is to have 4x2TB drives in a ZFS configuration.
So, is there anything else I can tweak to get higher performance? FYI, I ran iperf again with different settings recommended in a post and came up with this:
Oddly the Windows machine still reported 534 MBits/sec for this same test, but to be fair I've never heard of iperf before tonight so I'm not surprised I don't understand it.
I enabled CIFS with Large RW, send with sendfile(2) and AIO enabled. I created a Windows share and made it 777 because I haven't yet learned how to make it writable to the windows user any other way. I'll figure that out later.
On Windows 7 Professional, I see the server as FREENAS.LOCAL and see the CIFS share "Test" under that.
With no config changes copy speeds from Windows to FreeNAS were abysmal, somewhere in the 2-7MB range. iperf indicated the performance was 523 Mbits/sec. The NIC is a PCI Realtek Gigabit and I verified 1000 is shown in the media line in ifconfig. A Windows ftp to the same share got me about 34MB/s on a large file copy.
Here's my current loader.conf:
Code:
# # Boot loader file for FreeNAS. This relies on a hacked beastie.4th. # autoboot_delay="2" loader_logo="freenas" #Fix booting from USB device bug kern.cam.boot_delay=10000 # GEOM support geom_mirror_load="YES" geom_stripe_load="YES" geom_raid3_load="YES" #geom_raid5_load="YES" geom_gate_load="YES" ntfs_load="YES" smbfs_load="YES" xhci_load="YES" vm.kmem_size_max="2560M" vm.kmem_size="2560M" vfs.zfs.arc_min="1536M" vfs.zfs.arc_max="1536M" vfs.zfs.prefetch_disable=0 hw.hptrr.attach_generic=0
With everything but the prefetch in there, the speeds were still less than 10MB/s. I added the prefetch line and am now up to about 35 MB/s. It's much better but still slower than I expected.
I also setup another volume on a 120GB PATA disk as UFS and created a Windows share for it. With no tuning the copy speed was 20-30 MB/s but the system panicked during the copy and had to be rebooted. I haven't tried it again since making the loader.conf changes mentioned above. It's not a high priority for me because the ultimate goal is to have 4x2TB drives in a ZFS configuration.
So, is there anything else I can tweak to get higher performance? FYI, I ran iperf again with different settings recommended in a post and came up with this:
Code:
[root@freenas] ~# iperf -c 192.168.2.7 -t 60 -i 10 -f M ------------------------------------------------------------ Client connecting to 192.168.2.7, TCP port 5001 TCP window size: 0.03 MByte (default) ------------------------------------------------------------ [ 3] local 192.168.2.70 port 27492 connected with 192.168.2.7 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 647 MBytes 64.7 MBytes/sec [ 3] 10.0-20.0 sec 637 MBytes 63.7 MBytes/sec [ 3] 20.0-30.0 sec 635 MBytes 63.5 MBytes/sec [ 3] 30.0-40.0 sec 636 MBytes 63.5 MBytes/sec [ 3] 40.0-50.0 sec 633 MBytes 63.3 MBytes/sec [ 3] 0.0-60.0 sec 3820 MBytes 63.7 MBytes/sec
Oddly the Windows machine still reported 534 MBits/sec for this same test, but to be fair I've never heard of iperf before tonight so I'm not surprised I don't understand it.