fio измерить скорость ввода-вывода RAID0 виртуальный диск сбивает с толку результат - PullRequest
0 голосов
/ 24 октября 2019

я использую fio для проверки скорости ввода-вывода виртуального диска RAID0, состоящего из 16 жестких дисков, но результат скорости ввода-вывода сбивает с толку


Это centOS7.5, используйте RAID-контроллер DELL POWEREDGE RAID CONTROLLERH840, я создаю виртуальный диск "sdc", используя RAID0 с 16 жесткими дисками. Я пытался увеличить numjobs, iodepth, но не сработало. Скорость чтения sdc'max составляет около 400 МБ / с, а скорость чтения с одного диска - около 130 МБ / с.


fio --filename = / dev / sdc --iodepth = 64 --ioengine= libaio --direct = 1 --rw = чтение --bs = 4k - time_based --runtime = 20 --numjobs = 16 --group_reporting --name = фаза тестирования


Ожидаетсярезультат: скорость ввода-вывода диска RAID0 примерно в 16 раз больше, чем на одном обычном диске.


Фактический результат:

Запуск группы состояния 0 (все задания): READ: bw = 397MiB /с (416 МБ / с), 397 МБ / с-397 МБ / с (416 МБ / с-416 МБ / с), io = 7940 МБ (8326 МБ), пробег = 20001-20001 мсек

Статистика диска (чтение / запись):sdc: ios = 2018212/0, слияние = 0/0, тики = 624355/0, in_queue = 631222, util = 100.00%

и диск RAID0 с 3 жесткими дисками. Максимальная скорость чтения составляет около 400 МБ / с. тоже.

1 Ответ

0 голосов
/ 12 ноября 2019

(Хм, этот вопрос может быть не по теме для переполнения стека)

Ваши 16 заданий (numjobs=16) будут считываться из тех же областей /dev/sdc, что и другие. Может случиться так, что задание 1 отправляет чтение, данные для него извлекаются в кэш RAID-контроллера, ввод-вывод возвращается в Linux, затем задание 2 отправляет чтение для той же области вниз, но теперь запрашиваемые данныевыполняется очень быстро из кеша RAID-контроллера и т. д.

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

...