Что не так с моей скоростью в 4К? Почему это так медленно? Или это должно быть так?
Заключается в том, что скорость в порядке? Почему у меня такая низкая скорость на 4К?
Определения # Есть, в целом, двумя разными способами вы можете получить доступ к файлу.
Последовательный доступ означает, что вы прочитать или записать файл более или менее один байт за другим. Например, если вы're смотреть видео, вы можете загрузить видео от начала до конца. Если вы'повторно загружать файл, он будет скачан и записан на диск от начала до конца. С диска'с точки зрения'ы видим такие команды, как "не читать блока № 1, блока #2, читать блока № 3, считывание байта блока № 4" и<суп>1</SUP-серфинг>.
Случайных доступ означает, там's нет очевидного шаблона для чтения или записи. Это не'Т означает истинно случайным; оно на самом деле означает "не последовательные и". Например, если вы'вновь начиная большим количеством программ одновременно они'll необходимо читать много файлов, разбросанных вокруг вашего диска. С диска'перспективы, это'ы видим такие команды, как "не читать блока № 56, читать блока № 5463, читать блока № 14, чтение блока № 5 и"
Представление #
Последовательный доступ-это, как правило, быстрее, чем произвольного доступа. Это потому, что последовательный доступ позволяет операционной системе и диск предсказать, что будет необходимо далее и загрузить большой кусок заранее. Если вы'вэ запрошенных блоков на "1, 2, 3, 4 и", ОС догадались, что вы'll не хочу "в 5, 6, 7, 8" Следующий, так он говорит, что привод для чтения и"1, 2, 3, 4, 5, 6, 7, 8" в один присест. Аналогичным образом, диск может считывать физическое хранилище на одном дыхании, а не на "стремятся 1, читать 1,2,3,4, стремиться к 5, читать 5,6,7,8 и". О, я упоминал, стремящихся к чему-то. Механические жесткие диски имеют очень медленно время поиска, потому что, как они'вновь физически выложил: они состоят из ряда тяжелых металлизированного дисков крутится вокруг, с физической руки движутся вперед и назад, чтобы прочесть диск. [Вот видео открытого жесткий диск, где можно увидеть вращающиеся диски и подвижные руки.](
<БР /><суп>изображения с http://www.realtechs.net/data%20recovery/process2.html</SUP и ГТ; Это означает, что в любой момент времени, только бит данных под головкой на конце рукоятки можно прочитать. Диск должен ждать две вещи: он должен ждать руку, чтобы переместить в правое кольцо (на"трек" в) диска, а также нужно ждать, когда диск крутиться так необходимые данные при чтении главы. Это называется ищу<суп>2</суп>. Обе вращающиеся и движущиеся руки брать физическое время двигаться, и они могут'т быть ускорено без риска повреждения. Обычно это занимает очень много времени, гораздо дольше, чем фактическое значение. Мы'вновь говорю >5мс чтобы добраться туда, где запрошенного байта жизни, в то время как фактическое значение байта в среднем составляет около 0.00000625 МС на последовательных байт (или 0.003125 МС на 512 блок Б).Произвольный доступ, с другой стороны, Дон'т иметь, что преимущество предсказуемости. Так что если вы хотите читать 8 случайных байтов, может быть, из блоков "и 8,34,76,996,112,644,888,341-то", диск должен уходить "искать в 8, 8 читать, искать to34, 34 читать, искать to76, читать 76, ...и". Обратите внимание, как он снова должен искать для каждого блока? Вместо средних 0.003125 МС на последовательном 512 блок Б, это's теперь в среднем (5мс искать + 0.003125 чтение мсек) = 5.003125 МС на блок. Что'ы много-много раз медленнее. Тысячи раз медленнее, на самом деле.
<суп>1</суп> более точно, с логической адресации блоков для дисков рассматриваются в блоках по 512 байт (512n/512и) или 4кб (4кн) по соображениям эффективности. Кроме того, в реальных программах почти никогда не нужен только один байт за раз. в <SUP-серфинг и GT;2</с SUP> По технически искать относится только к рычажка. В ожидании данных, которые вращаются под голову ожидания на вершине поиска. <суп>3</суп> технически, у них есть таблицы подстановки и преобразования по другим причинам, например, выравнивания износа, но это совершенно ничтожна по сравнению с жестким диском...
Как уже отмечали другие ответы на "4К" и почти наверняка относится к произвольным доступом блоками размером 4 Кб.
Каждый раз, когда жесткий диск (не SSD) и просят прочитать или записать данные, есть два существенных отсрочек:
Оба они имеют относительно постоянное количество времени для любого данного диска. Искать задержка функция, как быстрое движение головы и как далеко он должен быть перемещен, и ожидания зависит от того, насколько быстро блюдо крутится. Что's больше, они не'т изменилось за последние несколько десятилетий. Производители использовали среднее время поиска, например, в рекламе; они почти перестали это делать, когда было мало или никакого развития в этом районе. Ни один производитель, особенно в высоко-конкурентной среде, хочет, чтобы их продукты не лучше, чем у их конкурентов.
Обычного настольного жесткого диска вращается со скоростью 7200 оборотов в минуту, тогда как обычный диск ноутбука может вращаться около 5000 оборотов в минуту. Это означает, что каждую секунду он проходит в общей сложности 120 оборотов (диск) или около 83 революций (диск для ноутбука). С в среднем диск нужно вращать на пол-оборота до нужной сектор проходит под головкой, это означает, что мы можем ожидать, что диск должен быть в состоянии обслуживать примерно в два раза больше запросов ввода-вывода в секунду, при условии, что
Поэтому мы должны ожидать, чтобы иметь возможность выполнить на заказ 200 ввода-вывода в секунду, если данные его просят доступ (для чтения или записи) относительно физически локализован, в результате оптимизации не является ограничивающим фактором. В общем случае, мы ожидаем, что диск должен быть способен выполнять порядка 100 операций ввода/вывода в секунду, если данные разбросаны блюдо или блюда, требующие значительных ищу и заставляя стремиться задержки будет ограничивающим фактором. С точки зрения хранения, это в " производительностьИППО" из жесткого диска; в этом, не производительность последовательного ввода-вывода, обычно ограничивающим фактором в реальных системах хранения. (Это большая причина, почему твердотельные диски намного быстрее в использовании: они устраняют вращения задержка, и значительно уменьшить добиваться задержки, как физическое перемещение головок чтения/записи будет таблица подстановки в флэш-отображение слоя таблиц, которые хранятся в электронном виде.)
Пишет обычно медленнее, когда есть очистить кэш, участвующих. Как правило, операционные системы и жесткие диски пытаются упорядочить случайные записи, чтобы превратить случайных операций ввода-вывода в последовательного ввода-вывода, где это возможно, чтобы улучшить производительность. Если есть явная очистить кэш или впишите барьер, эта оптимизация исключены в целях обеспечения того, чтобы состояние данных в постоянное хранилище согласуется с тем, что программа ожидает. В принципе та же аргументация применима и во время чтения, когда там задействовано не дискового кэша, либо потому, что не существует (сегодня редкость на столе-тип системы) или потому, что программное обеспечение намеренно обходит его (что часто делается при измерении производительности ввода/вывода). Оба из тех, сократить максимальный потенциал производительности в IOPS, что более пессимистический, или 120 IOPS для 7200 об / мин езды.
Которые просто так случиться, чтобы соответствовать ваши цифры почти точно. Случайных операций ввода-вывода при малых размерах блока является абсолютным убийцей производительности для жестких дисков вращения,, который является также, почему это'с соответствующей метрикой.
Как для чисто последовательного ввода-вывода, пропускную способность в диапазоне от 150 МБ/с Это'т на все необоснованные для современных жестких дисков вращения. Но очень мало реальных ввода/вывода строго последовательно, поэтому в большинстве случаев, чисто производительность последовательного ввода-вывода становится более академическим упражнением, чем показатель реальной производительности.
4K означает случайного ввода-вывода. Это означает, что диск просят открыть небольшие блоки (4 КБ) в случайных точках в тестовый файл. Это является недостатком жестких дисков; возможность доступа к данным в различных регионах диска ограничивается скоростью, с которой диск вращается и, как быстро чтения-записи головки могут двигаться. Последовательного ввода-вывода, где подряд блокирует доступ, намного легче, потому что диск может просто чтение или запись блоков как диск крутится.
Твердотельный накопитель (SSD) нет такой проблемы с произвольных операций ввода/вывода, Как все он должен сделать, это посмотреть, где данные хранятся в основной памяти (обычно флэш-памяти NAND, может быть 3D "Икспоинт" или даже драм) и читать или писать данные в соответствующем месте. Твердотельные накопители полностью электронная и не надо ждать от вращающегося диска или движущейся головки чтения-записи для доступа к данным, что делает их гораздо быстрее, чем жесткие диски в этом отношении. Именно по этой причине, что переход на SSD значительно повышает производительность системы.
Примечание: производительность последовательного ввода-вывода на SSD намного выше, чем на жесткий диск, а также. Типичный твердотельный накопитель имеет несколько микросхем NAND подключена параллельно к контроллеру флэш-памяти, и может работать с ними одновременно. Распространяя данные на эти микросхемы, макет диска сродни массиве RAID 0 достигается, что значительно увеличивает производительность. (Заметим, что многие новые диски, особенно подешевле, используют тип памяти NAND называют ТСХ основе которых, как правило, будет медленным при записи данных. Диски с TLC NAND и часто использовать небольшой буфер быстрее флэш-памяти NAND, чтобы обеспечить более высокую производительность для небольших операций записи, но может резко затормозить один раз, что буфер полон.)