Скорость копирования файла с ПК на флэш-накопитель USB началась с 30 МБ / с и снизилась до 5,8 МБ / с. Почему?


5

Если я скопирую файл 8 ГБ с ПК на флэш-накопитель USB, скорость начнется примерно с 30 МБ / с ... может быть, 28 МБ / с, а затем постепенно, через минуту, она снизится до 15 МБ / с. и, наконец, установиться на 5,8 МБ / с.

Но я подумал, что если это жесткий диск, то, возможно, в нем есть кэш-память ОЗУ, а также кэш-память внутреннего жесткого диска, и сначала копирование файла с ПК на жесткий диск будет происходить быстро.

Но для USB-накопителя не должно быть внутреннего кеша для самого USB-накопителя. Есть ли кеш оперативной памяти, поэтому начальное копирование кажется таким быстрым?


В дополнение к двум имеющимся ответам, вы можете сравнить флэш-накопитель с чем-то вроде HD Tune и посмотреть, насколько быстро он работает. Если так, то это будет соответствовать двум приведенным выше объяснениям.
Натаниэль

Ответы:


7

Windows будет буферизовать запись как можно дольше, поэтому первый блок будет писать быстрее, чем остальные. На дисплее отображается общее среднее значение, поэтому оно изначально высокое и медленно падает к фактической скорости записи на флэш-накопителе, которая, предположительно, немного ниже 5,8 МБ / с.

Даже если Windows по умолчанию не хранит записи для USB-накопителей, таких как эта, в кэш-памяти в течение длительного времени (записанные данные сбрасываются на диск в течение небольшого промежутка времени или сразу после закрытия файла), она все равно будет немного буферизовать запись, пока идет активная запись. Все еще продолжается, и операция копирования также может иметь свой собственный буфер, поэтому он будет продолжать читать так быстро, как может, пока не заполнится, поэтому начальная скорость будет выглядеть быстрее, чем общая скорость. Это также объясняет, почему после длительной операции записи отображение хода выполнения копирования иногда будет равным 100% в течение секунды или двух - поскольку операция копирования закрывает файл, вызывается обращение к функциональным блокам «close» до тех пор, пока не будут получены последние несколько блоков данных. написано.

Можно сказать ОС, чтобы она выполняла совершенно небуферизованные операции записи, но очень мало кода делает это (Windows Explorer не делает), поскольку это мешает ряду потенциальных небольших оптимизаций (в ОС и контроллере накопителя), которые может ускорить операции записи.


2

Я думаю, что это просто плохо реализованный расчет времени. Первоначальная оценка учитывает в основном скорость чтения с жесткого диска; затем он корректируется с течением времени, когда появляется больше информации о времени.

У моего любимого файлового менеджера есть плагин копирования, который оценивает время только после того, как он что-то прочитал и записал, и намного более точен в подобных ситуациях (источник и место назначения имеют очень разные скорости).


superuser.com/questions/43562/… - подробнее об этом.
RomanSt
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.