Задержка FIO против латентности Btt

В случае результатов btt, я наиболее знаком с

  • Задержка Q2D - время от отправки запроса на устройство
  • D2C latency - задержка устройства для обработки запроса
  • Задержка Q2C - общая задержка, Q2D + D2C = Q2C

Мне нужна помощь в сравнении задержек, о которых сообщает FIO, с помощью инструмента Btt. в ФИО результаты есть

  • Задержка представления или предкрылок
  • Задержка завершения или Clat
  • общая латентность или лат

Я прочитал несколько статей о результатах FIO, но мне до сих пор не ясно, что означает slat, clat и lat?

Может ли результат FIO дать представление, если задержка диска выше или задержка очереди запросов выше?

"Планка", "Клаат" или "лат", представленные в FIO, прямо сопоставимы с Q2D, C2D или Q2C?

может быть, эти два инструмента не сопоставимы напрямую, в этом случае вы можете объяснить, почему?

Спасибо

1 ответ

Это в значительной степени зависит от используемого ioengine и от того, используете ли вы ввод-вывод, используя direct=1, Если предположить, --ioengine=libaio --direct=1:

  • планка примерно Q2D.
  • Clat примерно D2C.
  • лат примерно Q2C.

Вам нужен асинхронный ioengine, потому что синхронные ioengines блокируют от отправки до завершения ввода-вывода (см. Раздел " http://fio.readthedocs.io/en/latest/fio_doc.html), тогда как асинхронный ioengines могут отправлять отдельно от получения уведомления о завершении ввода-вывода. Вам нужно direct=1 потому что без него ваш ввод / вывод просто войдет в кеш страниц Linux и может даже не быть асинхронным (даже если ioengine является асинхронным!) - см. раздел libaio http://fio.readthedocs.io/en/latest/fio_doc.html для подробностей.

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

Числа fio, вероятно, будут больше, чем числа btt, потому что fio работает на более высоком уровне (пользовательское пространство), поэтому данные должны перемещаться дальше.

Другие вопросы по тегам