Обзор Promise UltraTRAK TX4

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

Введение


Этот обзор посвящён весьма неординарному устройству - внешнему IDE RAID-контроллеру от Promise - UltraTRAK100 TX4. Почему неординарному - спросите вы. Во-первых, сами по себе внешние RAID-контроллеры значительно менее распространены, чем обычные PCI RAID-контроллеры, и появление первого внешнего RAID-контроллера в нашей лаборатории - своего рода праздник. :)
Во-вторых, внешний RAID-контроллер Promise работает с IDE-дисками, что тоже тянет на прецедент. Доселе, внешние RAID-контроллеры делались только для SCSI-дисков и проникновение интерфейса IDE в эту нишу также заслуживает отдельного разговора.
Что же, внешний RAID-контроллер - простейший способ увеличить ёмкость дисковой подсистемы без глобальной перестройки архитектуры сервера (особенно если его конструктив не предусматривает дальнейшее увеличение ёмкости дисковой подсистемы простым добавлением дисков) и с минимальными затратами времени на настройку программного обеспечения.
Если кого-нибудь испугал тот факт, что в UltraTRAK100 TX4 используются IDE-диски, спешу успокоить - к компьютеру RAID-контроллер подсоединяется по обычному Ultra2 SCSI-интерфейсу. Использование же IDE-дисков позволяет заметно снизить стоимость хранения информации, ведь современные IDE-диски имеют очень приличные объёмы (120-160ГБ) и, за счёт относительно невысокой их стоимости, значительно лучшее соотношение ёмкости и цены, чем текущие SCSI-диски.
Итак, настала пора познакомиться с Promise UltraTRAK100 TX4 поближе:

Контроллер


Внутри увесистой белой коробки, украшенной только названием фирмы-производителя (т.е. надписями Promise :) ) находится весьма симпатичное устройство:

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

Из стали же выполнена и корзина (коробка, направляющие):

Так что за долговечность механизма корзины можно не волноваться.
Для надёжной и безопасной замены дисков "на лету" (HotSwap) корзина и mobile-rack-и оснащены специальной электронной схемой, о которой я уже писал в обзоре Promise FastTRAK100 TX2 Pro.
Чтобы продолжить осмотр Promise UltraTRAK100 TX4, мне пришлось его немного развинтить. :)
После снятия П-образной крышки моему взгляду предстал... маленький компьютер!

Отлично виден блок питания и материнская плата со вставленным модулем памяти. Перед тем, как мы перейдём к изучению материнской платы и всего, что на ней установлено, бросим взгляд на заднюю часть нашего системного блока:

Как видим, за температуру внутри корпуса отвечают аж четыре вентилятора (не считая вентилятора в блоке питания)!
Над блоком питания находится выключатель питания, который светится зелёным светом, если UltraTRAK100 TX4 не включён. Если же включить UltraTRAK100 TX4, то лампочка в переключателе гаснет. Интересно, зачем подсвечивать кнопку включения? Чтобы проще было искать её в темноте? :)
В верхней части задней панели UltraTRAK100 TX4 мы можем видеть также разъём COM (наверное, для удалённого администрирования) и два разъёма Ultra2 LVD SCSI (на самом деле - один, так как второй занят терминатором). В один из этих разъёмов подключается кабель от SCSI-контроллера копьютера, а к второму разъёму подключается терминатор или ещё один UltraTRAK100 TX4! То есть дисковая подсистема на UltraTRAK100 TX4 очень просто масштабируется по мере необходимости. Вот Вам и преимущество подключения по SCSI-интерфейсу...
Кстати об интерфейсе - с контроллером поставляются соединительный кабель и терминатор:

Ну что же, настала пора посмотреть, на какой платформе работает UltraTRAK100 TX4:

За большим чёрным радиатором "спрятался" процессор Intel i960RD66,


слева от него находится разъём для модуля памяти. Чуть выше - два установленных чипа Promise PDC20265R


и посадочные места еще для двух чипов. По всей видимости, модель UltraTRAK100 TX8 отличается от UltraTRAK100 TX4 только этим (не считая небольших изменений в фирмваре).
Справа от центрального процессора находится чип LSI 53C895, отвечающий за SCSI-интерфейс.


Кэш-память выполнена в виде 16MB 72pin EDO SIMM-модуля.


В нижней части платы расположены биос, батарейка СMOS-памяти и контроллер дисплея на жидких кристаллах.
Единственное, что я ещё не продемонстрировал, так это UltraTRAK100 TX4 в работе:

Оказывается, при работе он весь светится, как рождественская ёлка. :)
Жидкокристаллический индикатор, наоборот, сух и лаконичен:


При нормальной работе контроллера на индикаторе отображается статус массива, температура (то ли винчестеров, то ли просто температура внутри корпуса...) и средняя скорость вращения вентиляторов.

Драйвера и утилиты


Этот раздел обзора будет очень коротким...
Внешнему RAID контроллеру Promise UltraTRAK100 TX4 драйвера не нужны!
Для SCSI-контроллера, расположенного в базовом компьютере, внешний RAID-массив видится как один винчестер и никакой дополнительной поддержки драйверами ему не требуется.


Всё необходимое для настройки параметров контроллера UltraTRAK100 TX4 и мониторинга состояния массива находится в фирмваре самого контроллера. Необходимые настройки производятся при помощи расположенных на передней панели четырех кнопок управления (вверх, вниз, выбор, выход), что оказалось на практике очень удобным решением.

Тестовая система


материнская плата - SuperMicro 370DLE
процессор - Intel Coppermine 600MHz;
память - 2*128Mb SDRAM Micron PC133 ECC Registered;
винчестер - Quantum FB EL 10GB;
видеокарта - Matrox Milennium 4Mb;
операционная система - Windows 2000 Pro SP2;

Для создания массивов использовались четыре диска IBM DTLA 307015.

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


Размер stripe-блока при создании массивов устанавливался в 64КБ. Для тестов в WinBench массивы размечались в FAT32 и NTFS одним разделом с размером кластера по умолчанию.
Тесты проводились по четыре раза, результаты усреднялись. Винчестеры между тестами не охлаждались.
Использовались следующие тесты:

WinBench 99 1.2
IOMeter 1999.10.20

Для IOMeter использовались следующие паттерны:

Паттерны для Intel IOMeter
 % of Access Specification Transfer Size Request % Reads % Random
 File Server Access Pattern   
 10% 0.5 KB 80% 100%
 5% 1 KB 80% 100%
 5% 2 KB 80% 100%
 60% 4 KB 80% 100%
 2% 8 KB 80% 100%
 4% 16 KB 80% 100%
 4% 32 KB 80% 100%
 10% 64 KB 80% 100%
 Workstation Access Pattern   
 100% 8 KB 80% 80%
 Database Access Pattern   
 100 8 KB 67% 100%
 RandomWrite   
 100 8 KB 0% 100%
 SequentialWrite   
 100% 256 KB 0% 0%
 RandomRead   
 100% 8 KB 100% 100%
 SequentialRead   
 100% 256 KB 100% 0%

Дополнительно проведено сравнение скоростей контроллеров UltraTRAK100 TX4 и SuperTRAK SX6000 в RAID 5 и RAID01 при изменяемом соотношении операций чтения/записи. Был создан паттерн, в котором использовались 100% случайные 8КБ-блоки данных, а соотношение числа чтений/записей менялось от 100/0 до 0/100 c шагом 10.

Результаты WinBench 99


По традиции, начинаем с результатов Winbench:

Результаты Winbench99 RAID0 - FAT32
  1HDD 2HDD 3HDD 4HDD
 Business Disk WinMark 99 8690 8910 9090 9230
 High-End Disk WinMark 99 17900 19600 20200 20600
     
 HE:AVS/Express 3.4 17700 17000 17000 17500
 HE:FrontPage 98 128000 115000 96800 94800
 HE:MicroStation SE 28700 27300 26400 27600
 HE:Photoshop 4.0 7590 9000 9490 9590
 HE:Premiere 4.2 14300 15700 16600 16900
 HE:Sound Forge 4.0 22300 27000 28600 28600
 HE:Visual C++ 5.0 23900 26800 26700 28100
     
 Disk Access Time 13,3 13,5 13,6 13,4
 DTR:Beginning 19100 17200 17300 17400
 DTR:End 18200 17200 17200 17400

Не в обиду Promise будет сказано, но скорость обработки больших файлов невысока, и из-за этого результаты массива в Hi-End тестах намного хуже, чем результаты одного винчестера IBM DTLA на обычном UDMA-контроллере. Впрочем, все контроллеры IDE RAID с аппаратным кэшом традиционно слабы в этом тесте.
Обратите внимание на скорость линейного чтения с массива - она не превышает 20МБ/сек. Я специально не стал выкладывать графики линейного чтения, так как все графики внешне выглядят одинаково - горизонтальная линия ниже 20МБ/сек.

Результаты Winbench99 RAID0 - NTFS
  1HDD 2HDD 3HDD 4HDD
 Business Disk WinMark 99 6900 7290 7250 7290
 High-End Disk WinMark 99 16100 16700 17300 17600
     
 HE:AVS/Express 3.4 16700 14100 14400 14700
 HE:FrontPage 98 85400 88900 85800 85700
 HE:MicroStation SE 23400 21600 21500 20400
 HE:Photoshop 4.0 7510 8760 9100 9290
 HE:Premiere 4.2 12200 13100 13900 13900
 HE:Sound Forge 4.0 20700 23200 22500 24200
 HE:Visual C++ 5.0 19000 20200 20700 21000

Под NTFS чуда не происходит, и результаты чуть уменьшаются...

Вполне естественно, что во всех остальных типах массивов контроллер UltraTRAK100 TX4 показал себя хуже, чем в RAID0.

Результаты Winbench99 RAID 1/3/5/01 - FAT32
  RAID3-3HDD RAID3-4HDD RAID5-3HDD RAID5-4HDD RAID 1 RAID01
 Business Disk WinMark 99 8030 8020 8000 8020 8630 8860
 High-End Disk WinMark 99 13500 13600 13700 13500 16300 17600
       
 HE:AVS/Express 3.4 16200 16600 16500 16300 18300 17000
 HE:FrontPage 98 83900 70900 107000 73800 124000 109000
 HE:MicroStation SE 25700 26600 24800 25400 29100 27000
 HE:Photoshop 4.0 5160 4980 5250 4950 6750 7710
 HE:Premiere 4.2 11100 11500 10900 11500 12400 13900
 HE:Sound Forge 4.0 17600 18600 17600 18700 19200 22200
 HE:Visual C++ 5.0 16500 16900 17600 16900 21200 24200
       
 Disk Access Time 13,5 13,7 13,5 13,5 13,3 12,8
 Disk Transfer Rate:Beginning 17100 16900 16900 16900 18800 17200
 Disk Transfer Rate:End 17000 16900 16900 16900 18500 17200


Результаты Winbench99 RAID 1/3/5/01 - NTFS
  RAID3-3HDD RAID3-4HDD RAID5-3HDD RAID5-4HDD RAID 1 RAID01
 Business Disk WinMark 99 6230 6570 6240 6350 6870 6870
 High-End Disk WinMark 99 11800 11400 11800 11600 14200 15200
       
 HE:AVS/Express 3.4 14100 14200 14300 14000 14800 14800
 HE:FrontPage 98 76600 74300 82200 83800 85800 90300
 HE:MicroStation SE 20800 21200 19900 19300 22800 20200
 HE:Photoshop 4.0 5030 4860 4950 4740 6660 7520
 HE:Premiere 4.2 8480 8500 9610 8950 10300 11500
 HE:Sound Forge 4.0 14900 15100 15400 14700 16900 19200
 HE:Visual C++ 5.0 13200 13000 13700 13500 16700 18100

Как видим, контроллер UltraTRAK100 TX4 не слишком быстро работает в тестах WinBench. Что послужило причиной такой низкой скорости - "длинная" цепочка прохождения команд - SCSI-i960-IDE-i960-SCSI, или перманентная работа 66МГц чипа i960 через медленный кэш - сложный вопрос...

Результаты IOMeter


Результаты тестирования в этом тесте приводятся в максимально "сжатом" виде - только зависимость скорости обработки контроллером запросов от глубины очереди команд и типа массива.
Начнём с массивов RAID 0 и RAID 1:

Результаты IOMeter RAID 0 & RAID 1
  RAID0-1HDD RAID0-2HDD RAID0-3HDD RAID0-4HDD RAID 1
 Fileserver     
 1 70,88 75,74 78,02 78,97 80,09
 4 84,54 125,38 162,21 188,22 129,84
 16 84,49 124,84 161,63 187,66 129,54
 64 110,14 165,14 207,41 233,04 167,57
 256 126,27 185,64 233,69 263,53 193,77
 Workstation     
 1 81,82 87,32 90,14 91,39 93,29
 4 92,65 137,40 172,89 197,44 142,19
 16 92,85 137,71 172,78 198,40 141,21
 64 123,80 179,97 218,66 241,82 177,86
 256 141,16 203,11 248,29 274,85 204,82
 Database     
 1 73,89 83,34 87,96 89,58 83,16
 4 86,91 133,84 175,70 207,76 122,13
 16 86,74 134,66 176,32 207,84 122,31
 64 108,90 167,88 215,88 246,26 149,17
 256 127,42 190,42 244,30 278,88 175,94
 RandomRead     
 1 71,25 69,99 70,02 70,16 81,19
 4 87,05 129,43 161,05 182,64 153,55
 16 87,18 129,15 161,59 182,92 153,37
 64 121,14 181,03 220,73 243,04 221,30
 256 139,46 207,67 253,04 278,62 255,64
 SequentialRead     
 1 75,22 77,66 78,48 78,25 73,43
 4 76,91 79,15 79,63 79,40 78,10
 16 76,93 79,15 79,66 79,42 77,05
 64 76,89 79,14 79,65 79,42 76,05
 256 76,34 78,80 79,35 79,13 75,53
 RandomWrite     
 1 106,04 172,61 244,73 256,77 96,18
 4 105,96 173,08 244,88 312,48 96,11
 16 105,70 172,45 244,22 306,34 96,62
 64 115,95 177,73 252,81 271,17 106,14
 256 153,95 235,42 316,52 267,91 147,00
 SequentialWrite     
 1 48,08 58,41 64,03 67,34 38,43
 4 51,37 59,64 65,74 69,01 38,90
 16 51,49 59,65 65,73 69,05 38,89
 64 51,67 59,65 65,74 69,12 38,89
 256 51,12 59,34 65,41 68,79 38,69

Что же мы видим? Во-первых, скорость контроллера растёт при увеличении количества дисков, как, впрочем, и полагается.
Во-вторых, RAID 1-массив в некоторых случаях (при явном преобладании запросов на чтение) быстрее, чем RAID 0 на двух винчестерах.
В-третьих, скорость контроллера при обработке Sequential-запросов невысока. Максимум, что удалось "выжать" из контроллера - примерно 20МБ/сек при чтении и 17МБ/сек при записи.

Посмотрим, что контроллер покажет в других типах массивов:

Результаты IOMeter RAID 3 & RAID 5 & RAID 01
  RAID3-3HDD RAID3-4HDD RAID5-3HDD RAID5-4HDD RAID01
 Fileserver     
 1 68,91 69,84 70,07 70,03 85,05
 4 108,45 129,33 128,44 140,38 189,39
 16 108,44 129,55 128,00 140,63 189,76
 64 132,56 153,31 151,62 162,76 225,96
 256 146,03 168,73 165,37 179,63 254,34
 Workstation     
 1 78,71 79,30 80,03 79,54 97,23
 4 118,67 138,14 137,55 147,76 199,86
 16 118,24 137,81 137,35 148,18 199,60
 64 143,88 162,17 160,79 170,10 233,55
 256 158,79 179,73 177,43 189,96 262,46
 Database     
 1 70,78 71,64 72,31 72,06 93,07
 4 104,74 120,98 118,39 128,00 188,57
 16 104,96 120,79 118,68 127,66 189,05
 64 124,79 139,95 136,37 146,42 214,14
 256 136,59 148,40 143,95 154,39 244,07
 RandomRead     
 1 69,75 69,79 70,02 69,82 79,56
 4 129,22 161,62 161,13 181,94 212,60
 16 129,39 161,08 161,52 182,02 213,18
 64 181,87 221,06 220,20 241,40 278,45
 256 207,71 252,80 252,89 277,20 318,62
 SequentialRead     
 1 75,49 77,35 77,30 77,00 78,33
 4 77,26 78,42 78,42 78,03 79,51
 16 77,26 78,43 78,42 78,03 79,51
 64 77,24 78,42 78,41 78,04 79,51
 256 76,91 78,11 78,11 77,76 79,19
 RandomWrite     
 1 66,30 65,97 68,00 65,12 160,29
 4 66,14 65,59 67,80 64,97 161,43
 16 65,99 65,75 67,77 64,89 162,06
 64 88,08 86,10 89,17 85,87 167,81
 256 104,17 98,94 106,97 100,89 221,39
 SequentialWrite     
 1 35,33 38,46 35,33 38,45 45,56
 4 35,68 38,82 35,67 38,80 46,39
 16 35,68 38,84 35,68 38,82 46,39
 64 35,68 38,83 35,67 38,80 46,40
 256 35,18 38,02 35,17 38,01 46,11

В RAID5 контроллер быстрее, чем в RAID3, но ещё быстрее он работает в RAID 01. :)
Сравним контроллер UltraTRAK100 TX4 с двумя его собратьями производства Promise - контроллером FastTRAK100 TX4 и SuperTRAK100 SX6000.

Начнём мы сравнение с RAID 0:


Контроллер FastTRAK100 TX4 немного обогнал оба контроллера с бортовым процессором, а контроллер SX6000 за счёт более быстрого процессора лучше масштабируется.


При увеличении глубины очереди команд картина резко меняется. При работе с одиночным винчестером контроллер FastTRAK100 TX4 явно быстрее, но зато он не увеличивает скорость при увеличении количества винчестеров! По всей видимости, драйвер FastTRAK100 TX4 не может или не умеет сортировать запросы (бережёт процессорное время?).
Контроллер UltraTRAK100 TX4 плавно отстаёт от SX6000 сообразно соотношению тактовых частот их i960 процессоров.


Увеличение глубины очереди команд до 256 ничего не меняет в соотношении сил между контроллерами.


Забавно, но при глубине очереди в один исходящий запрос UltraTRAK100 TX4 оказался быстрее, чем SuperTRAK SX6000!


Но при увеличении нагрузки, SX6000 вновь вырывается вперёд.




И в этом паттерне при queue=1 контроллер UltraTRAK100 TX4 оказался чуть быстрее SX6000! Правда, SX6000 догоняет (и обгоняет) его при увеличении количества винчестеров в массиве.


До двухвинчестерной конфигурации UltraTRAK100 TX4 ещё пытается конкурировать с SX6000, но затем (на массивах из трёх и четырёх винчестеров) уступает ему.


А здесь отставание UltraTRAK от SuperTRAK начинается уже на массиве из двух винчестеров.


А в этом паттерне результаты UltraTRAK100 TX4 почти так же хороши, как у FastTRAK100 TX4. Почему "почти"? Да потому что при четырёхвинчестерной конфигурации скорость UltraTRAK100 TX4 резко падает. :(
Мы уже ранее могли наблюдать такие внезапные провалы в производительности у SX6000, но они случались на 6-ти винчестерной конфигурации. Если предположить, что причина этих провалов в недостаточной скорости или нестабильности работы фирмваре контроллера, то вполне может быть, что у UltraTRAK100 TX4 из-за его менее мощного i960-процессора граница нестабильной работы отодвинулась на планку в 4 винчестера.


Как бы то ни было, при 16-ти исходящих запросах проблема исчезает.


И вновь проявляется при увеличении глубины очереди запросов до 256-ти...


При случайном чтении контроллеры распределились очень любопытно (но предсказуемо):

  1. контроллер, который не думает, а сразу выполняет;
  2. контроллер, который думает, но быстро;
  3. контроллер, который думает, но медленно.



При увеличении глубины очереди запросов картина резко меняется. Контроллер FastTRAK100 TX4, который был весьма неплох при queue=1, резко сдал, и, что самое интересное, его скорость при увеличении количества дисков в массиве не растёт, а падает!
Контроллеры же с бортовым процессором показывают рост производительности, но посмотрите, насколько UltraTRAK100 отстаёт от SuperTRAK100!


Как ни странно, но при дальнейшем увеличении нагрузки, отставание UltraTRAK100 от SuperTRAK100 сокращается.

Паттерны SequentialWrite и SequentialRead представлены графиками только при одном значении нагрузки, так как характер графиков от увеличения глубины очереди команд не изменяется.


Как видим, подавляющее преимущество показывает контроллер FastTRAK100 TX4, а RAID-контроллеры с бортовым процессором безнадёжно отстают от него.


При последовательном чтении контроллеры ведут себя ещё загадочнее. Лидером вновь становится FastTRAK100 TX4 (и здесь подвоха нет), но SX6000 отстаёт от него не намного! И это при том, что при последовательной записи SX6000 выглядел довольно бледно...
Судя по всему, фирмваре контроллера при чтении таки сумело отличить последовательные запросы от cлучайных и не стало их кешировать.
Но ещё более любопытно повёл себя UltraTRAK100 - он как будто упёрся в какое-то ограничение архитектуры (медленный кэш или низкая скорость процессора). Как и в тесте Winbench потолок скорости контроллера UltraTRAK100 TX4 составил ~20МБ/сек.

С RAID 0 разобрались, RAID 3 и RAID 5 рассматривать не будем (очевидно, что UltraTRAK100 медленнее, чем SuperTRAK100 SX6000), остаётся сравнить скорость контроллеров в RAID 01:

Сравнение контроллеров в RAID01
  FastTRAK100 TX4/33 FastTRAK100 TX4/66 SuperTRAK100 SX6000 UltraTRAK100 TX4
 Fileserver    
 1 90,45 90,95 83,95 85,05
 4 91,14 92,27 183,37 189,39
 16 105,25 107,53 218,08 189,76
 64 122,70 126,66 254,15 225,96
 256 136,33 143,43 313,92 254,34
 Workstation    
 1 103,03 104,28 90,60 97,23
 4 103,45 105,31 188,16 199,86
 16 117,54 120,00 223,99 199,60
 64 138,22 141,32 254,95 233,55
 256 153,42 159,53 317,67 262,46
 Database    
 1 92,65 93,74 85,61 93,07
 4 93,55 95,32 172,36 188,57
 16 111,97 112,84 198,44 189,05
 64 131,21 134,01 236,30 214,14
 256 147,36 151,78 294,50 244,07
 RandomWrite    
 1 163,09 165,12 126,39 160,29
 4 164,61 165,32 126,29 161,43
 16 165,91 166,43 126,38 162,06
 64 179,43 181,60 165,33 167,81
 256 222,44 230,73 204,42 221,39
 SequentialWrite    
 1 99,52 159,32 47,15 45,56
 4 100,29 159,93 47,20 46,39
 16 100,22 159,69 47,33 46,39
 64 100,22 159,38 47,35 46,40
 256 99,72 156,58 47,32 46,11
 RandomRead    
 1 91,41 91,96 85,71 79,56
 4 92,43 92,64 226,64 212,60
 16 103,62 104,70 312,96 213,18
 64 120,70 121,75 361,45 278,45
 256 133,86 137,24 435,93 318,62
 SequentialRead    
 1 221,80 224,39 199,26 78,33
 4 220,10 225,26 225,79 79,51
 16 221,93 225,38 226,39 79,51
 64 222,51 225,48 226,42 79,51
 256 219,86 222,96 225,50 79,19

В целом, расстановка сил не изменилась. Контроллер FastTRAK100 TX4, как правило, отрабатывает запросы чуть быстрее при малой глубине очереди команд. Очень хорошо контроллер FastTRAK100 TX4 справился и с Sequential-паттернами, причём в паттерне SequentialWrite мы можем наблюдать, как растёт скорость работы этого контроллера при его установке в PCI32/66МГц слот.
При небольшой глубине очереди команд очень неплохо выглядит и UltraTRAK100 TX4, он даже немного опережает SuperTRAK100 SX6000. А в паттерне RandomWrite контроллер UltraTRAK100 TX4 вообще выиграл у SuperTRAK100 SX6000 при всех вариантах нагрузки...
Но в остальных паттернах, при большой глубине очереди команд, контроллер SuperTRAK100 SX6000 опережает и FastTRAK100 TX4, и UltraTRAK TX4.

То обстоятельство, что UltraTRAK100 TX4, обладая более медленным RISC-процессором и более медленной кэш-памятью, чем контроллер SuperTRAK100 SX6000, тем не менее сумел опередить его в паттерне RandomWrite, чрезвычайно меня заинтересовало. Чтобы сравнить поведение контроллеров в RAID01 и RAID5 были проведены дополнительные тесты с 8КБ блоками и изменением соотношения операций чтения и записи.
На приведённых ниже графиках мы можем наблюдать зависимость скорости контроллеров в RAID 01 и RAID 5 от доли операций записи. По оси Y, таким образом, откладывется значение Total I/O (количество отработанных контроллером запросов), а по оси X - доля операций записи. В точке X=0 мы получаем паттерн RandomRead (количество операций записи=0, а количество операций чтения=100%), а в точке X=100 - паттерн RandomWrite.
Сравним между собой контроллеры при трёх вариантах нагрузки - 1,16 и 256 исходящих запросов:


Весьма показательная картина. Первое, что бросается в глаза - UltraTRAK100 TX4 при работе с RAID01-массивом оказался быстрее SuperTRAK100 SX6000 при доле операций записи, превышающей 20 процентов!
При работе с RAID5-массивом контроллер UltraTRAK100 TX4 чуть медленнее SuperTRAK100 SX6000 (оно и понятно, учитывая разницу в скоростях их XOR-процесстров), но при достижении 80%-ной доли операций записи от общего числа UltraTRAK100 TX4 выходит вперёд!
По всей видимости, фирмваре контроллера UltraTRAK100 имеет очень хорошие алгоритмы работы с отложенной записью, что и позволяет ему обойти своего более аппаратно совершенного собрата.


При увеличении глубины очереди команд контроллер SuperTRAK100 сумел "прибавить" чуть больше, чем UltraTRAK TX4. Теперь, контроллер SuperTRAK100 TX4 опережает UltraTRAK100 TX4 и в RAID01 и в RAID5 до той поры, пока доля операций записи не вырастает до 40 процентов. Далее контроллеры ведут себя ещё интереснее - если в RAID01 контроллер UltraTRAK100 TX4 выходит вперед, то в RAID5 результаты контроллеров становятся АБСОЛЮТНО одинаковыми!


Контроллеры явно прибавили в скорости, но в большей мере увеличением глубины очереди команд сумел воспользоваться SuperTRAK100 SX6000. Теперь он быстрее, чем UltraTRAK100 TX4 и в RAID01 и в RAID5 во всех режимах (исключение составил RandomWrite на RAID01, где UltraTRAK100 TX4 оказался чуть быстрее).

По результатам тестирования контроллера UltraTRAK100 TX4 в IOMeter можно сказать следущее:

  1. Контроллер оптимизирован для работы при малой нагрузке.
  2. Контроллер имеет хорошую оптимизацию для работы с запросами на запись.
  3. Контроллер значительно быстрее работает в RAID01, чем в RAID5 (впрочем, это можно сказать про все известные мне RAID-контроллеры)
  4. Контроллер показывает невысокие результаты при работе с последовательным запросами на чтение/запись.

Надёжность


Для проверки способности контроллера восстанавливать работоспособность массива при отказе одиночного диска были смоделированы аварийные ситуации в массивах уровней 1, 01, 3, 5 (для массивов уровней 01, 3, 5 количество дисков было выбрано равным четырём).
Запускался тест IOMeter, после нескольких минут работы теста одному из дисков отключалось питание, и он вместе с mobile-rack-ом извлекался из корзины. Через некоторое время, когда массив дисков начинал устойчиво работать в аварийном режиме, работа теста IOMeter прекращалась, диск устанавливался на своё место, и на него подавалось питание.
Замерялось время, прошедшее с этого момента до полного восстановления функциональности массива.
Время восстановления целостности массивов составило:


RAID1 – 15 минут
RAID01 – 18 минут
RAID3 – 48 минут
RAID5 – 53 минуты


Время восстановления массива под нагрузкой не измерялось.

Выводы


Контроллер Promise UltraTRAK100 TX4 представляет собой весьма интересное устройство, как с точки зрения использованных в нём технологий, так и с точки зрения возможных сфер его применения.
Так как контроллер работает с IDE-дисками, то в случае использования современных 120ГБ винчестеров мы можем получить внешний отказоустойчивый дисковый массив с беспрецедентно низкой стоимостью хранения 1ГБ данных (массив такой же ёмкости, созданный из SCSI-винчестеров обойдётся нам, как минимум, вчетверо дороже).
Да, этот контроллер не показал высочайшую скорость, но, насколько я понимаю, Promise и не собиралась делать из него рекордсмена. Судя по всему, основной упор Promise сделала на простоту подключения, настройки и использования контроллера, то есть компания постаралась сделать RAID-технологии максимально близкими к простым пользователям. Действительно, с подключением и настройкой UltraTRAK100 TX4 может справиться любой "необученный академик". :)

Попробуем перечислить все найденные плюсы и минусы контроллера.
Плюсы:

"дружелюбный" внешний вид и надёжное внутреннее устройство
простота в подключении (не нужны драйвера, стандартный Ultra2 SCSI-разъём)
простота настройки и использования
поддержка HotSwap и HotSpare.
использование недорогих IDE-винчестеров
лёгкость масштабирования дисковой подсистемы на UltraTRAK100 TX4 (каждый контроллер может быть "кирпичиком" для построения большой системы).

Минусы:

"слабость" внутренней электроники
невысокая скорость контроллера при последовательной записи
несколько завышенная цена контроллера

Хотел было я назвать недостатком контроллера форму его верхней крышки - она выпуклая и это не позволяет "водрузить" один контроллер на другой, но потом я вспомнил, что контроллер имеет скорее "настольную" ориентацию, чем "напольную", и не стал его за это ругать... Действительно, такую красоту - и на пол? Ни за что! :)

Итого: Контроллер UltraTRAK100 TX4 представляет собой идеальное решение для создания файлового архива в небольших учреждениях или корпоративного бекапа.

Благодарим компанию ТелеСервисМС за предоставленный на тестирование контроллер Promise UltraTRAK100 TX4.