Question:
What factors into computer file transfer speeds?
kevin
2017-03-28 04:31:05 UTC
Not transfering between LAN, Wifi, simply a file transfer on my system, what kind of stuff (hardware) would improve or be a factor in the speed of a file transfer.

Just a example: CPU is a big role in file transfers because [x] and [y]

Let's say hypothetically, we are currently sitting at 14MB/s for a 13GB uncompressed folder file transfer. What could improve this, or play a role in it's current speed?
Four answers:
Richard
2017-03-28 15:07:22 UTC
Interface to the drive:



SATA is faster than PATA. USB3 is faster than USB2. USB3 should give well over 100 MB/s.



Type of file system. NTFS is probably slower than FAT32 as it is a journalising file system (although FAT32 has a 4 GB limit on a single file).



RAM and bus speed.



CPU is relatively unimportant as transferring files between drives should be DMA not CPU dependent for performance.



Operating System's disk access scheduling algorithms. Important for small files. Good algorithms minimise seek times on HDDs. Each seek is wasted time. This is not relevant on SSDs.



For HDDs, using the correct sector interleave factor. Not relevant for SSDs.



For HDDs, the drive's ability to schedule writes to the media from its own cache to optimise write performance.



Transfer block size. Easiest to see in Linux. It takes much longer to copy files using 512 reads/writes than it does using 1 MB transfers.



For SSDs, have transfers aligned to the drive's internal block size (often aligned to 4 kB boundaries).



For HDDs, having the drive defragmented, and where possible using the outer (lowest numbered) cylinders which have much higher transfer speeds than the inner cylinders. Where a drive carries multiple file systems, the rarely used files should be on file systems closest to the centre on the disk.



Using high speed HDDs. The rotational latency of a 10000 rpm drive is about a third of the latency of a 3600 rpm drive. (5400 and 7200 rpm are probably the most common speeds.)



If the files are being compressed, encrypted or scanned for malware, then this can be CPU intensive.



RAID hardware may help compared with single disks. RAID 0 (striping) will normally offer best performance with read/write blocks that match the stripe width. RAID 1 can be significantly slower at writing but faster at reading. RAID 3 or 5 can offer some speed advantages providing the parity generation in the RAID is not a limiting factor while writing.



I hope this helps.
Faheem
2017-03-28 08:59:31 UTC
CPU speed, System Bus Speed, Frontside Bus Speed, Buffer/Cache capacity inside device and in RAM, available RAM etc.

make sure to place all files in a RAR file with fastest compression mode. this is only thing that matters without improving hardware.
Robert J
2017-03-28 07:16:26 UTC
Simple point to point file transfer needs minimal CPU power.



The limitations are generally in the hardware; eg. a USB device or simply the speed of the physical drives.



With USB2, the limit is generally somewhat under 50MB / Sec. (to/from a USB hard drive).

USB flash drives are generally much slower, at least when writing.



Anything involving a laptop type HDD may be slow, depending on the type.



Gigabit Ethernet with desktop hard drives at either end should give 90+ MB per second.



They are all assuming large files.





14MB per second sounds like Windows working with large quantities of small files, with a fragmented hard drive as the source or a slow drive/fragmented as the destination.



Cleaning and defragging the source and destination drives may help; ccleaner & then "mydefrag".

[Do not defrag an SSD, it does no good and shortens the life].





The Window file system is simply not good when working with large quantities of small files...

I once unpacked the same massive archive of small files to both an old, slow, linux machine and my windows based gaming machine of the time; the Linux one took a few seconds & the windows one almost an hour.
2017-03-28 06:07:53 UTC
Limitation is usually the sustained write speed of the destination drive.



The interface is usually much faster then the physical drive write speed, so while the disk can receive a small burst of data at full speed, once the onboard cache memory is full, the data has to be moved to the magnetic disc, which takes longer. So the next blocks of data are held up for a few milliseconds.



This is where large enterprise disc arrays come in. They of course use higher speed discs, and put them in a RAID array so data is written to to multiple physical discs simultaneously.



Of course there are other factors that could slow things down. Software issues like running real time virus scanning while doing the transfer is another one. If every file you open need to be scanned for a virus before it's moved, there is a large delay right there.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Loading...