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

Norton [CPS] WW

Простая проверка скорости работы диска в Linux, позволяет определить реальную скорость чтения и записи с диска. Один из сценариев когда в VPS заявляют что диск SSD, при этом он не обеспечивает скорость работы свойственную твердотельным дискам.

Так же, данное тестирование, может пригодится при проектировании и систем, для учета нагрузку на дисковую подсистему.

Hard Disk Drive

Скрипт тестирования скорости диска

Для тестирования используется следующий скрипт, работающий на всех дистрибутивах Linux. Создаем файл, к примеру hdd_speed.sh со следующим содержимым:

#!/bin/bash
tmpfile=tempfile
BYTES=1M
COUNT=1024

/sbin/sysctl -w vm.drop_caches=3

echo "Write to Hdd"
sync; dd if=/dev/zero of=$tmpfile bs=$BYTES count=$COUNT; sync

echo "Read from Hdd"
dd if=$tmpfile of=/dev/null bs=$BYTES count=$COUNT

rm -f $tmpfile

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

Параметры

tmpfile - имя временного файла, при необходимости можно указать путь
BYTES - Количество данных записываемая за цикл
COUNT - количество циклов

В обычно сценарии изменения параметров не требуется

Запуск скрипта тестирования скорости диска в Linux

Для тестирования скорости, помещаем скрипт в нужный раздел, либо меняем переменную tmpfile

bash hdd_speed.sh

Примеры запуска скрипта тестирования скорости диска

Сервер с простыми HDD дисками

bash hdd_speed.sh
vm.drop_caches = 3
Write to Hdd
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 3.8722 s, 277 MB/s
Read from Hdd
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 1.84827 s, 581 MB/s

Тест одного из хостеров.

судя по скорости чтения SSD, но явно не самые быстрые.

bash hdd_speed.sh
vm.drop_caches = 3
Write to Hdd
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 1.65961 s, 647 MB/s
Read from Hdd
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.32285 s, 3.3 GB/s

Сервер с SSD диском

bash hdd_speed.sh
vm.drop_caches = 3
Write to Hdd
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.809999 s, 1.3 GB/s
Read from Hdd
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.17818 s, 6.0 GB/s

 

 

Добавить комментарий