I've been what seems like all over the internet looking for solutions but haven't found anyone with my specific problem. Hopefully you guys can help.
I built my own NAS both for cost savings and for better performance but I'm having some difficulties. First, the specs:
ASUS P7P55D-E LX Motherboard
Intel Core i3-540 Clarkdale 3.06GHz
G.SKILL 4GB (2 x 2GB) 240-Pin DDR3 SDRAM
(4x) HITACHI Deskstar 2TB 7200 RPM SATA 6.0Gb/s
and an older Seagate 250GB drive for FreeNAS v7.2.5543
Main PC is Windows 7 Home Premium, dual core 775 @ 4 GHz, 4MB RAM and a Raptor 74GB HDD (Soon to be two 64 GB SSD's in a RAID 0).
The NAS and my main PC are connected via a $25 Rosewill RC-409LX 10/100/1000Mbps Switch which shows they are indeed connected at 1000Mbps. Obviously I'm using SMB to share the NAS drives with Windows. The drives are in a RAID 5 which seemed like the best compromise between data redundancy and available space. It's an onboard RAID, I didn't want to spend $400 for a RAID card if I can get by without. This is just used for media serving for the house and some backups of other devices.
My first file transfers were fine... ~60MB/s and ~30MB/s and after some FreeNAS tweaking (checked 'Kernel Tweaking' and enabled polling) they were around ~80MB/s and ~55MB/s. This leads me to my first question. Why do large file transfers start out 50% faster and drop slowly to their stable speeds listed above? Filling up the RAM cache?
More importantly though, I noticed when I transferred a folder full of videos it was fine, but when I noticed I forgot another and moved that folder at the same time, both transfers dropped to ~5MB/s. Why?
Along the same lines, I had uTorrent downloading 4 files for me straight to the NAS, constant internet download speed of 1.4MB/s. I tried to transfer one 4GB file to the NAS and it was CRAWLING at 2-3MB/s. Same thing if I tried transferring from the NAS. WTH? Even after exiting uTorrent, transfers wouldn't go above 7MB/s. ATTO benchmark was showing pathetic results as well.
The NAS was barely awake according to the GUI. Cores are idle except one at 0-2% load - all of them at 14-15*C (it's in the basement), RAM is maybe 10% full.
Anyone have any thoughts as to what may be happening here? While typing this I started wondering if it had something to do with the cheap Rosewill switch, but it had unanimously good reviews on newegg.com...
> Why do large file transfers start out 50% faster and drop slowly to their stable speeds listed above? Filling up the RAM cache?
Exactly, Windows caches writes to RAM. When you transfer from a faster drive to a slower drive (for example from an internal drive to the NAS) the first part of the transfer seems very fast because the RAM cache can accept data as fast as it can be read from the source. But when the RAM cache fills up then the data has to start waiting for the slower output device to accept it and the transfer speed slows down to that rate.
> when I transferred a folder full of videos it was fine, but when I noticed I forgot another and moved that folder at the same time, both transfers dropped to ~5MB/s. Why
Sounds to me like you were performing two transfers involving the same drive. Whenever a drive tries to do two things at once there's a huge slow-down because of the need to move the heads back and forth between the different files the drive is trying to access. This is exactly the reason why SSDs are so fast - no heads to move (and wait for).
You don't use a NAS if you're trying to get the best possible performance. Gigabit Ethernet has a maximum possible transfer rate of only ~100MByte/sec, and that's under ideal conditions with no competing traffic. If your computer is connected to your NAS using the same network port that it uses to connect to other computers and the Internet, then it can significantly affect the speeds you'll see. It's not a linear relationship - downloading a file from the Internet at 1MByte/sec doesn't mean you still have ~99MByte/sec available for other work - the impact can be considerably worse than that.
If you want to maximize speeds and ensure consistency, you should have a separate dedicated network for the NAS and connect is to a different NIC on your computer.