<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://support.qbpro.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D1%83%D1%82%D0%B8%D0%BB%D0%B8%D1%82%D1%8B_fio_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_IOPS_%D0%B2_Linux</id>
	<title>Установка утилиты fio для тестирования IOPS в Linux - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://support.qbpro.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D1%83%D1%82%D0%B8%D0%BB%D0%B8%D1%82%D1%8B_fio_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_IOPS_%D0%B2_Linux"/>
	<link rel="alternate" type="text/html" href="https://support.qbpro.ru/index.php?title=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D1%83%D1%82%D0%B8%D0%BB%D0%B8%D1%82%D1%8B_fio_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_IOPS_%D0%B2_Linux&amp;action=history"/>
	<updated>2026-05-13T21:04:55Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.38.1</generator>
	<entry>
		<id>https://support.qbpro.ru/index.php?title=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D1%83%D1%82%D0%B8%D0%BB%D0%B8%D1%82%D1%8B_fio_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_IOPS_%D0%B2_Linux&amp;diff=3724&amp;oldid=prev</id>
		<title>Vix: Новая страница: «* Для замера производительности IOPS дисков в Linux можно использовать утилиту fio (утилита доступна для CentOS в репозитории EPEL). Соотвественно для установки fio в RHEL, CentOS используется пакетный менеджер yum (dnf):   # yum install epel-release -y  # yum install fio -y   Либо apt-get в Debian, Ubuntu :   # a...»</title>
		<link rel="alternate" type="text/html" href="https://support.qbpro.ru/index.php?title=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D1%83%D1%82%D0%B8%D0%BB%D0%B8%D1%82%D1%8B_fio_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_IOPS_%D0%B2_Linux&amp;diff=3724&amp;oldid=prev"/>
		<updated>2023-05-25T13:10:43Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «* Для замера производительности IOPS дисков в Linux можно использовать утилиту fio (утилита доступна для CentOS в репозитории EPEL). Соотвественно для установки fio в RHEL, CentOS используется пакетный менеджер yum (dnf):   # yum install epel-release -y  # yum install fio -y   Либо apt-get в Debian, Ubuntu :   # a...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;* Для замера производительности IOPS дисков в Linux можно использовать утилиту fio (утилита доступна для CentOS в репозитории EPEL). Соотвественно для установки fio в RHEL, CentOS используется пакетный менеджер yum (dnf):&lt;br /&gt;
&lt;br /&gt;
 # yum install epel-release -y&lt;br /&gt;
 # yum install fio -y&lt;br /&gt;
 &lt;br /&gt;
Либо apt-get в Debian, Ubuntu :&lt;br /&gt;
&lt;br /&gt;
 # apt-get install fio&lt;br /&gt;
&lt;br /&gt;
* Затем вам нужно определить диски для тестирования. Тестирование выполняется путев выполнения операций записи/чтения в той директории, в которую примонтирован диск или LUN.&lt;br /&gt;
&lt;br /&gt;
Измерение производительности дисков в IOPS с помощью fio&lt;br /&gt;
Выполним несколько видов тестирования производительности IOPS диска в различных сценариях нагрузки на диск (режим тестирования, который нужен выбрать зависит от логики размещенного приложения и общей архитектуры проекта).&lt;br /&gt;
&lt;br /&gt;
* Тест случайных операций на чтение/запись&lt;br /&gt;
&lt;br /&gt;
При запуске такого теста, будет создан файл размером 8 Гб. Затем утилита fio выполнит чтение/запись блока 4КБ (стандартный размер блока) с разделением на 75/25% по количеству операций чтения и записи и замерит производительность. Команда выглядит следующим образом:&lt;br /&gt;
&lt;br /&gt;
 # fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=fiotest --filename=testfio --bs=4k --iodepth=64 --size=8G --readwrite=randrw --rwmixread=75&lt;br /&gt;
&lt;br /&gt;
* Первую проверку я запустил на массиве из двух SSD дисков и результаты получились хорошие:&lt;br /&gt;
&lt;br /&gt;
 READ: bw=328MiB/s (344MB/s), 328MiB/s-328MiB/s (344MB/s-344MB/s), io=6141MiB (6440MB), run=18721-18721msec&lt;br /&gt;
 WRITE: bw=110MiB/s (115MB/s), 110MiB/s-110MiB/s (115MB/s-115MB/s), io=2051MiB (2150MB), run=18721-18721msec&lt;br /&gt;
 Чтение: ~ 328MiB/s, 83000 IOPS&lt;br /&gt;
 Запись: ~ 110MiB/s, 28000 IOPS&lt;br /&gt;
* Так как мы запустили тест на чтение/запись, показатели по отдельным проверкам, будут чуть выше.&lt;br /&gt;
&lt;br /&gt;
* Для сравнения, я замерил скорость на обычном SATA диске:&lt;br /&gt;
 Чтение ~ 1.7 MiB/s, 430 IOPS&lt;br /&gt;
 Запись ~ 0.5 MiB/s, 143 IOPS&lt;br /&gt;
* Для HDD диска результаты, конечно гораздо хуже, чем для SSD.&lt;br /&gt;
&lt;br /&gt;
* Тест случайных операций на чтение&lt;br /&gt;
&lt;br /&gt;
* Чтобы замерить производительность дисков только для случайных операций на чтение, нужно выполнить следующую команду:&lt;br /&gt;
&lt;br /&gt;
# fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=fiotest --filename=testfio --bs=4k --iodepth=64 --size=8G --readwrite=randread&lt;br /&gt;
&lt;br /&gt;
* Команда поменялась в самом конце на --readwrite=randread .&lt;br /&gt;
Как ранее я уже говорил, скорость по отдельным замерам будет выше:&lt;br /&gt;
&lt;br /&gt;
 READ: bw=584MiB/s (612MB/s), 584MiB/s-584MiB/s (612MB/s-612MB/s), io=8192MiB (8590MB), run=14027-14027msec, IOPS - 150000&lt;br /&gt;
 Если запустить тест только на чтение, разница со смешанным тестом достигает (200-250 MiB/s и 67000 IOPS), что достаточно &lt;br /&gt;
 ощутимо.&lt;br /&gt;
&lt;br /&gt;
* Тест случайных операций на запись&lt;br /&gt;
&lt;br /&gt;
* Для замера производительности диска для случайных операций записи, выполните команду:&lt;br /&gt;
&lt;br /&gt;
 # fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=fiotest --filename=fiotest --bs=4k --iodepth=64 --size=8G --readwrite=randwrite&lt;br /&gt;
&lt;br /&gt;
Производительность операций записи на хороших SSD дисках тоже очень высокая. Как и в случае с чтением, разница со смешанным тестом достигает 200-250 MiB/s, а в IOPS 56000.&lt;br /&gt;
&lt;br /&gt;
Если опираться на официальную документацию по дискам от производителя (это SSD диски от Intel), можно смело сказать, что в данном случае они не обманули.&lt;br /&gt;
&lt;br /&gt;
Тестирование производительности дисков с помощью файлов.&lt;br /&gt;
Утилита fio позволяет проверять диски не только с помощью интерактивного запуска команд, но и запускать заранее подготовленные конфигурационные файлы для тестов. Чтобы воспользоваться данным вариантом, создайте файл:&lt;br /&gt;
&lt;br /&gt;
 # nano read.fio&lt;br /&gt;
&lt;br /&gt;
И добавьте в него содержимое:&lt;br /&gt;
&lt;br /&gt;
 [global]&lt;br /&gt;
 rw=randread&lt;br /&gt;
 size=8G&lt;br /&gt;
 filename=/tmp/testfio&lt;br /&gt;
 ioengine=libaio&lt;br /&gt;
 iodepth=4&lt;br /&gt;
 invalidate=1&lt;br /&gt;
 direct=1&lt;br /&gt;
 [bgread] &lt;br /&gt;
 rw=randread&lt;br /&gt;
 iodepth=64&lt;br /&gt;
Теперь запустите тест:&lt;br /&gt;
&lt;br /&gt;
 # fio read.fio&lt;br /&gt;
&lt;br /&gt;
Данный тест замерит скорость чтения диска. Чтобы выполнить проверку производительности для операций записи, используйте такой конфиг:&lt;br /&gt;
&lt;br /&gt;
 [global]&lt;br /&gt;
 rw=randwrite&lt;br /&gt;
 size=8G&lt;br /&gt;
 filename=/tmp/testfio&lt;br /&gt;
 ioengine=libaio&lt;br /&gt;
 iodepth=4&lt;br /&gt;
 invalidate=1&lt;br /&gt;
 direct=1&lt;br /&gt;
 [bgwrite]&lt;br /&gt;
 rw=randwrite&lt;br /&gt;
 iodepth=64&lt;br /&gt;
Проверка latency диска с помощью ioping&lt;br /&gt;
Помимо IOPS есть еще один важный параметр, характеризующий качество вашей дисковой подсистемы – latency. Latency – это время задержки выполнения запроса ввода/вывода и характеризуют время доступа к системе хранения (измеряется в миллисекундах). Чем выше latency, тем больше приходится ждать вашему приложения данных от дисковой подсистемы. Для типовых систем хранения значения latency более 20 мс считаются плохими.&lt;br /&gt;
&lt;br /&gt;
Для проверки latency диска используется утилита ioping:&lt;br /&gt;
&lt;br /&gt;
 # yum install ioping -y&lt;br /&gt;
&lt;br /&gt;
 # apt-get install ioping&lt;br /&gt;
&lt;br /&gt;
Запустите тест latency для диска (выполняется 20 запросов):&lt;br /&gt;
&lt;br /&gt;
 # ioping -c 20 /tmp/&lt;br /&gt;
 &lt;br /&gt;
 4 KiB &amp;lt;&amp;lt;&amp;lt; /tmp/ (ext4 /dev/md126p5): request=1 time=1.55 ms (warmup)&lt;br /&gt;
 ......................&lt;br /&gt;
 4 KiB &amp;lt;&amp;lt;&amp;lt; /tmp/ (ext4 /dev/md126p5): request=11 time=368.9 us (slow)&lt;br /&gt;
 ................&lt;br /&gt;
 4 KiB &amp;lt;&amp;lt;&amp;lt; /tmp/ (ext4 /dev/md126p5): request=19 time=176.3 us (fast)&lt;br /&gt;
 4 KiB &amp;lt;&amp;lt;&amp;lt; /tmp/ (ext4 /dev/md126p5): request=20 time=356.9 us&lt;br /&gt;
 --- /tmp/ (ext4 /dev/md126p5) ioping statistics ---&lt;br /&gt;
 19 requests completed in 5.67 ms, 76 KiB read, 3.35 k iops, 13.1 MiB/s&lt;br /&gt;
 generated 20 requests in 19.0 s, 80 KiB, 1 iops, 4.21 KiB/s&lt;br /&gt;
 min/avg/max/mdev = 176.3 us / 298.7 us / 368.9 us / 45.7 us&lt;br /&gt;
 Среднее значение 298.7 us (микросекунд), т.е. средняя latency диска в нашем случае 0.3 ms, что очень хорошо. &lt;br /&gt;
&lt;br /&gt;
Значение latency может быть указано в us (микросекундах) или в ms (миллисекундах). Т.е. для получения из us значения в ms нужно разделить его на 1000.&lt;br /&gt;
Таким образом, вы можете провести нагрузочное тестирование дисковой подсистемы на вашем сервере до запуска проекта и получить максимальную производительность. Конечно такой тест не дает гарантий, что дисковый массив или диск будет постоянно гарантировать такую производительность, но на начальном этапе это тест, который обязательно нужно выполнить.&lt;br /&gt;
&lt;br /&gt;
'''ИСТОЧНИК:'''&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
* [https://winitpro.ru/index.php/2020/04/30/test-iops-diskov-v-linux/ Тестирование IOPS дисков в Linux]&lt;/div&gt;</summary>
		<author><name>Vix</name></author>
	</entry>
</feed>