3

Я записываю файлы на диск USB 2.0 с RAM-диска, на котором есть случайно заполненный файл размером 256 МБ (созданный из /dev /urandom для предотвращения слишком сильного сжатия файла). Когда я смотрю на скорости записи в файл, которая выводится из dd , они в среднем составляют около 75 МБ / с. Это особенно интересно, поскольку теоретическая максимальная скорость USB 2.0 составляет 60 МБ / с.

Команда, которую я запускаю:

dd if=/var/mnt/temp_data/urandom of=/mnt/usb/$FILE_NAME bs=10M count=1 

Обратите внимание, что я запускаю это несколько раз и заполняю диск до 95%. Причина, по которой файлы размером 10 МБ, заключается в том, чтобы убедиться, что накопитель заполнен почти на 95%, и я не получу такого заполнения большими файлами, так как не знаю, какой размер карты памяти будет подключен, и наличие нескольких файлов является частью теста.

Если мотивы влияют на скорость записи, я проверяю скорость записи USB-портов в системе, чтобы определить, соответствуют ли они стандартам USB. Следовательно, это относительно печально, и заполнение из /dev /urandom (косвенно).

Так почему же это происходит и как мне это исправить? Я предполагаю, что измерения, которые dd , неточны, иначе я начну продавать свои драйверы USB-накопителей.

(Извиняюсь, если это должно быть на unix.se, я не был уверен)

1 ответ1

2

Итак, после всех комментариев и нашей длительной дискуссии в чате, вот ответ на вопрос:

При тестировании скорости записи в системе, будь то запись на USB или жесткий диск, запись в FilesSystem или напрямую на диск в режиме RAW, всегда проверяйте, достаточно ли данных для заполнения кэша. Если записано недостаточно данных, вы измеряете скорость записи в кеш (который находится в оперативной памяти)

OP попытался записать файлы размером 10 МБ в цикле, выполнив команду sync между сеансами записи.

Фактически произошло то, что команда dd которая выполняла запись, очень быстро записывала данные в кэш. Заявленная скорость была около 75 МБ / с. После выполнения этой команды sync потребуется несколько секунд, но OP не принял это во внимание.

После изменения теста на запись файлов большего размера выяснилось, что фактическая скорость записи составляет около 2,2 МБ / с, что соответствует стандартам USB 2.0.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .