I need to transfer more than one big file on USB or SD device, let's say 4 files of 1 GB each.
I noticed that on USB, the concurrent transfer of multiple files is way slower than queuing up the copy; it's a simple test I made by myself:
Test 1 (queue):
$ cp file1 /mnt/usb;cp file2 /mnt/usb;cp file3 /mnt/usb;cp fil41 /mnt/usb;
Test 2 (concurrent, from 4 different shells)
$ cp fileN /mnt/usb
This problem doesn't happen on MacOS. If I perform the same tests, the total copy time is pretty much the same.
Why this happens on Linux? Why does performance degrade so much in concurrent writing? Is there any other way to work around this problem (besides copying files in a queue)? I tried with both