В началоТюнинг Gentoo → Тонкая настройка IDE дисков с помощью hdparm
Gentoo-doc HOME Пред.: Тюнинг настроек программ из семейства MozillaВ началоУровень выше: Тюнинг GentooСлед.: Ускорение загрузки системы

7. Тонкая настройка IDE дисков с помощью hdparm

Ссылка на оригинал: http://www.opennet.ru/base/sys/htparm_tune.txt.html

Перенесено в: 1.5

7.1. Введение

К сожалению настройки по-умолчанию для IDE жёстких дисков сделаны с уклоном в надёжность работы, в том числе на некачественном оборудовании. На большинстве же современных материнских плат и жёстких дисков можно заметно увеличить производительность IDE подсистемы, причём это не потребует много времени.

7.2. Характеристики IDE устройства

Для получения характеристик IDE устройства выполните команду:

# hdparm -i /dev/hda

Вместо /dev/hda можно указать любое другое IDE устройство

Расшифровка

Max Mult Sect: Это поле содержит максимальное число секторов, которое ваш жесткий диск может прочитать за «один присест».

Mult Sect: Текущая настройка количества секторов, считываемых за один раз.

PIO modes и DMA modes: Здесь перечисляются режимы, которые поддерживает жесткий диск. Режим, помеченный символом «звездочка» (*), является текущим.

Advanced PM: Признак 'yes' указывает на то, что жесткий диск поддерживает APM (Advanced Power Management – Расширенное Управление Питанием).

Запустив другую команду, вы получите дополнительную информацию:

darkstar:$ hdparm /dev/hda

Результат работы команды:

/dev/hda: 
multcount = 0 (on) 
I / O? support = 0 (16-bit) 
unmaskirq = 0 (off) 
using_dma = 0 (off) 
keepsettings = 0 (off) 
nowerr = 0 (off) 
readonly = 0 (off) 
readahead = 8 (on) 
geometry = 2482/255/63, sectors = 39876480, start = 0 

Коротко...

  1. multcount – число секторов, считываемых одновременно;

  2. I/O support – режим обмена с жестким диском (16/32/32sync);

  3. using_dma – указывает, используется ли в настоящий момент режим DMA или нет;

  4. keepsettings – указывает, сохраняются ли настройки после программного сброса (изменять эту настройку не рекомендуется, если вы не уверены в том, что делаете);

  5. readonly – обычно установлен в 1 только для CD-ROM, этот флаг сообщает системе  является ли устройство read-only или нет;

  6. readahead – количество секторов для опережающего чтения;

7.3. Настройка

Внимание

Неправильная настройка может привести к потере данных на жёстком диске, а возможно и самого дика.

7.3.1. I/O Support

-с0 — установка 16-и битного режима (по-умолчанию)

-c1 — установка 32-х битного режима (обычно то, что вам нужно)

-c3 — установка 32-х битного синхронного режима (мне не известно, когда именно это надо)

7.3.2. Multicount

Количество секторов передаваемых сразу (одним блоком). Степень двойки, максимальное число — параметр Max Mult Sect в выводе hdparm -i. Чаще всего вам именно его и нужно указывать.

7.3.3. Включение DMA

Большинство современных чипсетов и HDD поддерживают DMA под линуксом. Для некоторых самых новых чипсетов в данный момент поддержки DMA может не быть, однако это не так часто бывает. Обычно в течении нескольких недель после выхода нового чипсета появляется его поддержка в последнем ядре, так что если DMA у вас не включается, то следует, скорее всего, обновить ядро.

-d0 — запрещение DMA

-d1 — включение DMA

7.3.4. DMA mode и PIO mode

Самая опасная настройка — её неправильное использование чаще всего приводит к повреждению данных или оборудования.

-X<число> — установка режима PIO или DMA

Режимы multiword DMA:

32 (базовое число) + номер режима:

-X32 — mdma0

-X33 — mdma1

-X34 — mdma2

Для PIO базовое число 8, для Ultra DMA? 64.

-X64 — udma0

-X65 — udma1

-X66 — udma2

-X67 — udma3

-X68 — udma4

-X69 — udma5

7.3.5. Readahead (опережающее чтение)

На сколько секторов вперёд читать при запросе. Ускоряет производительность при чтении файлов большого размера, однако замедляет работу с файлами небольшого размера.

Лучше всего установить то же значение, что и для multicount.

-aN — опережающее чтение N секторов

7.4. Тестирование

Для тестирования наберите:

# hdparm -t <имя устройства>

Желательно это делать, когда заметной дисковой активности нет.

Потом попробуйте какой-нибудь вариант конфигурации, например:

# hdparm -u1c1d1m8a8 <имя устройства>

После чего опять повторите:

# hdparm -t <имя устройства>

И сравните результаты.

По результату этого теста не стоит подбирать опции -a и -m, для этого лучим тестом будут реальные приложения, исполняемые на вашей машине. Если это домашняя машина, а не боевой сервер, на котором важна сверхтонкая подстройка (но на таких серверах редко оказываются IDE-диски, о которых здесь идёт речь), то тогда параметр multicount (-m) ставите на максимум, а параметр read-ahead (-a) равным multicount.

Пред.: Тюнинг настроек программ из семейства MozillaВ началоУровень выше: Тюнинг GentooСлед.: Ускорение загрузки системы
В началоТюнинг Gentoo → Тонкая настройка IDE дисков с помощью hdparm