0

I needed to transfer some data from my mobile phone to a USB drive. Since I did not have an OTG cable, I decided to use my computer and connected both the drive and my phone to it. When I transferred some data directly from my phone to the drive, it took ALOT of time. Like the folder was 800MB and it took 6-7 minutes. But when I tried transferring a folder from my phone to my computer and then from the computer to the drive, it was considerably faster. A 1.4GB folder was done in 1 minute and 30 seconds or so. Could anyone tell me why this could have happened?

PC specs: I3-7100 8GB DDR4 RAM 1 TB HDD

  • Your observation is based on non-identical data sets. Could you check the folder content, and whether there are a bunch of small config files, or a collection of 4-MB-size pictures? If your first folder did contain many small files, the transfer can take a while. Try to copy identical data sets to avoid confusion. – Ale..chenski May 12 '19 at 07:38

1 Answers1

1

It seems most likley that the USB connection is the bottleneck. If both, your phone and your USB stick, are connected to the same USB root hub it might be the case. Especially if both devices run as USB 2.0 device (as most phones do).

USB has a maximum transfer rate per root hub and all devices share this. You also have some overhead which is increased due to multiple deivices transmitting in parallel.

You could try to use different USB ports in order to connect to different usb hubs on your motherboard. Try one front and one back port.

Edit1: For a better explaination how devices share a hub and why having two devices communicating in parallel can lead to a worse performance than 50% for each device please have a look at this answer: https://superuser.com/a/1178617/178487

masgo
  • 2,194
  • 1
  • 16
  • 32
  • Thanks for the advice,the transfer is already done so I can't check the speed right now. – Science_Weeb May 09 '19 at 09:20
  • 1
    Oh and btw. If your phone and wifi is quite new, using wifi might be faster than usb 2.0. If your phone has a micro-usb connector, then it is definelty at most usb 2.0 – masgo May 09 '19 at 09:23
  • It's a USB-C device and it's 2 years old – Science_Weeb May 09 '19 at 09:37
  • Even for newer devices USB3.0 speeds aren't enabled by default. Check you connection settings in the phone when connected to the PC. –  May 09 '19 at 09:42
  • Wrong answer. USB connection is indeed the bottleneck, but transferring data one way first and than another way should consume exactly the same time as multiplexing the transfers in smaller blocks. Unless the host software uses wrong buffering policy and breaks the pipe into small chunks initiating file directory look-up every time. – Ale..chenski May 12 '19 at 07:39
  • @Ale..chenski in theory, yes, they would share the bandwidth. But in reality something else happens. Please take a look at this answer: https://superuser.com/a/1178617/178487 – masgo May 12 '19 at 19:20
  • 1
    TT has nothing to do with USB 2.0 HS transfers, it affects FS/LS devices only. My theory behind this OP observation is that when managing two opposite pipes through the same HS channel, host software breaks long transfers into many smaller chunks, and file system overhead kicks in. But I am not sure, I might look into this with protocol analyzer... – Ale..chenski May 12 '19 at 22:03