Home » Полезные советы » Как измерить скорость жесткого диска

Как измерить скорость жесткого диска

Иногда хочется быстро прикинуть, как работает дисковая подсистема, либо сравнить 2 жестких диска. Очевидно, что измерить реальную скорость дисков практически невозможно, она зависит от слишком большого числа параметров. Но получить некое представление о скорости дисков можно.

Проверка скорости чтения диска

Проще всего измерить скорость диска с помощью программы hdparm. Установить ее очень просто:

CentOS/RHEL:

# yum -y install hdparm

Debian/Ubuntu

# apt-get -y install hdparm

Теперь нужно вывести список дисков и разделов в системе:

# fdisk -l

disk-speed-01

Выбираем нужный раздел и проверяем скорость чтения:

# hdparm -t /dev/sda2

disk-speed-02

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

Проверка скорости записи на диск

Для того, чтобы измерить скорость записи на диск, можно воспользоваться стандартной утилитой linux — dd. С ее помощью мы создадим на диске файл размером 1 Gb частями по 1Mb.

Измеряем скорость записи на диск:

# sync; dd if=/dev/zero of=tempfile bs=1M count=1024; sync

disk-speed-03

Я измерял скорость на виртуальной машине, диск которой был размещен на RAID5, собранным из 5-ти дисков SAS 10к. В принципе, неплохой результат. Можно изменить размер файла и блоков, из которого он записывается. Если сделать файл побольше, результат скорости диска может получиться более приближенный к реальности.

А вот скорость диска на VDS, который я арендую. Результат в разы хуже:

disk-speed-04

Скорость диска на виртуальной машине, расположенной на втором SATA диске моего рабочего ноутбука:

disk-speed-05

Результат не очень, надо разбираться в чем дело. Давно возникли подозрения, что с диском что-то не то, заметно подтормаживают виртуальные машины, хотя раньше это было не заметно. Жаль, результатов более ранних тестов не сохранилось.

Интересно было бы посмотреть на ваши результаты тестов. Если же вы хотите серьезно измерить скорость дисков, то вам сюда — Как правильно мерять производительность диска.


Помогла статья? Есть возможность отблагодарить автора

6 комментариев

  1. Сервер виртуализации
    RAID10 4xSAS 10k RPM
    OS Gentoo

    virtserv ~ # sync; dd if=/dev/zero of=tempfile bs=1M count=1024; sync
    1024+0 записей получено
    1024+0 записей отправлено
    скопировано 1073741824 байта (1,1 GB), 0,580826 c, 1,8 GB/c

    Гостевая система. CentOS 7
    [root@zbx ~]# sync; dd if=/dev/zero of=tempfile bs=1M count=1024; sync
    1024+0 записей получено
    1024+0 записей отправлено
    скопировано 1073741824 байта (1,1 GB), 0,726475 c, 1,5 GB/c

    • Ого, я таких скоростей ни разу не видел. В чем секрет в данном случае? Результат даже для RAID10 очень хороший.

  2. Сервер виртуализации
    virtserv ~ # hdparm -t /dev/sdb1
    /dev/sdb1:
    Timing buffered disk reads: 834 MB in 3.00 seconds = 277.55 MB/sec

    Гостевая система
    [root@zbx ~]# hdparm -t /dev/vda1
    /dev/vda1:
    Timing buffered disk reads: 6478 MB in 3.00 seconds = 2158.63 MB/sec

  3. На сервере виртуализации
    /dev/sdb1 /var/lib/libvirt/images ext4 noatime,nodiratime,noacl,data=writeback,commit=15,barrier=0,max_batch_time=30000,min_batch_time=10000
    + отключенное журналирование

  4. У меня в ядре еще планировщик — deadline, ну и tune2fs ни кто не отменял. Я примерно пару лет собирал инфу и экспериментировал с тюнингом разными fs. То одно покручу, то другое. В итоге на продакшн ВОТ ТАК. Где и что крутил я уже к сожалению не помню и какие параметры за что отвечают тоже.

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

Ваш e-mail не будет опубликован.