Проверка скорости диска Linux

Обновлено: 04.07.2024

Знаете ли вы, как проверить производительность жесткого диска, например, проверить скорость чтения и записи в операционных системах Linux? тогда эта статья для вас!! который в основном создан, чтобы предоставить вам обзор команды DD, которая предназначена для лучшего руководства для новых пользователей и в качестве ознакомительного тура для начала работы в мире Linux.

Что такое команда DD?

DD — это утилита командной строки для Unix и Unix-подобных операционных систем, основной целью которой является копирование файла и преобразование формата данных во время процесса.

Как протестировать жесткий диск с помощью команды DD?

Откройте корневой терминал Linux и добавьте следующую команду:

Вывод должен быть таким-

Обратите внимание, что во время теста копируется 1 ГБ и обслуживается 89,8 МБ/с.

Понимание команды DD

Фрагменты команды DD должны быть такими –

Используйте команду DD в Linux для проверки скорости чтения

Перед проверкой данных кэша первой очистки используйте следующую команду:

Выполните следующую команду, чтобы проверить данные с помощью кеша-

Приведенная выше команда копирует 1,1 ГБ данных, и для теста используется скорость 94,0 МБ/с.

Чтобы деактивировать кеш, используйте следующую команду –

Вывод должен быть таким –

Выполните следующую команду, чтобы проверить данные без кеша —

Вывод должен быть таким –

Приведенная выше команда копирует 1,1 ГБ данных, и для теста используется скорость 93,3 МБ/с.

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

Как проверить производительность жесткого диска (через терминал или графический интерфейс). Скорость записи. Скорость чтения. Размер кэша и скорость. Случайная скорость.


8 ответов 8

Терминальный метод

hdparm — хорошее место для начала.

sudo hdparm -v /dev/sda также предоставит информацию.

dd предоставит вам информацию о скорости записи.

Если на диске нет файловой системы (и только в этом случае), используйте of=/dev/sda .

В противном случае смонтируйте его в /tmp и запишите, а затем удалите тестовый выходной файл.

Графический метод

  1. Выберите Система -> Администрирование -> Дисковая утилита.
    • Можно также запустить дисковую утилиту Gnome из командной строки, запустив gnome-disks
  2. Выберите жесткий диск на левой панели.
  3. Теперь нажмите кнопку "Тестирование – измерение производительности диска" на правой панели.
  4. Откроется новое окно с диаграммами. Вы найдете две кнопки и . Один для «Начать тест только для чтения», а другой — «Начать тест для чтения/записи». Когда вы нажимаете любую кнопку, начинается тестирование жесткого диска.

test

Как оценить дисковый ввод-вывод

Есть ли что-то еще, что вы хотите?


Я бы рекомендовал тестировать /dev/urandom, а также /dev/zero в качестве входных данных для dd при тестировании SSD, поскольку сжимаемость данных может сильно повлиять на скорость записи.

В моем Ubuntu 12.04 Unity такой «Системы ->» нет. Или, по крайней мере, я не нашел. И я не вижу этого дискового инструмента ни в настройках системы. О_о Но мне наконец-то удалось его запустить: /usr/bin/palimpsest

В Gnome это переместилось в Приложения --> Системные инструменты --> Настройки --> Дисковая утилита. Для тех, кто ненавидит Unity.

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

Суоминен прав, мы должны использовать какую-то синхронизацию; но есть более простой способ, conv=fdatasync сделает эту работу:


Это ответ с использованием команды/параметра, отличной от остальных. Я вижу, что это ответ, достойный отдельного поста.

@Diego Нет причин. Это был просто пример.Вы можете использовать что-нибудь еще. (от 4k до 1M) Конечно, больший размер блока даст лучшую производительность. И, конечно же, уменьшите количество счетчиков, когда вы используете большие bs, иначе на это уйдет год.

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

Да, это правда, анон. Но если вы используете генератор rnd, вы будете измерять именно его, а не диск. Если вы создадите случайный файл, вы будете измерять чтение файла, а не только запись. Возможно, вам следует создать большой блок памяти, заполненный случайными байтами.

Если вам нужна точность, используйте fio . Это требует прочтения руководства ( man fio ), но оно даст вам точные результаты. Обратите внимание, что для любой точности вам необходимо точно указать, что вы хотите измерить. Некоторые примеры:

Скорость последовательного чтения с большими блоками (она должна быть близка к числу, указанному в спецификациях вашего накопителя):

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

Случайное чтение 4K QD1 (это число, которое действительно имеет значение для реальной производительности, если вы точно не знаете наверняка):

Смешанное случайное чтение и запись 4K QD1 с синхронизацией (это наихудший показатель, который вы когда-либо могли ожидать от своего накопителя, обычно менее 1% от числа, указанного в спецификации):

Увеличьте аргумент --size, чтобы увеличить размер файла. Использование файлов большего размера может уменьшить получаемые числа в зависимости от технологии привода и микропрограммы. Маленькие файлы дадут «слишком хорошие» результаты для вращающихся носителей, потому что считывающей головке не нужно так сильно перемещаться. Если ваше устройство почти пусто, использование файла, достаточно большого, чтобы почти заполнить диск, приведет к наихудшему поведению для каждого теста. В случае SSD размер файла не имеет большого значения.

Однако обратите внимание, что для некоторых носителей размер файла не так важен, как общее количество байтов, записанных за короткий промежуток времени. Например, некоторые твердотельные накопители имеют значительно более высокую производительность с предварительно стертыми блоками или могут иметь небольшую область флэш-памяти SLC, которая используется в качестве кеша записи, и производительность изменяется после заполнения кеша SLC (например, серия Samsung EVO с кешем SLC 20-50 ГБ). . В качестве другого примера, жесткие диски Seagate SMR имеют около 20 ГБ кэш-памяти PMR, которая имеет довольно высокую производительность, но как только она заполняется, запись непосредственно в область SMR может снизить производительность до 10% от исходной. И единственный способ увидеть эту деградацию производительности — сначала записать 20+ ГБ как можно быстрее, а затем сразу же приступить к реальному тесту. Конечно, все это зависит от вашей рабочей нагрузки: если ваш доступ на запись носит импульсный характер с длительными задержками, которые позволяют устройству очищать внутренний кеш, более короткие тестовые последовательности будут лучше отражать вашу реальную производительность. Если вам нужно выполнять много операций ввода-вывода, вам нужно увеличить параметры --io_size и --runtime. Обратите внимание, что некоторые носители (например, большинство дешевых флэш-устройств) пострадают от такого тестирования, поскольку микросхемы флэш-памяти достаточно плохие, чтобы очень быстро изнашиваться. На мой взгляд, если какое-либо устройство достаточно слабое, чтобы не выдержать такого рода тестирование, его ни в коем случае нельзя использовать для хранения каких-либо ценных данных. Тем не менее, не повторяйте большие тесты записи в течение 1000 раз, потому что все ячейки флэш-памяти будут иметь определенный уровень износа при записи.

Кроме того, некоторые высококачественные SSD-устройства могут иметь еще более интеллектуальные алгоритмы выравнивания износа, когда внутренний кэш SLC обладает достаточным интеллектом для замены данных на месте, если они перезаписываются, пока данные все еще находятся в кэше SLC. Для таких устройств, если тестовый файл меньше, чем общий кэш SLC устройства, полный тест всегда записывает только в кэш SLC, и вы получаете более высокие показатели производительности, чем устройство может поддерживать для больших операций записи. Так что для таких устройств размер файла снова начинает иметь значение. Если вы знаете свою фактическую рабочую нагрузку, лучше всего протестировать размеры файлов, которые вы действительно увидите в реальной жизни. Если вы не знаете ожидаемую рабочую нагрузку, использование размера тестового файла, который заполняет около 50 % устройства хранения, должно привести к хорошему среднему результату для всех реализаций хранилища. Конечно, для конфигурации RAID на 50 ТБ выполнение теста записи с тестовым файлом на 25 ТБ займет довольно много времени!

Вот несколько методов тестирования производительности ввода-вывода в GNU/Linux, начиная от нерелевантных инструментов, таких как dd, которые совершенно бесполезны для этой цели, и заканчивая действительно полезными способами определения реальной производительности дисков.

Содержание

Почти бесполезные методы [ редактировать ]

Эти методы настоятельно рекомендуются на многих страницах в Интернете, даже если они практически бесполезны. Тем не менее, они предоставят вам некоторые базовые данные, которые могут помочь в устранении неполадок, если диск подключен к более ранней версии SATA, чем ожидалось (вы должны проверить это с помощью smartctl --all /dev/sda, но ..), и вы можете получить очень приблизительное представление о том, как работает диск.

hdparm [ изменить ]

hdparm может указывать на последовательное чтение дисков и чтение с дисков и их кэша. Типичный способ его использования: hdparm --direct -t -T /dev/sdX где

  • --direct означает, что мы обходим кеш ядра и используем O_DIRECT к кешу дисков [1]
  • -T проверяет скорость чтения из кеша (ядра или дисков, если используется --direct) [1]
  • -t указывает скорость чтения дисков. [1]
  • /dev/sdX будет вашим SSD или HDD.

Вывод будет выглядеть так:

Вы можете заметить, что между тремя приведенными выше выходными данными есть существенная разница. hdparm может дать вам общее представление о том, как работает диск. Но это все, что вы получаете. Два диска с одинаковыми номерами могут работать по-разному в ситуациях, когда происходит много случайных операций чтения и записи; большие последовательные чтения с диска не очень типичная нагрузка. Опять же, если числа сильно различаются, как приведенные выше числа, и у вас есть один диск с диском O_DIRECT, который читает со скоростью 60 МБ/с, а другой со скоростью 490 МБ/с, весьма вероятно, что тот, который способен выполнять чтение со скоростью 490 МБ/с, sec быстрее почти для каждой рабочей нагрузки.

дд [ изменить ]

На многих страницах рекомендуется использовать dd для проверки производительности диска. На его справочной странице четко указано, что его целью является «преобразование и копирование файла» [2]. dd выведет, сколько времени требуется для завершения операции, что дает общее представление о том, как работает диск. Но это все, что вы получаете.

Вы можете поиграть с шестью параметрами dd, два из которых нужно изменить, чтобы получить различные оценки производительности: [2]

  • if= устройство ввода, такое как /dev/zero или /dev/random
  • of= файл для записи, например test.file
  • bs= важен для сравнительного анализа. Он указывает, сколько байтов записывается за операцию. Его можно указать с помощью k, M, G и т. д.
  • count= указывает, сколько операций необходимо выполнить. bs=2M count=10 записывает 1*10 МБ = 20 МБ данных.
  • oflag=dsync – это то, что вы всегда должны включать при выполнении "эталонных тестов" с помощью dd . oflag= указывает флаги параметров, и вы хотите использовать dsync (использовать синхронизированный ввод-вывод для данных). Вам не нужен неблокирующий, который указывает использовать неблокирующий ввод-вывод или другие флаги.

dd if=/dev/zero of=test.file bs=64M count=1 oflag=dsync

выведет что-то вроде

при увеличении числа до 16 изменяет указанную выше команду так, что она записывает 64 МБ 16 раз = 1 ГБ:

Результаты этого теста на "Seagate Momentus 5400.6" (ST9160301AS) из приведенного выше примера hdparm показывают, что dd может быть полезен для получения представления о том, как работает диск:

Имейте в виду, что использование высокого значения bs= приведет к очень большому увеличению объема записываемых данных, если используется count=, bs=1G count=64 приведет к записи 64 ГБ данных.

Малое число bs= число, как в bs=512 count=1000, будет записывать 512 байт 1000 раз, что составляет всего 512 КБ. Однако пропускная способность будет намного ниже, поскольку синхронизация диска выполняется каждый раз, когда записывается 512 байт. И будет разница между новыми и старыми машинами.

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

Методы тестирования производительности ввода-вывода, которые дают полезную информацию, отражающую реальное использование [ редактировать ]

Две небольшие программы для тестирования дискового ввода-вывода выделяются как более полезные, чем большинство других методов: fio и bonnie++ .

fio — «гибкий тестер ввода-вывода» [ править ]

fio доступен в большинстве дистрибутивов в виде пакета с таким же именем. Он не будет установлен по умолчанию, вам нужно будет его получить. Вы можете нажать apt://fio (Ubuntu) или appstream://fio (Plasma Discover), чтобы установить его (по крайней мере, в некоторых дистрибутивах).

  • --name, чтобы назвать "задание" для тестовых прогонов. Это необходимо.
  • --eta-newline= устанавливает новую строку для каждого периода 't'. Вам может понадобиться --eta-newline=5s
  • --filename=, чтобы указать имя файла для записи.
  • --rw= указывает, хотите ли вы выполнить тест чтение ( --rw=read ) или запись ( --rw=write )
  • --size= определяет размер тестового файла. --size=2g может быть хорошим выбором. Будет создан файл (указанный параметром --filename= ) такого размера, поэтому для него потребуется свободное место. Увеличение до --size=20g или более может дать лучший реальный результат для больших жестких дисков.
    • Небольшой файл размером 200 МБ на современном жестком диске не заставит головки чтения/записи двигаться слишком далеко. Будет очень большой файл.
    • --fsync=1 полезен для тестирования случайных операций чтения и записи.
    • --fsync=10000 можно использовать для проверки последовательного чтения и записи.

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

    Тестирование скорости последовательного чтения с очень большими блоками [ править ]

    fio --name TEST --eta-newline=5s --filename=temp.файл --rw=read --size=2g --io_size=10g --blocksize=1024k --ioengine=libaio --fsync=10000 --iodepth=32 --direct=1 --numjobs=1 --runtime= 60 --group_reporting

    В результирующем выводе будет строка под статусом выполнения группы 0 (все задания): что выглядит так:

    Результат должен быть близок к заявленному производителем жесткого диска, и он не будет так уж далек от предположений, которые hdparm предоставляет с параметром -t. Тестирование этого на массиве RAID1 с двумя дисками приведет к тому, что будут использоваться оба диска:

    Тестирование скорости последовательной записи с очень большими блоками [ править ]

    fio --name TEST --eta-newline=5s --filename=temp.file --rw=write --size=2g --io_size=10g --blocksize=1024k --ioengine=libaio --fsync =10000 --iodepth=32 --direct=1 --numjobs=1 --runtime=60 --group_reporting

    Это будет строка под строкой "Выполнить группу состояния 0 (все задания):", например

    Вероятно, вы не будете регулярно копировать 100 ГБ на твердотельный накопитель емкостью 240 ГБ, поэтому практического значения это может не иметь. Однако знайте, что если вы проведете тест (при условии, что у вас есть 80 ГБ свободного места) с WD Green SSD со 100 ГБ операций ввода-вывода и файлом размером 80 ГБ с 5-минутным (60*5=300) ограничением, вы получите намного более низкие результаты, чем если бы вы записали 10 ГБ в файл размером 2 ГБ. Чтобы проверить себя, попробуйте

    fio --name TEST --eta-newline=5s --filename=temp.file --rw=write --size=60g --io_size=100g --blocksize=1024k --ioengine=libaio --fsync =10000 --iodepth=32 --direct=1 --numjobs=1 --runtime=300 --group_reporting

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

    Тестирование случайного чтения 4K [ изменить ]

    Тестирование случайного чтения лучше всего проводить с глубиной очереди, равной всего одному ( --iodepth=1 ) и 32 одновременным заданиям ( --numjobs=32 ).

    Это будет отражать реальную производительность чтения.

    fio --name TEST --eta-newline=5s --filename=temp.file --rw=randread --size=2g --io_size=10g --blocksize=4k --ioengine=libaio --fsync =1 --iodepth=1 --direct=1 --numjobs=32 --runtime=60 --group_reporting

    Некоторые примеры результатов:

    • Seagate Momentus 5400.6: ЧТЕНИЕ: bw=473 КБ/с (484 КБ/с), 473 КБ/с-473 КБ/с (484 КБ/с-484 КБ/с), io=27,9 МБ ( 29,2 МБ), run=60334-60334 мс
    • Твердотельный накопитель WD Blue 500 ГБ (WDC WDS500G2B0A-00SM50): ЧТЕНИЕ: bw=284МБ/с (297МБ/с), 284МБ/с-284МБ/с (297МБ/с-297МБ/с ), io=16,6 ГиБ (17,8 ГБ), run=60001–60001 мс

    Как показывают эти примеры результатов: разница между старым жестким диском на 5400 об/мин и средним младшим твердотельным накопителем ошеломляет, когда дело доходит до случайного ввод/вывод. Между половиной мегабайта и 284 мегабайтами в секунду огромная разница.

    Смешанное случайное чтение и запись 4K [ редактировать ]

    Опция --rw randrw указывает fio выполнять операции чтения и записи. И опять же, глубина очереди всего одна ( --iodepth=1 ) и 32 одновременных задания ( --numjobs=32 ) будут отражать высокую реальную нагрузку. Этот тест покажет самую худшую производительность ввода-вывода, которую вы можете ожидать. Не удивляйтесь, если показатели производительности жесткого диска составляют низкий процент от заявленных характеристик.

    fio --name TEST --eta-newline=5s --filename=temp.file --rw=randrw --size=2g --io_size=10g --blocksize=4k --ioengine=libaio --fsync =1 --iodepth=1 --direct=1 --numjobs=1 --runtime=60 --group_reporting

    Бонни++ [ изменить ]

    bonnie++ — это набор тестов дисков и файловой системы. Его установка (пакет обычно называется bonnie++ ) и запуск без параметров запустит тест диска и файловой системы в текущем рабочем каталоге.

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

    Провайдеры bonnie++ больше похожи на тестирование, чем hdparm и dd. Однако у него есть некоторые недостатки: он однопоточный, что означает, что некоторые операции будут выполняться медленнее, чем на самом деле на любой многоядерной машине.

    bonnie++ — хороший инструмент, если вы просто хотите что-то установить и запустить, не думая о добавлении параметров, ожидая и получая полезные результаты.

    Диски с особыми характеристиками [ изменить ]

    Некоторые жесткие диски и решения для хранения данных имеют особые свойства, которые следует учитывать.

    «Полосная магнитная запись» (SMR) управляет [ редактировать ]

    Компания Seagate использует технологию под названием "Shingled Magnetic Recording" (SMR), которая позволяет размещать дорожки ближе друг к другу, чем следовало бы. Запись на дорожку на SMR-диске приводит к тому, что накопитель также перезаписывает ближайшие дорожки. Эти диски будут иметь большой встроенный буфер памяти и «нормальную» область на пластинах для кэширования записей, которые позже необходимо будет выполнить «способом SMR». Эта область обычно составляет 20-40 ГБ в зависимости от размера дисков.В результате диски SMR ведут себя не так, как обычные диски: первые 20 ГБ, записанные на диск SMR, будут записаны с ожидаемой скоростью, которая является вполне нормальной для современного жесткого диска. Дополнительные данные, записанные после этого, приведут к полной остановке скорости записи, как в случае почти нуля, в то время как накопитель записывает данные в свою «запись- буфер" и перезаписывает дорожки рядом с теми, где были размещены новые данные.

    Диски SMR можно точно протестировать, записав на них действительно большой объем данных (60 ГБ или около того). Что вы обнаружите, так это то, что скорость чтения и записи становится абсолютно удручающей, когда буфер заполнен. Вот почему лучше просто избегать магнитных записывающих дисков Shingled.

    Твердотельные накопители Multi-nand [ изменить ]

    Большинство современных бытовых твердотельных накопителей имеют более медленную TLC (трехслойную ячейку) nand и небольшую область SLC (однослойная ячейка), которая используется для немедленного кэширования. пишет. Микропрограмма накопителя будет перемещать данные из области SLC в область TLC, когда накопитель в основном простаивает. На практике это означает, что тест записи объемом 1 ГБ, будь то последовательная или случайная запись, покажет уровень производительности, который гораздо выше, чем тот, который вы получите, если вы превышать область SLC. Если область SLC составляет 20 ГБ, а вы копируете 40 ГБ, вы обнаружите, что производительность записи заметно снижается. Учтите это, если вы будете использовать SSD для регулярного копирования большого количества очень больших файлов.

    Твердотельные накопители корпоративного класса в основном не будут иметь этой проблемы, что будет отражаться на их цене. Вы можете быть уверены, что все более дешевые твердотельные накопители потребительского уровня, такие как Kingson серии A400 и A1000, WD Green и WD Blue, а также накопители аналогичной стоимости имеют такое поведение.

    Сравнение облачных/VPS-хранилищ [ изменить ]

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

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

    Диски GNOME

    GNOME Disks — это внутренний и внешний инструмент управления дисками для Linux. На основе udisks его можно использовать для изменения, форматирования и разбивки дисков, а также для выполнения тестов на любых носителях, подключенных к системе.

    Диски GNOME предустановлены в большинстве дистрибутивов с окружением рабочего стола на основе GNOME. В случае, если он отсутствует в вашей системе Ubuntu, вы можете установить его, выполнив следующую команду:

    Чтобы выполнить тест жесткого диска с помощью GNOME Disks, запустите приложение «Диски» из панели запуска приложений.


    Нажмите на меню с тремя точками, а затем нажмите на опцию «Проверка диска…».


    Нажмите кнопку "Начать тестирование..." в следующем окне.


    Измените параметры по мере необходимости. Обратите внимание, что эта утилита не позволяет вам выполнять тесты записи на смонтированных дисках. Таким образом, чтобы выполнить полный тест чтения-записи на встроенном диске, вам необходимо запустить GNOME Disks в режиме live USB и отключить встроенный накопитель. Нажмите кнопку «Начать сравнение…», чтобы начать процесс сравнения.


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


    Вам необходимо сравнить эти результаты со значениями чтения/записи, заявленными поставщиком, чтобы оценить эффективность.

    HDparm

    Hdparm – это простое приложение командной строки для Linux, которое позволяет управлять устройствами хранения, устанавливая и удаляя параметры. Он также включает возможность проверки скорости чтения с устройств хранения.

    Чтобы установить hdparm в Ubuntu, выполните следующую команду:

    Чтобы запустить тест жесткого диска с помощью Hdparm, используйте следующую команду:

    Замените часть «/dev/sda» адресом вашего жесткого диска. Вы можете проверить путь с помощью упомянутого выше приложения GNOME Disks или выполнив следующую команду:

    После завершения теста вы увидите результаты теста в виде выходных данных терминала.


    Data Duplicator или просто «dd» — это утилита командной строки для Linux, позволяющая копировать и преобразовывать файлы и данные. Он способен копировать большие фрагменты данных, клонировать целые жесткие диски, создавать загрузочные USB-накопители и т. д.

    Скорость записи на жесткий диск можно проверить с помощью dd. Запустите приведенные ниже команды, чтобы выполнить тест скорости записи.

    $ mkdir эталонный тест
    $ cd эталонный тест
    $ dd if = /dev/zero of =benchfile bs =4k count = 200000 && sync ; rm бенчфайл

    Дождитесь завершения теста, результаты будут показаны в терминале после завершения.

    Чтобы выполнить проверку чтения с помощью dd, выполните следующую команду:

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


    Системный тест

    Sysbench – это многоцелевая утилита для тестирования производительности Linux. Некоторые из тестов, предоставляемых Sysbench, включают стресс-тест ЦП, тест скорости доступа к памяти и тест производительности ввода-вывода файловой системы.

    Чтобы установить sysbench в Ubuntu, выполните следующую команду:

    Чтобы выполнить тест жесткого диска с помощью sysbench, выполните приведенные ниже команды одну за другой:

    $ mkdir тест
    $ cd тест
    $ sysbench fileio prepare
    $ sysbench fileio --file-test-mode =rndrw run

    Дождитесь завершения теста. После этого вы увидите результаты в виде вывода терминала.


    Чтобы удалить тестовые файлы из каталога тестов, выполните следующую команду:

    Вы можете использовать статистику "Пропускная способность" в качестве индикатора эффективности.

    Системная статистика

    Sysstat – это приложение для мониторинга производительности с командной строкой для Linux. Он может отслеживать операции ввода-вывода, потребление памяти, использование ресурсов запущенными системными процессами, сетевую активность и т. д., а также отображать статистику о них в режиме реального времени.

    Чтобы установить Sysstat в Ubuntu, выполните следующую команду:

    Для мониторинга производительности жесткого диска вы можете использовать команду «iostat», включенную в Sysstat. Хотя он не включает возможность выполнения тестов, он может отображать данные о чтении и записи на диск в режиме реального времени.

    Чтобы увидеть скорость чтения и записи диска каждую секунду, выполните следующую команду:


    Иотоп

    Iotop — лучший инструмент для мониторинга операций чтения и записи на диск. Он показывает данные в табличной форме, подобно тому, как это делает top или htop для отображения потребления ресурсов. Он работает аналогично утилите iostat, упомянутой выше, и это не совсем инструмент для тестирования. Однако он может отображать статистику активности диска в режиме реального времени, что делает его подходящим для мониторинга операций с большими данными.

    Чтобы установить Iotop в Ubuntu, выполните следующую команду:

    Выполните приведенную ниже команду, чтобы запустить iotop:


    Заключение

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

    Об авторе

    Нитеш Кумар

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

    Читайте также:

if=/dev/zero (if=/dev/input.file)Указывает входной файл, который вы хотите прочитать с помощью команды DD.
of=/tmp/test1.img(of=/path/to/output.file) Указывает выходной файл, который вы хотите записать с помощью команды DD
bs=1G(bs=block-size)Указывает размер блока, который вы хотите, чтобы DD использовал (здесь я использовал 1 ГБ в качестве блока)
count=1 (count=number-of-blocks) Указывает количество блоков, которые вы хотите использовать в DD для чтения блока.
oflag=dsync (oflag=dsync)Указывает ввод-вывод синхронизации для данных.
conv=fdatasynЭта команда сообщает DD о необходимости синхронизации.