Скорость передачи USB / SD для одновременной записи нескольких файлов в Linux

476
lorenzo.marcon

Мне нужно перенести более одного большого файла на устройство USB или SD, скажем, 4 файла по 1 ГБ каждый.

Я заметил, что на USB одновременная передача нескольких файлов намного медленнее, чем постановка в очередь копии; это простой тест, который я сделал сам:

Тест 1 (очередь):

$ cp file1 /mnt/usb;cp file2 /mnt/usb;cp file3 /mnt/usb;cp fil41 /mnt/usb; 

12 минут

Тест 2 (одновременный, из 4 разных оболочек)

$ cp fileN /mnt/usb 

40 минут

Эта проблема не возникает на MacOS. Если я выполню те же тесты, общее время копирования будет примерно таким же.

Почему это происходит в Linux? Почему при одновременной записи производительность сильно снижается? Есть ли другой способ обойти эту проблему (кроме копирования файлов в очереди)? Я пытался с обоими cpи rsync.

0
Это не вопрос программирования. unwind 11 лет назад 0
Ну, на самом деле я сделал упрощение. Случай, который я описал, происходит в программе на c ++, поэтому я протестировал cp и rsync, чтобы понять, была ли это моя ошибка или что-то, что зависит от ОС. Таким образом, я изменил первоначальную формулировку вопроса, чтобы попытаться получить больше ответов lorenzo.marcon 11 лет назад 0
если все еще рассматривается как не по теме, проблем нет, его можно перенести в другие разделы stackexchange. (хотя здесь есть много подобных вопросов, не связанных с программированием, даже в соответствующем столбце в правой части этой страницы) lorenzo.marcon 11 лет назад 0

0 ответов на вопрос