Контроллеры Ultra100 и FastTrak100 компании Promise
Казалось, что совсем недавно появившийся стандарт ATA66 должен был задержаться на рынке на некоторое время, однако бурное развитие технологий жестких дисков и IDE RAID-систем привело к необходимости еще более повысить скорость передачи данных. Компания Promise, первая представившая Ultra ATA/66 IDE и IDE RAID контроллеры, обновила свои продукты до нового стандарта Ultra ATA/100.
Promise Ultra100
Характеристики:
- Поддерживаемые устройства: Ultra ATA/100, Ultra ATA/33, EIDE, Fast ATA-2, ATAPI
- Максимальное количество устройств: 4
- Шина: PCI
- Максимальная скорость передачи: пиковая 100 Mбайт/с с дисками стандарта Ultra ATA/100
- Требования IRQ: одно прерывание на устройство, поддержка IRQ sharing
- Поддерживаемые режимы: Ultra DMA 5/4/3/2/1, PIO 4/3/2, DMA 2/1/0
- Возможности BIOS устройства: автоматическое определение подключенных дисков, автоматический выбор оптимального (в том числе и UDMA) режима для каждого диска, поддержка устройств объемом до 128 Гбайт, автоматическое определение 80-проводного IDE кабеля для выбора режима UDMA66/100
- Особенности устройства: поддержка режима bus mastering, поддержка CRC для Ultra ATA устройств, два канала IDE допускают раздельную установку режимов для Ultra ATA и/или EIDE устройств
- Поддержка ОС: DOS 5.x и выше, Windows 3.x, Windows 95/98, Windows NT 3.5/4.x, Windows2000
- Кабель в комплекте: 80-wire/40-pin IDE кабель
- Рекомендованная цена $49
Поскольку на плате нет большого количества переключателей и разъемов, то хранить под рукой описание многие наверняка не будут. Специально для них :) Promise нанесла маркировку разъемов «IDE1»/«IDE2» на обратную сторону карты. Теперь можно не переворачивать ПК для нахождения первого порта. Вот только маркировка первых контактов разъемов получилась не очень хорошо — при плотной установке PCI-карт ее не видно. Впрочем, при использовании прилагающегося IDE шлейфа, это не страшно. Дело в том, что в отличие от обычных китайских, он снабжен ключевым выступом, не допускающим неправильную установку.
В комплект поставки входят: контроллер, один UDMA66/100 шлейф (80pin), дискета с драйверами, описание.
В момент загрузки BIOS контроллера выводит на экран конфигурацию подключенных дисков:
Диски нумеруются последовательно, начиная с D0 (Primary Master) до
D3 (Secondary Slave). Под Ultra DMA 5 подразумевается Ultra ATA 100,
под Ultra DMA 4/3 соответственно Ultra ATA 66/33. Возможны также варианты
работы в PIO- и просто (не Ultra) DMA-режимах. При подключении UDMA
66/100 диска обычным 40 проводным шлейфом, контроллер выдаст предупреждение:
[WARNING] BECAUSE OF 40-CONDUCTOR CABLE(S) USED.
WOULD BE DOWN TO ULTRA33 MODE.
PLEASE USE 80-CONDUCTOR CABLE(S) IF ULTRA66 MODE OR ABOVE WANTED!
К сожалению, такие параметры, как занимаемая область памяти и прерывание остаются загадкой до загрузки операционной системы — устройство (в отличие от многих SCSI-контроллеров) не выводит их на экран.
BIOS контроллера Ultra100 занимает 8 Kбайт в области 0xC000-0xDFFF, так что необходимо заранее проверить, есть ли там место. Например, в сильно загруженных ПК его может не быть. У меня так и получилось при одновременной установке Ultra100 и FastTrak100. Так как на материнской плате был еще и SCSI-контроллер со своим BIOSом, то BIOS FastTrak100 вообще не появился при загрузке. Ввиду того, что порядок назначения ресурсов материнской платой зависит от физического расположения карт в слотах, можно было бы отказаться от неиспользуемого сейчас SCSI BIOS или вообще запретить SCSI контроллер, но проще было просто тестировать по одному контроллеру за раз :)
Поскольку
работа через INT13 сейчас никого не устраивает по причине низкой скорости,
то необходима установка драйверов (хотя даже под Windows 9x диски
в принципе и так видны).
В комплект входят драйвера для всего семейства Microsoft Windows — 95/98, NT 3.5/4.0, 2000. Для DOS и Windows 3.x драйвера не нужны.
Диски, подключенные к Ultra100, могут отключаться в случае бездействия, для этого в комплект драйверов для Windows 9x входит драйвер power management. Есть также драйвер S.M.A.R.T. При этом для просмотра информации можно использовать утилиты типа EZ-S.M.A.R.T. от Micro House Solutions.
Была проведена проверка, насколько хорошо поддерживаются другие операционные системы — Windows NT и Windows 2000. Для последней установка устройства прошла как положено — при загрузке система нашла новое устройство и попросила установить дискету с драйверами, что и было сделано. Отметим, что система работала стабильно, интенсивные тесты проводились несколько часов подряд. Контроллер, как и в Windows 98 был помещен в раздел SCSI адаптеров. А вот с Windows NT были проблемы — при установке Ultra100 система вообще не загружалась, причем даже не сообщала синим экраном по какому поводу. Сначала я решил попробовать поставить драйвера до установки устройства, но это не помогло. Тогда я отключил диски от контроллера, но и это не сработало. На самом деле, в конце концов, оказалось (AMI BIOS не очень удачно выводит таблицу PCI устройств), что при установленном контроллере SCSI-адаптер на плате выбирает тоже прерывание, что и видеокарта, а это и вызывает проблемы при загрузке. После установки Ultra100 контроллера в другой PCI-слот, ситуация исправилась: Windows NT успешно загрузилась и проработала под большой нагрузкой 5 часов. Отметим, что, хотя для контроллера Ultra100 отмечена возможность IRQ sharing (т. е. разделения одной линии прерывания с другими PCI картами), для большинства других устройств такой информации, к сожалению нет. Так что установка 4-5 PCI карт в современные материнские платы, даже с 6 слотами, является нелегкой задачей (особенно учитывая встроенные USB и ACPI или даже VGA, сетевые и SCSI контроллеры).
Для выявления особенностей Ultra100 мы попробовали выключить режим Ultra100 и сравнить результаты тестов. Также использовалась и предлагаемая Promise утилита кеширования для Windows 98 PTCache. Для управления режимом Ultra100/66/33 использовалась утилита IBMATASW. Она смогла увидеть (и узнать в них IBM :) диски на контроллере Ultra100 под управлением DOS, что, несомненно, говорит о хорошей совместимости Promise Ultra100.
Для тестирования применялся компьютер следующей конфигурации:
- Материнская плата SuperMicro P6DBU
- Процессор Intel Pentium III 600E
- 64 Мбайта SDRAM
- Windows 98SE
К контроллеру подключался тестовый диск IBM DTLA 307015 15GB 7200 RPM ATA/100, содержащий один раздел FAT32. Во всех тестах применялись драйвера из комплекта поставки. Операционная система и тестовые утилиты были установлены на другом диске, подключенном к встроенному контроллеру PIIX4e. Тесты проводились 10 раз, результаты усреднялись. Вторые цифры в клетках — процент загрузки процессора при выполнении теста.
| Ultra100 | Ultra66 | Ultra33 | PTCache | |
|
WinBench 99 Общие
|
||||
| Business Disk WinMark 99 (TB/S) | 5523, 26.70 | 5545 | 5438 | 6618, 38.69 |
| High-End Disk WinMark 99 (TB/S) | 20518, 19.22 | 20160 | 19590 | 19920, 21.32 |
| Disk Transfer Rate:Beginning (TB/S) | 36600, 3.49 | 36600 | 30200 | 36600, 3.59 |
| Disk Transfer Rate:End (TB/S) | 19720 | 19800 | 19800 | 19733 |
| Disk Access Time (Milliseconds) | 12.54, 0.19 | 12.5 | 12.5 | 12.5, 0.19 |
| Disk CPU Utilization (Percent Used)(transfer rate 20000 bytes/sec) | 2.01 | 1.80 | 1.78 | 2.04 |
|
High-End подробно
|
||||
| Disk Playback/HE:AVS/Express 3.4 (TB/S) | 13645 | 13280 | 11730 | 16590 |
| Disk Playback/HE:FrontPage 98 (TB/S) | 99600 | 100200 | 99080 | 98830 |
| Disk Playback/HE:MicroStation SE (TB/S) | 20064 | 19820 | 19240 | 25540 |
| Disk Playback/HE:Photoshop 4.0 (TB/S) | 11573 | 11570 | 11340 | 11650 |
| Disk Playback/HE:Premiere 4.2 (TB/S) | 20736 | 20040 | 21580 | 14590 |
| Disk Playback/HE:Sound Forge 4.0 (TB/S) | 30827 | 28940 | 29460 | 25160 |
| Disk Playback/HE:Visual C++ 5.0 (TB/S) | 24755 | 24730 | 24340 | 22860 |
Как и предполагалось, в случае использования одного диска все «игры» вокруг скоростей 100/66/33 оказались несущественными. Говорить о 50% преимущества Ultra ATA/100 перед Ultra ATA/66 вообще бессмысленно. Единственный случай, когда наблюдается значительное падение скорости: в режиме Ultra33 для линейного чтения, что вполне естественно — в начале диска скорость чтения IBM DTLA с поверхности заведомо больше 33 Mбайт/c. Отметим также и сомнительный смысл в использовании PTCache — скорость заметно выросла только в тесте Business Disk WinMark 99, но при работе с большими файлами (Disk Playback/HE:Premiere 4.2) также заметно упала.
Для одновременного теста нескольких дисков мы использовали Adaptec SCSI Bench. Тест немного староват — шкала рассчитана на максимальную скорость в 40 Mбайт/с, что соответствует UltraWideSCSI, однако он считает и большие скорости. Тест позволяет в реальном времени менять количество дисков в тесте и режим — последовательно чтение (в начала диска), чтение одного и того же сектора (для большинства современных дисков сводится к чтению из буфера/кеша диска) или чтение случайных секторов.
Сначала режим чтения с поверхности.
Один диск:
Действительно, в начале диска скорость чтения у IBM DTLA около 36MB/s.
Два диска на разных каналах:
Как видно, падения скорости при добавлении в тест второго диска совсем не происходит.
Диски на одном канале:
Диски также практически не оказывают влияния друг на друга. Можно отметить лишь небольшое падение скорости.
А вот если бы диски были и на одном канале и в режиме Ultra66:
Видно, что поскольку суммарная скорость по IDE шине не может превышать 66 Mбайт/с, здесь для двух дисков наблюдается значительное снижение производительности.
В режиме «Same Sector I/O» можно найти еще одно узкое место:
Один диск:
Скорость чтения из буфера приближается к 100 Mбайт/с.
Два диска на одном канале:
Здесь суммарная скорость ограничивается шиной IDE до 100 Mбайт/с.
Если ограничить диски режимом Ultra66, то картина аналогичная:
Суммарная скорость порядка 66 Mбайт/с.
И даже если поставить два диска на разные IDE каналы (режим Ultra100):
Несмотря на то, что диски находятся на разных каналах, суммарная скорость заметно ограничивается. Это уже влияние шины PCI 32bit/33 MГц. чья пропускная способность «всего» 133 Mбайт/с. Кстати, если использовать нестандартные частоты FSB (например, 75 или 83 МГц), то с увеличением частоты PCI повысится и ее пропускная способность.
Таким образом, можно сказать, что, если сегодня покупать новый IDE контроллер, то лучше ориентироваться на Ultra100. Однако замена существующего контроллера Ultra66 на новый, с поддержкой Ultra100, не даст существенного прироста скорости. Что касается использования старых контроллеров с максимальной скоростью 33MB/s, то даже они вполне работоспособны с большинством жестких дисков предыдущего поколения, когда HDD является единственным устройством на IDE канале. И только совсем новые модели IBM и Seagate могут работать с ними «не в полную силу». Если же у вас два или более диска и/или хочется еще быстрее :), то лучше использовать RAID контроллер, например Promise FastTrak100, о котором мы расскажем далее.
Promise FastTrak100
Характеристики:
- Поддерживаемые устройства: Ultra ATA/100, Ultra ATA/33, EIDE
- Максимально количество устройств: 4
- Шина: PCI
- Максимальная скорость передачи: пиковая 133 Mбайт/с PCI 2.1 32bit/33 MГц
- Требования IRQ: одно прерывание на устройство, поддержка IRQ sharing
- Требования UMA: 32KB в области 0xC000-0xEFFF
- Поддерживаемые режимы: Ultra DMA 5/4/3/2/1, PIO 4/3/2, DMA 2/1/0
- Возможности BIOS контроллера: автоматическое определение и конфигурирование дисков, возможность загрузки с любого массива
- Уровни RAID: RAID 0 (striping, 1-4 drives), RAID 1 (mirroring, 2 drives), RAID 1 + spare (3 drives), RAID 0+1 (4 drives only), JBOD (spanning, 1-4 drives)
- Поддержка ОС: DOS/Windows 3.x, Windows 95/98, Windows NT 3.5/4.x, Windows2000
- Утилиты: FastBuild для автоматической настройки RAID; FastCheck для мониторинга состояния массивов и дисков
- Кабель в комплекте: два 80-wire/40-pin IDE
- Рекомендованная цена: $124
Комплектность аналогична Ultra100: контроллер, два UDMA66/100 шлейфа (80 проводов), 2 дискеты — с драйверами и утилитами, описание. На самом деле, если бы не было маркировки «Ultra100»/«FastTrak100», даже платы контроллеров сложно было бы отличить. Похоже, повторяется история с Ultra66/FastTrak66, которые отличались лишь одним резистором и BIOS.
Выше я описал проблему, заключающуюся в том, что одновременно контроллеры Ultra100, FastTrak100 и SCSI на материнской плате не заработали (не было FastTrak100 BIOS). Как оказалось, и один FastTrak100 тоже не мог найти место для своего BIOS, если есть SCSI. Так что перед установкой необходимо проверить: найдется ли в верхней памяти свободный сегмент, размером 32 Кбайта. В моем случае при наличии SCSI его не было: VGA 0xC000-0xCFFF, SCSI 0xD000-0xDFFF, 0xE000-0xFFFF BIOS.
Хорошо написанное руководство почти не содержит лишней информации. Много места уделено принципам работы контроллера, описанию возможных проблем и FAQ. Поддержка драйверами аналогична — для DOS/Windows 3.x они не требуются, а для Windows 9x/NT/2000 их нужно установить с прилагаемой дискеты. Поскольку устройство новое, пока есть некоторые ограничения на установке контроллеров: под Windows NT можно установить максимум пару, а вот Windows 2000 допускает использование только одного FastTrak100. Это обещают исправить в следующих версиях BIOS/драйверов. Устройство также позволяет проверять S.M.A.R.T. статус дисков — для этого используется FastCheck RAID Utility. Все функциональные возможности (уровни RAID, автоматическое восстановление и т. п.) полностью аналогичны описанному ранее Promise FastTrak66. Комплект утилит у этих контроллеров также одинаковый.
Несмотря на декларирование данной возможности в руководстве, не удалось установить массив из одного диска под Windows NT/Windows 2000. При проведении теста WinBench 99 Disk Transfer Rate система стабильно вылетала в синий экран. Не помогли перестановка в другие слоты, замена процессора, памяти, настройка системы, драйверов и т. п. Под Windows 98 созданный «массив» тем не менее прекрасно работал. Так что, возможно, что драйвера для Windows NT/2000 не совсем корректно написаны. Конечно, случай с одним диском в массиве скорее исключение, но, тем не менее, этот режим не работает, хотя и должен.
Поскольку сравнивать этот контроллер пока не с чем, да и отличия от FastTrak66 не сильно велики, посмотрим только, как отличаются по скоростям различные конфигурации RAID (условия тестирования совпадают с вышеописанными для Ultra100):
| Stripe 1 диск | Stripe 2 диска | Stripe 3 диска | Stripe 4 диска | Mirror+Stripe 4 диска | |
|
WinBench 99 Общие
|
|||||
| Business Disk WinMark 99 (TB/S) | 5278, 26.13 | 6586, 31.73 | 6943, 33.22 | 7255, 34.82 | 6436, 31.46 |
| High-End Disk WinMark 99 (TB/S) | 18600, 19.33 | 23500, 25.91 | 24230, 27.99 | 25350, 29.65 | 21380, 23.63 |
| Disk Transfer Rate:Beginning (TB/S) (*) | 37000, 3.7 | 74000, 14.2 | 76000, 17.57 | 90000, 21.4 | 74000, 13.6 |
| Disk Transfer Rate:End (TB/S) (*) | 18200 | 36000 | 55000 | 75000 | 36000 |
| Disk Access Time (Milliseconds) | 12.73, 0.26 | 12.93, 0.06 | 13.33, 0.17 | 12.9, 0.20 | 10.8, 0.63 |
| Disk CPU Utilization (Percent Used)(transfer rate 20000 bytes/sec) | 11 | 16.37 | 16.07 | 16.63 | 17.1 |
| Графики чтения | Pr_S1.GIF | Pr_S2.GIF | Pr_S3.GIF | Pr_S4.GIF | Pr_MS4.GIF |
|
High-End подробно
|
|||||
| Disk Playback/HE:AVS/Express 3.4 (TB/S) | 13260 | 14710 | 15130 | 15520 | 15420 |
| Disk Playback/HE:FrontPage 98 (TB/S) | 98150 | 100780 | 98780 | 100710 | 100800 |
| Disk Playback/HE:MicroStation SE (TB/S) | 18980 | 21650 | 20870 | 22630 | 20680 |
| Disk Playback/HE:Photoshop 4.0 (TB/S) | 11370 | 15520 | 17660 | 19730 | 13400 |
| Disk Playback/HE:Premiere 4.2 (TB/S) | 16660 | 21400 | 21980 | 21630 | 18360 |
| Disk Playback/HE:Sound Forge 4.0 (TB/S) | 22300 | 36510 | 39300 | 41300 | 27500 |
| Disk Playback/HE:Visual C++ 5.0 (TB/S) | 22440 | 28850 | 27010 | 28250 | 25720 |
(*) поскольку графики чтения имеют ярко выраженную форму «пилы» (кстати, меняющую фазу если тестировать несколько раз см. Pr_S1m.gif), то мы подправили эти цифры для большего соответствия реальным результатам, поскольку программа выбирала на наш взгляд не совсем правильные.
Представим информацию таблицы в виде % прироста относительно базового однодискового варианта:
| Stripe 2 диска | Stripe 3 диска | Stripe 4 диска | Mirror+Stripe 4 диска | |
|
WinBench 99 Общие
|
||||
| Business Disk WinMark 99 (TB/S) | 24.78 | 31.55 | 37.46 | 21.94 |
| High-End Disk WinMark 99 (TB/S) | 26.34 | 30.27 | 36.29 | 14.95 |
| Disk Transfer Rate:Beginning (TB/S) | 100.00 | 105.41 | 143.24 | 100.00 |
| Disk Transfer Rate:End (TB/S) | 97.80 | 202.20 | 312.09 | 97.80 |
| Disk CPU Utilization (Percent Used) | 48.82 | 46.09 | 51.18 | 55.45 |
|
High-End подробно
|
||||
| Disk Playback/HE:AVS/Express 3.4 (TB/S) | 10.94 | 14.10 | 17.04 | 16.29 |
| Disk Playback/HE:FrontPage 98 (TB/S) | 2.68 | 0.64 | 2.61 | 2.70 |
| Disk Playback/HE:MicroStation SE (TB/S) | 14.07 | 9.96 | 19.23 | 8.96 |
| Disk Playback/HE:Photoshop 4.0 (TB/S) | 36.50 | 55.32 | 73.53 | 17.85 |
| Disk Playback/HE:Premiere 4.2 (TB/S) | 28.45 | 31.93 | 29.83 | 10.20 |
| Disk Playback/HE:Sound Forge 4.0 (TB/S) | 63.72 | 76.23 | 85.20 | 23.32 |
| Disk Playback/HE:Visual C++ 5.0 (TB/S) | 28.57 | 20.37 | 25.89 | 14.62 |
И в виде графиков:

Судя по этим цифрам, наиболее оптимальным вариантом будет использование двух дисков в Stripe. Скорость линейного чтения 74-35 Mбайт/с достаточно велика и в среднем достигает половины пропускной способности стандартной PCI шины; дальнейший рост уже не так заметен. Ну а если нужен максимум, что ж — покупайте корпус побольше (IDE RAID, в отличие от SCSI, сложно вынести в отдельную коробку) и 4 самых быстрых сегодня диска серии IBM DTLA, тогда можно будет сказать, что это самое лучшее для обычного ПК без SCSI и PCI64.
В качестве дополнительного параметра настройки можно использовать выбор размера блока при работе дисков в режиме Stripe. Блок может быть размером от 0.5 Kбайт до 1 Mбайт (т. е. 0.5, 1, 2, 4, ...1024 Kбайт). Стандартным вариантом считается 64 Kбайт. Для примера мы провели тесты при размере блока 4 Kбайт и 512 Kбайт на Stripe с двумя дисками. Заметим, что результаты сильно зависят и от файловой системы. Точнее от размера ее кластера.
| 64 Kбайт | 4 Kбайт | 512 Kбайт | |
|
WinBench 99 Общие
|
|||
| Business Disk WinMark 99 (TB/S) | 6586, 31.73 | 5942, 29.84 | 6544, 32.2 |
| High-End Disk WinMark 99 (TB/S) | 23500, 25.91 | 20300, 24.00 | 23060, 25.16 |
|
High-End подробно
|
|||
| Disk Playback/HE:AVS/Express 3.4 (TB/S) | 14710 | 12700 | 15940 |
| Disk Playback/HE:FrontPage 98 (TB/S) | 100780 | 99580 | 99420 |
| Disk Playback/HE:MicroStation SE (TB/S) | 21650 | 21640 | 21160 |
| Disk Playback/HE:Photoshop 4.0 (TB/S) | 15520 | 14580 | 15960 |
| Disk Playback/HE:Premiere 4.2 (TB/S) | 21400 | 15740 | 19720 |
| Disk Playback/HE:Sound Forge 4.0 (TB/S) | 36510 | 26980 | 29820 |
| Disk Playback/HE:Visual C++ 5.0 (TB/S) | 28850 | 25060 | 27440 |
Преобразование таблицы в % изменения от базового варианта c блоком 64 Кбайта поможет понять, как и на что влияет размер блока Stripesetа:
| 4 Kбайт | 512 Kбайт | |
|
WinBench 99 Общие
|
||
| Business Disk WinMark 99 (TB/S) | -9.78 | -0.64 |
| High-End Disk WinMark 99 (TB/S) | -13.62 | -1.87 |
|
High-End подробно
|
||
| Disk Playback/HE:AVS/Express 3.4 (TB/S) | -13.66 | 8.36 |
| Disk Playback/HE:FrontPage 98 (TB/S) | -1.19 | -1.35 |
| Disk Playback/HE:MicroStation SE (TB/S) | -0.05 | -2.26 |
| Disk Playback/HE:Photoshop 4.0 (TB/S) | -6.06 | 2.84 |
| Disk Playback/HE:Premiere 4.2 (TB/S) | -26.45 | -7.85 |
| Disk Playback/HE:Sound Forge 4.0 (TB/S) | -26.10 | -18.32 |
| Disk Playback/HE:Visual C++ 5.0 (TB/S) | -13.14 | -4.89 |
Видно, что, как при уменьшении, так и при увеличении размера блока, в общем наблюдается снижение производительности. Оно, скорее всего, связано с увеличением внутренних накладных расходов контроллера, поскольку для 4 Kбайт блоков приходится делать больше операций, а использование 512 Kбайт блока для большинства данных задач не оправдывается и не дает технологии Stripe развернуться в полую силу. Таким образом, для каждой конкретной конфигурации и задачи вполне можно найти наиболее оптимальный вариант. Однако и стандартный вариант с блоком 64 Кбайта не так уж и плох для многих приложений.
Итак, Promise удалось поддержать славу FastTrak66 и выпустить новый контроллер с поддержкой последних стандартов интерфейса IDE/ATA, не растеряв положительных качеств FastTrak66. Растущая популярность RAID решений на IDE дисках обеспечит устойчивый спрос на такие продукты. Остается только пожелать компании фирме поддерживать не только пользователей операционных систем компании Microsoft.
| Дополнительно |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

