2

File this as me just being curious.

I have an old computer (Dell gx280) that has a external usb 2.0 hard drive connected to it. I was trying to copy the files over a gigabit network connection to another computer and it was only transferring at approx. 2.5 megabytes a second. This was only using a small fraction of the gigabit network card in both the source and destination computer. I saw the CPU was maxed out on the source PC b/c of an application. Once I quit that application the CPU usage went back to essentially nothing. The copy job then jumped up to 14 megabytes a second and was using 30-35% of the gigabit connection.

The NIC and the USB ports are on the motherboard. How did the CPU usage slow this whole process down and was it impacting the network card, the USB port or both?

4
  • Was the program reading or writing to the hard drive too? Commented Jun 20, 2013 at 19:52
  • The program was WinVNC which I assume means a minimal amount of reading of the local hard drive...not the USB drive.
    – PHLiGHT
    Commented Jun 20, 2013 at 19:54
  • I find it very odd WinVNC would max out a CPU. Commented Jun 20, 2013 at 19:57
  • Agreed, it's a fluky occurrence but definitely is and continues to with subsequent remote connections.
    – PHLiGHT
    Commented Jun 20, 2013 at 19:59

2 Answers 2

2

USB is more of a CPU-driven interface, more so than your NIC or hard drive. The host must orchestrate and be involved in most USB trasactions. Firewire is capable of moving data without assistance from the host and this is one of its advantages over USB.

There are newer standards such as USB OTG that sort of provide this capability, but I'm unsure if it can help in PC to peripheral transfer speeds (it's meant to allow two USB peripherals to connect without a PC in the middle if I'm not mistaken). If you were using a standard USB 2.0 drive on a standard USB 2.0 chipset then it can't be a factor.

If you have antivirus, DRM, or encryption software intercepting each read and write operation that could also play a part.

0

Where did you execute the copy on PC2 or PC1 (Dell gx280)? When you try to copy a file over the network, your PC needs to take the file and break it into TCP packets before sending them over network. That requires CPU usage. So, when you if your CPU is occupied to do other higher priority processes than copy (which would probably have a lower priority than your application), then your NIC won't be receiving the packets to send it over the network.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .