Raptor2: И всё-таки она вертится!

Автор: niknik
Дата: 09.06.2004
Все фото статьи

Введение


Выполняя данное ранее обещание, я возвращаюсь к теме поддержки жёстким диском WD740GD aka Raptor2 технологии Command Queuing.

По результатам проведённого в статье "WD740GD или Raptor2" миниисследования были сделаны два предположения:

1. Диск WD740GD обладает поддержкой CQ, но существующие SATA-контроллеры игнорируют PATA CQ. А рост быстродействия дисков при увеличении нагрузки на них объясняется банальной сортировкой запросов к диску драйвером SATA-контроллера.

2. Эффективность PATA CQ настолько мала, что эффект от её наличия незаметен на фоне прироста скорости диска при сортировке запросов драйвером контроллера.

Сегодня мы попробуем продолжить исследования этой проблемы с той точки, на которой остановились в прошлый раз. Для тех, кто не читал первую статью, вкратце напомню суть проблемы - ни на одном из доступных на рынке SATA-контроллеров диск WD740GD не продемострировал работу технологии Ultra150/CQ (это название получила технология PATA Queuing-а, которую поддерживает диск WD).

Контроллер Promise SATAII 150 SX8


Не так давно в наши руки попал сэмпл контроллера Promise SATAII 150 SX8, который, наряду с поддержкой NCQ, входящей, в расширение стандарта SATA - Serial ATA II, Extensions to SATA 1.0 specification, поддерживает и TCQ (Tagged Command Queuing), что дало нам надежду на возможность "активации" скрытых возможностей диска WD740GD.

В BIOS-контроллера можно было включить или выключить поддержку TCQ для диска, но, что любопытно, для WD740GD режим его работы можно было менять, а вот для диска Seagate ST3200822AS включить поддержку TCQ "не разрешалось". По всей видимости, с точки зрения контроллера NCQ - это уже не TCQ (или наоборот...).

Вот так выглядит контроллер Promise:


"Сердем" его является чип PSC81518


- восьмиканальный PCI-X-контроллер SATA, поддерживающий Serial ATA II, Extensions to SATA 1.0 specification.

Ну, что же, давайте попробуем протестировать WD740GD на этом контроллере!

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


Так как контроллер у нас - PCI-X, то тесты проводились на серьёзном стенде:

корпус - Intel SC5200
материнская плата – Intel SHG2;
процессор - 2 x Intel Xeon 2.8/400FSB;
память - 2 x 512MB DDR SDRAM PC2100 ECC Registered;
винчестер - IBM DTLA 307015;
видеокарта – onboard ATi Rage XL;
операционная система - Windows 2000 Pro SP4.

Но тест использовался только один - IOMeter 2003.02.15. Всё дело в том, что драйвера контроллера находятся еще в статусе бета-версии и, чтобы не делать работу дважды, мы решили пока не проводить широкомасштабное тестирование.
Собственно, целью данного тестирования является только подтверждение или опровержение поддержки CQ на WD740GD контроллером Promise .

Как Вы помните, в прошлый раз мы проверяли способность дисков к переупорядочиванию команд при помощи специального паттерна, содержащего запросы на чтение секторов со случайным адресом.
Нагрузка на диск (количество исходящих запросов) увеличивалась от 1 до 256 с шагом 1. И, по тому, как увеличивается производительность диска (скорость обработки им поступающих запросов) в зависимости от глубины очереди запросов, мы и будем судить о наличии/отсутствии TCQ.

На сей раз диск WD740GD был протестирован трижды - на контроллере Promise S150 TX4 (контроллер без поддержки TCQ) и дважды на контроллере Promise SATAII 150 SX8 (при включенной и выключенной в BIOS опцией "TCQ ON").

Итак, чтобы не томить - первый график:


Как видите, налицо явное "ускорение" диска WD740GD на контроллере Promise SATAII 150 SX8 с активированной в BIOS-контроллера опцией "TCQ ON". И, что самое важное для нас, основной рост производительности достигается на малых нагрузках! Результаты WD740GD на контроллере Promise SATAII 150 SX8 с выключенной поддержкой TCQ выглядят, по крайней мере, странно... Но не будем пытаться предугадать логику его работы "совсем без CQ".
Давайте лучше попробуем оценить прирост производительности от "включения" TCQ в процентах (естественно, сделав допущение, что, по всей вероятности, именно задействование TCQ привело к таким результатам), то есть вычислим процентное соотношение между скоростями диска WD740GD на контроллерах SX8 и TX4.


Что же, весьма впечатляющие цифры! Прирост быстродействия достигает в некоторых режимах порядка 30 процентов!
Конечно, проведённые нами тесты - это чистая синтетика, так что на такой прирост в реальных задачах рассчитывать не приходится. Но, всё же, такого громадного прироста в скорости от TCQ я, честно говоря, не ожидал.

Ну, раз у нас всё так здорово, может замахнуться на Вильяма, понимаешь, на Шекспира? :)
В смысле, а не сравнить ли нам WD740GD с поддержкой TCQ и SCSI-диск? А в качестве "соперника" для диска WD был выбран диск Seagate из линейки Cheetah 10K.6 ёмкостью 73ГБ. Для тестов был использован контроллер Adaptec 29320 с драйверами 3.00.0.


Как видите, SCSI-диск всё же быстрее. В зависимости от нагрузки SCSI-диск опережает диск WD на 10-20 процентов...
Что же, изначально было ясно, что PATA Queuing менее эффективен, чем SCSI Queuing. Во-первых, последний поддерживает большую глубину очереди команд и, во-вторых, требует меньше прерываний для передачи данных... Подробно "недостатки" PATA Queuing-а рассмотрены в статье "Вкратце о технологии маршрутизации команд Serial ATA II NCQ (Native Command Queuing)", так что за подробностями лучше обратиться туда.

А нам самое время перейти к выводам.

Выводы


Тесты диска WD740GD на контроллере Promise SATA II 150 SX8 показали, что CQ на дисках Raptor2 работает. Как в рекламе "Yupi" нужно было только добавить воды, то есть добыть "правильный" контроллер.

Второй вывод, который можно сделать из этого тестирования - от поддержки TCQ есть польза! Эффективность работы CQ на Raptor2 даже на бета-версии BIOS/драйверов контроллера достигла умопомрачительной цифры в 30 процентов, так что тут явно "есть за что бороться".

Третий вывод, который можно было бы сделать и без тестов - эксперименты нужно продолжать! Будут новые контроллеры и, соответственно, будут новые тесты. Оставайтесь с нами! :)