Как узнать MAX IO, который может поддерживать физический диск

Как узнать MAX IO, который может поддерживать физический диск

Как узнать максимальный объем ввода-вывода, поддерживаемый физическим диском?

Мое приложение выполняет ввод-вывод, и я могу найтидействительныйпропускная способность (Blk_wrtn/s) с помощью команд linux. Но как мне узнать, какой максимальный предел я могу достичь? Я хочу знать, можно ли его дополнительно загрузить.

решение1

Очевидно, что использование инструментов Unix — самый простой способ сделать это. Вы можете измерить максимальную операцию, создав тестовый случай и используя соответствующие инструменты для измерения его производительности. Хороший ресурс можно найти здесь:LINUX - Тест скорости ЧТЕНИЯ и ЗАПИСИ хранилища

sudo hdparm -tT /dev/sdX

например, как тест на чтение.

А для измерения напишите:

dd if=/dev/random of=<some file on the hd> bs=8k count=10000; sync;

# Hit CONTROL-C after 5 seconds to get results
# 65994752 bytes (66 MB) copied, 21.8919 s, 3.0 MB/s


flag

Примечание Как указано в комментариях, ddкоманда также измеряет производительность файловой системы и даже /dev/random. Она измеряет производительность записи среды, которая, однако, сильно зависит от производительности жестких дисков.

решение2

Blk_wrtn/s действительно зависит от типа рабочей нагрузки. Линейная запись намного быстрее, случайная запись может быть очень медленной. Поэтому вы не сможете сказать одно число, но есть много инструментов для моделирования и бенчмаркинга различных рабочих нагрузок, например iozone, dbench.

Теперь для мониторинга текущей нагрузки я обычно использую iostat. Например:

iostat -x 10

Последний столбец — %util, если он ниже 100, вы все равно можете поместить туда некоторую нагрузку ввода-вывода. Конечно, вы всегда хотите иметь некоторый резерв, поэтому 60-90% — это реалистичная цель, основанная на стабильности рабочей нагрузки и требуемой отзывчивости.

решение3

Вы можете использовать такой инструмент для сравнительного анализа, какБонни++

Из страницы руководства

Bonnie++ — это программа для тестирования жестких дисков и файловых систем на производительность или ее отсутствие. Существует множество различных типов операций с файловой системой, которые разные приложения используют в разной степени. Bonnie++ тестирует некоторые из них и для каждого теста выдает результат объема работы, выполненной в секунду, и процент времени ЦП, затраченного на это. Для результатов производительности лучше более высокие числа, для использования ЦП — более низкие (Примечание: конфигурация, дающая результат производительности 2000 и результат ЦП 90%, лучше с точки зрения использования ЦП, чем конфигурация, дающая производительность 1000 и использование ЦП 60%).

Связанный контент