Двухканальные SATA RAID-контроллеры: RAID1

Автор: Wulf, niknik
Дата: 03.02.2004
Все фото статьи

Введение


Некоторое время назад мы рассмотрели производительность восьми двухканальных SATA RAID-контроллеров применительно к RAID0-массивам. Вполне логично было не остановиться на этом и проверить работу контроллеров при реализации другого типа массива - RAID1. К сожалению, надёжность IDE-дисков еще далека от идеала, и, учитывая всё возрастающий объём дисков, к проблеме отказоустойчивости дисковой подсистемы нужно подходить со всей серьёзностью. Так как IDE-диски одновременно с увеличением объёма и дешевеют, то использование RAID1 в домашнем/рабочем компьютере уже не выглядит прихотью миллионера, который не знает куда бы ещё вложить деньги.

Соответственно, при выборе составляющих для RAID-массива возникают два вопроса:

1. Какие диски выбрать.
2. Какой контроллер выбрать.

Выбор дисков для домашнего RAID1-массива, в принципе, не так уж и важен. Главное, чтобы они были надёжными и недорогими. Скоростные качества отдельных дисков уже не раз рассматривались (в том числе и нами :) ), а поведение различных дисков в RAID1 рассматривать бессмысленно - так как отличия в скорости массива RAID1 перед одиночным диском в большей мере определяются используемым RAID-контроллером, а не самим диском. Поэтому, сделав тесты на одном RAID-контроллере, Вы "привязываете" производительность массива RAID1 к алгоритмам работы драйвера именно этого контроллера. Экстраполировать же результаты таких тестов на все RAID-контроллеры было бы неправильно.

Точно так же уязвимо для критики и наше сегодняшнее тестирование - мы будем рассматривать производительность различных контроллеров на одинаковых дисках. Что же, если мы хотим сравнить некоторые продукты между собой, нам нужно зафиксировать одну степень свободы...
Как уже говорилось выше, поведение RAID1-массива в большей степени зависит от контроллера, так что, надеемся, что результаты наших тестов будут иметь большую практическую ценность, чем рассмотрение "RAID1-пригодности" дисков.

Итак, приступим.

Тестовая система и методика тестирования


И тестовая система, и методика тестирования полность остались точно такими же, как и в статье "Двухканальные SATA RAID-контроллеры: RAID0". Но, на всякий случай, повторимся.

Тестовые системы:

материнская плата - Albatron PX865PE Pro II (чипсет i865PE);
материнская плата- ASUS P4V800-X (чипсет VIA PT800);
процессор - Intel P4 2400/533;
память – 256 MB PC2700 CL2;
системный диск - IBM DTLA 307015;
видеокарта - ATi Radeon VE;
операционная система - Windows 2000 Pro SP4;
два диска для RAID – Maxtor 6Y120M0.


Так как в нашем тестировании приняли участие два «чипсетных» контроллера, то нам пришлось использовать две материнские платы. Надо отметить, что несмотря на то, что материнские платы выполнены на разных чипсетах, их производительность не сильно отличается. Поэтому использование двух платформ не должно существенно повлиять на результаты тестирования. А даже если и повлияет, то не можем же мы рассматривать скорость интегрированного в чипсет контроллера вне скорости самого чипсета… ;)

Использовались следующие версии тестовых программ:

WinBench99 2.0
IOMeter2003.02.15
FC-Test v0.5.3

Тестирование проводилось по двум типам RAID-массивов:

RAID0 (stripe)
RAID1 (mirror)

Винчестеры тестировались в "быстром" режиме, переключение осуществлялось при помощи Hitachi Feature Tool. Перед тестами диски предварительно были «прописаны», чтобы исключить срабатывание принудительной проверки записи (подробности см. здесь).

Для тестов в WinBench винчестеры размечались в FAT32 и NTFS одним разделом с размером кластера по умолчанию (для разметки дисков в FAT32 использовалась программа Paragon Partition Manager). Тесты проводились по семь раз, учитывался максимальный результат. Винчестеры между тестами не охлаждались. Для тестов при помощи FC-Test массив разбивался на два логических диска по 32Gb. Тестирование в IOMeter проводилось на паттернах Sequential Read, Sequential Write, Database, Workstation, Fileserver и Webserver. За подробными описаниями паттернов Вы можете обратиться к нашим предыдущим материалам.
И, в завершение описания методики, приводим таблицу с описанием версий BIOS и драйверов ко всем контроллерам.


Результаты тестов



IOMeter: паттерны Sequential Read & Write

На массив при помощи программы IOMeter подаётся поток запросов на чтение/запись с глубиной очереди команд, равной четырём. Раз в минуту в тесте меняется размер блока данных, так что, после окончания теста, мы получаем зависимость скорости линейного чтения (или записи) от размера блока данных.


Нажмите для увеличения


В тесте Sequential Read явный лидер - контроллер Promise FT S150 TX2 plus в конфигурации WB: очень резво начал, потом "прилип" к отметке 50MB/sec, и на размерах блоков больше 256KB скорость контроллера скачкообразно увеличивается до недостижимой для других контроллеров планки в 75MB/sec.
Отметим, что увеличение скорости чтения на больших блоках контроллер демонстрирует вне зависимости от режима работы драйвера (WB/WT), и что достигнутая скорость (75MB/sec.) говорит о том, что чтение производится с обоих винчестеров зеркальной пары!
Контроллер от VIA начал не так резво, как контроллер Promise, но все же лучше, чем остальные. Затем также, как и контроллер Promise, уперся в скорость 50MB/sec. и больше не смог ее увеличить. Надо отметить, что скорость в 50MB/sec. стала непреодолимым барьером для большинства контроллеров. Не обошлось и без исключений, контроллер от фирмы LSI немного ускорился и превысил магическую планку в 50MB/sec.. Контроллер HighPoint RR1520 "провалился" практически во всех режимах, он не смог достичь скорости 30 MB/sec. даже при работе с блоками данных большого размера.

Посмотрим, как изменятся результаты при записи.


Нажмите для увеличения


При записи контроллер Promise в режиме WB (за счет "укрупнения" запроса на запись драйвером) стал единоличным лидером на малых размерах блоков данных. При работе с большими блоками все контроллеры, исключая неудачника от HighPoint, демонстрируют одинаковую скорость в 50MB/sec. Контроллер LSI SATA150-2 неожиданно плохо показал себя на малых размерах блоков до 16KB. По всей видимости, "виноваты" его драйвера, так как остальные два контроллера, основанные на чипе SiliconImage, показали большую скорость.

IOMeter: паттерн Database

В этом паттерне мы проверяем способность контроллеров работать со смешанным потоком запросов на чтение и запись блоков данных объёмом 8KB со случайным адресом. Изменяя соотношение запросов на чтение и запись, мы можем выявить качество сортировки драйвером контроллера запросов на чтение и запись:


Таблица получилась необычно большой, попытка раскрасить ее не удалась (получилась слишком пестрой). Попробуем построить графики.

Для начала посмотрим, как будут работать контроллеры на линейной нагрузке.


В начале графика (на 100% чтении) из общей картины выделяются два контроллера от Intel и HighPoint, но при увеличении доли запросов на запись оба контроллера постепенно (причем параллельно) снижают свою скорость. Позади них остались только два контроллера на чипах Silicon Imаge – референсный Sil3112 и Adaptec 1210SA. Третий контроллер этой группы LSI SATA150-2 показал себя чуть лучше. Самые высокие результаты при большой доле запросов на запись демонстрируют контроллеры от Promise (особенно в режиме WB) и VIA V8237.

Повышаем нагрузку до 16-ти исходящих запросов:


Все контроллеры, исключая VIA V8237, резко увеличили скорость в режимах с преобладанием запросов на чтение, но, по мере увеличения доли запросов на запись, теряют скорость. Вполне логично, ведь в RAID1 между двумя винчестерами можно чередовать только запросы на чтение, а каждый запрос на запись должны отработать оба винчестера.
Лучше всех при такой нагрузке выступил контроллер от Promise (WТ), но при 100% записи уступил самому себе же (но в режиме WB), а также контроллеру от VIA, который на чтении показал практически худшую скорость, но, за счет малого падения и даже небольшого роста скорости по мере увеличения доли запросов на запись, вышел на второе место при 100-процентной доле запросов на запись. Хуже всех в этом тесте (впрочем, как и в предыдущем) оказался Silicon Image Sil3112.

Увеличиваем нагрузку до максимума (256 исходящих запросов).


Все контроллеры, кроме Silicon Image Sil3112 и VIA V8237, показали примерно одинаковые результаты, показав высокую скорость на чтении, и уменьшая ее по мере увеличения доли запросов на запись. Контроллеры Silicon Image Sil3112 и VIA V8237 не смогли показать такую же скорость на чтении, зато по мере увеличения процента записи, немного увеличили скорость и при 100% записи влились в общую группу. Надо отметить, что контроллер Promise FT S150 TX2 Plus (WB) неожиданно "провалился" в режимах от 40% до 90% записи.

Далее посмотрим паттерны, эмулирующие работу дисковой подсистемы сервера.

IOMeter: Fileserver & Webserver


Проведём сравнение контроллеров по усреднённому значению их производительности (среднее арифметическое скорости контроллера при пяти вариантах нагрузки).


И что мы видим - все контроллеры выстроились "лесенкой", за исключением Silicon Image Sil3112 и VIA V8237. Они немного выделяются из общей картины. А лучше всех в этом тесте показал себя контроллер от Promise и контроллер Intel.




В этом тесте расстановка сил не изменилась. Возглавляет группу Promise FT S150 TX2 Plus в разных ипостасях и Intel ICH5-R, а замыкает семейство Silicon Imаge и контроллер от VIA. С одним отличием от предыдущего теста: Silicon Imаge Sil3112 и VIA V8237 отстали еще сильнее.

Забавно, что так отличается поведение интегрированных контроллеров: один из них выбился в лидеры, а другой скатился вниз.

IOMeter: Workstation

Паттерн этот характеризуется большой долей запросов на запись, и это должно изменить расстановку сил:




Изменение в расстановке сил не состоялось. ;)
Контроллеры Promise FT S150 TX2 Plus (WT/WB) и Intel ICH5-R прочно удерживают лидерство, а к отстающим добавился еще и HighPoint RR1520.

IOMeter: Workstation32

Паттерн Workstation32 отличается от Workstation лишь тем, что тест проводится на первых 32GB адресного пространства массива.




Уменьшение "рабочей зоны" теста не принесло никаких сюрпризов. Все контроллеры остались на своих местах, лишь Intel ICH5-R пропустил вперед Promise FT S150 TX2 Plus (WB).

Winbench99

Тест Winbench мы используем для проверки работы дисковой подсистемы в режиме "настольного компьютера". Для этого создаём логический диск на полный объём массива и форматируем его в NTFS средствами операционной системы (размер кластера по умолчанию равен 4KB) и в FAT32, используя программу Paragon Partition Manager (размер кластера 32KB).
Дополнительно, проведём тестирование на объеме логического диска в 32GB на NTFS и FAT32 с размером кластера по умолчанию (для разметки дисков использовался штатный W2K Disk Manager).

Начнем с сравнения результатов120GB-массива, рамеченного в FAT32.


Нажмите для увеличения

Итак, рассмотрим результаты контроллеров по скорости линейного чтения в начале и конце логического диска.


Все контроллеры, исключая HighPoint RR1520, продемонстрировали одинаковые скорости чтения с массива в начале и конце диска. Ну а результаты RR1520 в этом тесте лишь подтверждают полученные нами ранее в паттерне SequentialRead.
Отметим, что тест Disk Transfer Rate не показал увеличения скорости с RAID1-массива у контроллера Promise. Произошло это потому, что в тесте Winbench при измерении скорости линейного чтения по умолчанию используются 16KB-блоки. А, как мы помним, на блоках такого размера ни у одного из контроллеров не используется возможность поочерёдного чтения с обоих винчестеров зеркальной пары. Соответственно, и скорость чтения с RAID1-массива равняется скорости чтения с одиночного диска.

Сами графики линейного чтения можно посмотреть по этим линкам:

График линейного чтения: RAID1 на Acard 6890S
График линейного чтения: RAID1 на Adaptec 1210SA
График линейного чтения: RAID1 на HighPoint RR1520
График линейного чтения: RAID1 на Intel ICH5-R
График линейного чтения: RAID1 на Promise FT S150 TX2 Plus WT
График линейного чтения: RAID1 на Promise FT S150 TX2 Plus WB
График линейного чтения: RAID1 на Silicon Image Sil3112
График линейного чтения: RAID1 на LSI SATA150-2
График линейного чтения: RAID1 на VIA V8237

Рассмотрим результаты контроллеров в двух интегральных тестах - Business Disk Winmark и High-End Disk Winmark.


В Business Disk Winmark резко выделяется HighPoint RR1520, такая скорость может быть результатом особенности драйвера. Остальные контроллеры показали меньшую, но достаточно приемлемую скорость.


В тесте High-End Disk Winmark Intel ICH5-R занял первое место, за ним вплотную пристроились два контроллера из "семейства Silicon Image" Sil3112 и LSI SATA150-2, а третьего представителя этого семейства (Adaptec 1210SA), похоже, подвел драйвер, и он скатился на предпоследнее место. Последнее место занял HighPoint RR1520.

Посмотрим на успехи контроллеров под файловой системой NTFS:


Нажмите для увеличения


Под NTFS в Business Disk Winmark, по сравнению с FAT32, скорости немного упали, но драйвер вновь помог контроллеру RR1520 показать высочайший результат. Остальные контроллеры "сработали" очень ровно, разница в скорости между ними совершенно незначительна.


В тесте High-End Disk Winmark под NTFS неожиданно на первое место вышел Silicon Image Sil3112, за ним два интегрированных контроллера от фирм VIA и Intel (наконец-то нашелся тест, в котором они работают почти одинаково). HighPoint RR1520 снова показал худший результат.

Перейдем к тестам на логическом диске размером 32GB.

В файловой системе FAT32 результаты Winbench99 выглядят так:


Нажмите для увеличения

Также, как и ранее, рассмотрим результаты контроллеров в Business Disk Winmark и High-End Disk Winmark.


Драйвер HighPoint просто создан для теста Business Disk Winmark. :)
Скорость контроллера RocketRAID почти в 1.5 раза выше, чем у ближайшего "преследователя", а им является Promise FT S150 TX2 Pius в конфигурации WB, остальные контроллеры отстают от последнего весьма незначительно.


В тесте High-End Disk Winmark победил Silicon Image Sil3112, но остальные контроллеры буквально "дышат ему в спину". Все, кроме RocketRAID1520...

Завершая тесты в Winbench99, рассмотрим результаты контроллеров на NTFS при объеме логического диска в 32GB.


Нажмите для увеличения


Также как и на объеме 120Gb с тестом Business Disk Winmark лучше всех справился HighPoint, остальные контроллеры показали примерно одинаковый результат.


Здесь контроллер Intel ICH5-R занял лидирующую позицию, за ним два представителя "семейства Silicon Image" LSI SATA150-2 и Sil3112, Adaptec 1210SA снова отстал (благодаря своему драйверу) от своего "семейства". VIA V8237 обогнал контроллер от Promise (WT) и (WB), а замыкают список Acard 6890S и HighPoint RocketRAID1520.

FileCopy Test

Итак, наступило самое интересное, переходим к FileCopy Test. Мы применяем FC-Test по нашей стандартной методике - на диске создавалось два логических диска по 32 GB. Тесты проводились с двумя файловыми системами - NTFS и FAT32.
На первом логическом диске создавался набор файлов, затем этот набор файлов читался с диска, затем набор файлов копировался в директорию, созданную на первом логическом диске (т.е. производилось копирование внутри одного раздела), и завершало цикл тестов копирование первого набора файлов на второй логический диск. Версия 0.5.3 утилиты FC-Test немного отличается от нашей привычной версии 0.3. В новой версии появилась функция эмуляции архивации, для каждой операции сообщается не только время, потраченное на её совершение, но и средняя скорость (так как объём всех файлов паттерна известен).

Посмотрим, какие получились результаты. Начнем с файловой системы NTFS.

Создание и чтение файлов.


В каждой строчке красным цветом помечены худшие результаты, а синим - лучшие. Также, для наглядности, были построены диаграммы по скорости создания (Сreate) и чтения (Read) файлов.


Сразу выявить лидера и аутсайдера не представляется возможным, неплохо создают наборы файлов LSI SATA150-2 и VIA V8237, а Adaptec 1210SA "провалился" на файлах малого объема типа "Programs" и "Windows".


На чтении стало намного понятнее, LSI SATA150-2 и VIA V8237 обозначили свое лидерство более отчетливо, и еще к ним присоединился Silicon Image Sil3112. Также определился явный отстающий, им стал контроллер от фирмы HighPoint, скорость чтения которого ужасающе мала.

Посмотрим на результаты в копировании.






Здесь задачи другие, а лидеры все те же: контроллер от фирмы VIA отрывается от остальных все сильнее и сильнее. Контроллер HighPoint RR1520 немного подтянулся на наборе файлов большого объема (ISO), но на остальных типах отстает с большим отрывом.

Перейдем к файловой системе FAT32 и рассмотрим все в прежнем порядке.




Также, как и в файловой системе NTFS, сразу выявить лидера и аутсайдера невозможно, но, тем не менее, не можем не отметить контроллер VIA V8237 за его высокую скорость и стабильность результатов.


В чтении выявить лидера стало еще сложнее, зато аутсайдер виден сразу – контроллер от фирмы HighPoint, отмеченный нами еще по тесту Winbench99 за свой "однобокий" драйвер, не смог составить конкуренцию остальным.

Копирование под FAT32 завершает нашу тестовую программу.






При копировании в FAT32 лидирует (как всегда в этом тесте) VIA V8237, за второе место борются LSI SATA150-2 и SiliconImage Sil3112, четвертое и пятое места попеременно занимают контроллеры от Promise (WT) и ICH5-R. Худшие результаты показали RR1520 и Adaptec 1210SA.

Выводы


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

ACARD-6890S – показывает довольно приличные результаты для новичка, сильных взлетов не было, но и падений на последнее место также не отмечалось.

Контроллер Adaptec 1210SA в RAID1 работает намного успешнее, чем референсный SiliconImage Sil3112 (в RAID0, напомним, было с точностью до наоборот).

Контроллер HighPoint RocketRAID1520 средне повел себя в тесте IOMeter, крайне нестабильно в Winbench99, и, можно сказать, полностью провалил FC-test.

Контроллер Intel ICH5-R проявил себя не так хорошо, как в RAID0. В синтетических паттернах IOMеter он был весьма неплох, хотя ни разу и не занял первого места. В Winbench99 контроллер прекрасно показал себя в Hi-End Disk Winmark, но не очень быстр в Business Disk Winmark. Да и в FC-Test контроллер Intel не блеснул...

Контроллер LSI SATA150-2 в синтетике показал чуть лучшие результаты, чем SiliconImage и Adaptec 1210SA, но в Winbench99 и FileCopy Test проиграл контроллеру от фирмы SiliconImage.

Контроллер Promise FT S150 TX2 Plus очень хорошо показал себя в различных тестах с использованием IOMeter. В тестах Winbench99 и FileCopy Test результаты контроллера Promise были немного хуже, чем у конкурентов. Причём, скорость контроллера по тестам сильно зависела от режима кэширования запросов драйвером (WB/WT). В тестах Winbench99 Promise FT S150 TX2 Plus Plus лучше отработал в режиме WB, а в FC-Test лучше были результаты для режима WT.

Контроллер SiliconImage Sil3112 просто "провалил" тест IOMeter. Но в Winbench99 и FileCopy Test преобразился и практически никогда не покидал группу лидеров, довольно часто занимая первое место.

И, наконец, последний контроллер (по алфавиту, а не по значению…) - VIA V8237. В синтетических тестах с использованием IOMeter он не проявил особой прыти, особенно под большими нагрузками, в Winbench99 немного исправился, но особых вершин не достигал, зато в FileCopy Test он был просто бесподобен.

P.S. При выборе контроллера для домашнего/рабочего компьютера мы рекомендуем принять во внимание результаты FC-Test, так как он имитирует наиболее часто используемые режимы нагрузки на дисковую подсистему.