Почему скорость моего флэш-накопителя замедляется при копировании?

после нескольких минут копирования, он становится все медленнее и медленнее. Почему?

например, он начинается с 20 Мбайт / с, и когда он заканчивается с ним, это @10 Мбайт / с.

различные архивы, Большой, Малый, etc.

обновление:
вопрос касается различных операционных систем, так что это"общий вопрос"

2
задан Der Hochstapler
03.05.2023 14:14 Количество просмотров материала 2967
Распечатать страницу

3 ответа

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

20 Мб / с, которые вы видите, это данные, записываемые в дисковый кэш (обычно быстрая, но небольшая память). После того, как этот кэш заполнен, он должен быть сброшен на диск - и теперь вы в настоящее время узким местом на медленном диске.

Пример 1: эффект действительно выражен при у вас есть контроллер с большим кэшем (например, хороший RAID5 контроллер), где ~500 МБ данных могут быть кэшированы быстро, прежде чем он должен быть сброшен на диск.

Пример 2: Вы можете увидеть кэш в игре, если вы вытащите флэш-накопитель в то же время копия файла "готово". На данный момент ваш файл разделен между диском и кэшем - таким образом, копия "закончена", насколько это касается операционной системы, но контроллер диска все еще должен записать то, что осталось в кэше на диск. Если вы поместите флэш-накопитель обратно и проверить файл, вы увидите, что это не все там.

отказ от ответственности: эти примеры не будут работать, если не включено кэширование записи в вашей операционной системы на диск.

дальше, если не кэширование диска на работе, то вполне вероятно, что то, что вы видите, это эффект фрагментации. Как диск становится полнее и полнее, менее непрерывного свободного пространства и файловой системы работать труднее найдите места для размещения файлов.

22
отвечен ta.speot.is 2023-05-04 22:02

хотя кэширование и вызывает некоторые из них, это не единственный фактор. Если бы кэширование было единственным фактором, то мы ожидали бы, что скорость записи быстро упадет с нескольких сотен МБ / с до фактической скорости записи диска очень быстро и останется там до конца записи. Однако это не то, что я наблюдал при выполнении больших передач на диск и с диска (например, запись загрузочных образов). Вместо этого я наблюдаю, что скорость постепенно уменьшается в течение всего операция.

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

внутри внезапного обломока, блок данных которые можно написать к. Когда пишешь, есть только две вещи компьютер может сделать: он может стереть весь блок, или изменить некоторые (или все) из битов в блоке от 0 до 1.

однако, некоторые из этих блоков лучше, чем другие, особенно в низкокачественных флэш-накопителях, и в результате при записи в них новых данных некоторые биты могут иногда сами переключаться на 0 сразу после записи и не изменяться. Таким образом, при записи в блок, ОС должна убедиться, что все данные были записаны правильно, и если это не так, она должна повторить блок, записывая те же данные в тот же блок два или три раза, пока данные не прилипнут.

Итак, когда ваш компьютер пишет кучу данные на флешку, вот такое (не совсем точное, но достаточно хорошее) объяснение как это делается:

  1. Возьмите первый набор блоков для записи, и написать их все.
  2. прочитайте все блоки, которые мы только что написали, и составьте список тех, которые не совпадают
  3. написать следующий набор блоков, наряду с теми, которые не были написаны правильно в прошлый раз.
  4. повторить 2-3, пока все блоки были написаны правильно.

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

1
отвечен AJMansfield 2023-05-05 00:19

когда файл записывается на диск, будь то флэш-накопитель USB или жесткий диск, данные не читаются/никогда не читаются, чтобы увидеть, соответствует ли он. Это займет целую вечность. проверка записи выполняется аппаратным обеспечением (циклическая проверка избыточности), и если возникает ошибка, она отправляется обратно в приложение с обнаруженной аппаратной ошибки. Задержка, которая происходит и замедляется (даже до паузы), вызвана тем, что процессор пишет быстрее, чем устройство может справиться с этим. Вы не найдете это происходит внутренний жесткий диск. Вы никогда не увидите, что на самом деле происходит на ОС Windows, но на Linux вы можете увидеть, что процессор приостанавливается, пока оборудование USB не говорит ОК, чтобы продолжить

0
отвечен stevedonato 2023-05-05 02:36

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх