Сравнение популярных контроллеров UltraATA/100
АрхивПлатформаИнтерфейс UltraATA/100 существует уже более года и уже успел завоевать популярность. Пришло время подвести некоторые предварительные итоги его победного шествия и сравнить производительность контроллеров UltraATA/100 от разных производителей.
Интерфейс UltraATA/100 существует уже более года (см., например, «КТ» #354 или архив на http://www.terralab.ru/storage/6926/). За это время появилось большое количество его реализаций как в отдельных чипах контроллеров (например, от Promise и HighPoint Technologies), так и интегрированные в чипсеты для материнских плат (от Intel, VIA Technologies и других). Пришло время подвести некоторые предварительные итоги его победного шествия и сравнить производительность контроллеров UltraATA/100 от разных производителей (пока только для одиночных дисков без привлечения контроллеров IDE RAID).
В нынешнем тестировании приняли участие наиболее популярные (то есть распространенные) на данный момент устройства. Отдельные чипы контроллеров представлены двумя вариантами от Promise — «заслуженной» Ultra100 и новенькой Ultra100 TX2, а также не менее известным чипом HPT370 от HighPoint Technologies. Обе «Ультры» являли собой отдельные PCI-карты от самой Promise (подробности см. http://www.terralab.ru/system/13890/), а контроллер HPT370 располагался на системной плате ABIT BX-133 («Ультры» тоже испытывались на этой плате при отключенном чипе HPT). Интегрированные контроллеры были представлены чипсетами i815EP от Intel (хаб ввода-вывода ICH2 на микросхеме FW82801BA в составе системной платы ASUS TUSL2-C, см. http://www.terralab.ru/system/11586/ и VIA Apollo KT133A (плата Canyon CN-75CLV, южный мост на микросхеме VT82C686B, см. http://www.terralab.ru/system/10091/).1 За компанию были протестированы два «младших» братика — UltraATA/33, интегрированный в знаменитый чипсет i440BX (все та же ABIT BX-133) и новенький USB 2.0 (детали см. на http://www.terralab.ru/system/13374/). Определялась скорость работы контроллеров при работе с одним из самых быстрых и «продвинутых» современных IDE-винчестеров — IBM Deskstar 60GXP IC35L040AVER07. Наконец, в качестве предварительной оценки были включены два чипсета VIA для системной памяти DDR SDRAM — Apollo Pro 266 для Pentium III (см. http://www.terralab.ru/system/8896/) и Apollo KT266 для Athlon (еще в первоначальном варианте исполнения, без буквы «А» на конце, см. http://www.terralab.ru/system/10266/), имеющие один и тот же южный мост — VT8233 (см. фото). Более подробно контроллеры новейших и грядущих чипсетов будут протестированы немного позднее.
Все тесты проводились на процессоре Intel Pentium III 800EB (системная шина 133 МГц, PCI — 33 МГц), за исключением чипсетов VIA KT133A и KT266, где использовался Athlon 800 МГц в нестандартном включении (для чистоты эксперимента) — на системной шине тоже 133 МГц. Везде использовалось 256 Мбайт системной памяти PC133 и PC2100 (для чипсетов VIA — двумя модулями с активизацией Bank Interleave 4-way).
Для тестов использовались следующие версии драйверов и BIOS:
— Promise Ultra100: драйвер 1.60 (build 36), BIOS 2.00 (build 17);
— Promise Ultra100 TX2: драйвер 2.00 (Build 3), BIOS 2.10 (build 23);
— ASUS TUSC2-C: BIOS v1010, IDE-драйвер Intel v3.20.1008;
— Canyon CN-75CLV: BIOS vQ9, драйвер VIA «4-in-1» v4.35;
— ABIT BX-133: BIOS платы «ZW» (последний официальный), BIOS HPT370 версии 1.0.3b1, драйвера HPT370 v1.0.3b (на сайте HighPoint Tech. были и более свежие драйвера версий 1.11 и 1.20, но они с данной версией BIOS показывали слегка худшее быстродействие).
Для всех контроллеров под Windows XP Professional подходили и драйвера из ее комплекта, однако они работали немного медленнее, чем «родные» (хоть и для Windows 2000), поэтому было решено использовать последние.
Диск подключался мастером (в одиночку на «отдельные» контроллеры и как Secondary Master для интегрированных контроллеров) и, разумеется, 80-жильным шлейфом, а то находятся еще «грамотеи», пытающиеся «выжать» UltraATA/66 или /100 из старого 40-жильного шлейфа. В процессе испытаний особых проблем в работе устройств замечено не было, за исключением случая VIA KT133A. Для него были обнаружены следующие недостатки:
1. Для BIOS версии ниже Q8 присутствовали ошибки при работе с файлами (портились файлы даже при работе на Primary-канале). Это — известный баг данного контроллера (см., например, http://www.terralab.ru/system/10091/), исправленный в последующих версиях BIOS.
2. Диск UltraATA/66 и /100 категорически нельзя подключать к данному контроллеру 40-жильным кабелем — только 80-жильным. При этом система НЕ снижает протокол до UltraATA/33, что приводит к постоянным сбоям в работе диска (фактически иногда даже не удается загрузить ОС). Отключение же в этом случае режима UltraDMA в BIOS не только сильно замедляет скорость работы диска, но и «возвращает» ошибки по пункту 1.
Сравнение быстродействия контроллеров проводилось путем измерения скорости работы современного винчестера на стандартных тестах (см. http://www.terralab.ru/storage/8200/) под операционными системами Windows 98 Second Edition и Windows XP (под Windows 2000 быстродействие контроллеров было такое же, как под Windows XP). Результаты представлены на диаграммах. Прежде всего, нужно отметить, что по тесту скорости передачи данных по шине IDE по HD Tach 2.61 Read Burst Speed большинство контроллеров показало значения трансфера, близкие к максимально возможным (диск IBM по этому параметру имеет самые лучшие показатели среди аналогов). Однако IDE-контроллер VIA KT133A в этом тесте оказался заметно хуже остальных. Да и загрузка центрального процессора при работе с диском (тоже по тесту HD Tach 2.61) для KT133A оказалась много выше, чем для других — лидировали здесь чипы от Intel (см. рисунок).
Скорость чтения кэша диска контроллерами, Мбайт/с и загрузка процессора при работе с диском, % по тесту HD Tach 2.61 под Windows XP и 98. |
По тестам WinBench99 2.0 лидерами оказались два контроллера — HighPiont HPT370 и Promise Ultra100 TX2. Так, чип HPT370 лидирует под Windows XP Professional (а также под Windows 2000), зато «Промисы» слегка лучше под Windows 98SE (см. диаграмму), причем Ultra100 TX2 работает немного быстрее своей предшественницы Ultra100. От них отстают (особенно в Business-тестах) контроллеры, интегрированные в чипсеты, хотя в High-End тесте под Windows XP скорость диска на i815E и, особенно, на KT133A оказалась на уровне лидеров. Преимущество лидеров над «интегрированными» контроллерами (до 40% в тестах Business WinBench, как отмечается и на коробке Ultra100 TX2) можно с уверенностью отнести за счет специального кэширующего драйвера, встроенного в сам драйвер устройства для HPT370 и расположенного в отдельном файле pticache.vxd для Промисов под Windows 9x/Me. Это подтверждает и тот факт, что без pticache.vxd «промисы» под Windows 98 показывают заметно меньшую скорость — на уровне KT133A.
Производительность контролеров UltraATA в тесте WinBench под Windows XP и 98, млн.байт/с (Pentium III/Athlon 800 МГц, диск IBM IC35L040AVER07). |
Удивительно, но i440BX с UATA/33 по-прежнему хорошо смотрится в Business-приложениях, хотя в профессиональной работе уже заметно проигрывает. Отчасти этот успех можно отнести за счет отличной работы дисков IBM под потоколом UltraATA/33 (см. http://www.terralab.ru/storage/10186/), тогда как для остальных винчестеров проигрыш под UATA/33 значительно больше.
Тесты непосредственного копирования файлов под Windows XP (2000) показали менее предсказуемые результаты: на одном большом файле вверх взяли интегрированные решения, причем i815E уверенно лидирует, а HPT270 и Ultra100 TX2 почти не отстали от KT133A, да и i440BX проиграл Ultra100 совсем немного (эта разница не будет ощущаться в реальной работе). Зато при копировании множества мелких (по 50 кбайт) файлов i440BX уверенно обосновался на третьем месте, пропустив вперед только Ultra100 и KT133A и оставив позади даже Ultra100 TX2 и HPT370. А i815E сполз на последнее место, проиграв даже USB 2.0!
Производительность контролеров UltraATA в тестах Adaptec ThreadMark 2.0 и копирования 500 Мбайт файлов под Windows XP и 98, Мбайт/с (Pentium III/Athlon 800 МГц, диск IBM IC35L040AVER07). |
К тесту Adaptec ThreadMark 2.0 я уже давно относился с большим подозрением и проводил его скорее по привычке, чем для пользы дела. Его результаты для контроллеров окончательно подтвердили мои сомнения в том, что это имеет крайне малое отношение к действительной ситуации. И в дальнейшем этот тест для испытаний дисков я использовать не буду. Судите сами — с громадным отрывом лидирует KT133A, почти вдвое обогнав i440BX (такого не наблюдается ни в одном «реальном» тесте). Хотя «расклад» чипов «по местам» и напоминает тест копирования большого файла, разброс показаний в тесте Adaptec крайне велик и вряд ли может быть объяснен разумными вещами.
Тест DskBench 2.12 позволяет (помимо прочего) оценить эффективность работы с дисками при различном размере блока считываемых данных (без кэширования) и загрузку процессора при чтении и записи. Это полезно знать для многих практических задач — многодорожечной звукозаписи, работе небольшого файлового сервера или web-сервера, видеомонтаже, архивировании файлов, дефрагментации и пр. Результаты тестов контроллеров показаны на диаграмме. Видно, что при больших размерах блока данных (от 32 до 128 кбайт) все чипы показывают практически равную скорость, тогда как на маленьких блоках (8 и 16 кбайт) есть заметный разброс: с небольшим отрывом лидируют HPT370 и KT133A, а также i440BX, неожиданно вырвавшийся вперед на самых мелких блоках! Контроллер Ultra100, так любимый многими, заметно отстал ото всех остальных. По загрузке процессора (как и в тесте HD Tach) уверенно лидирует старичок i440BX, а KT133A — на последнем месте (хотя отстал он здесь не так сильно, как в HD Tach). Вообще, данные по загрузке процессора под Windows XP в DskBench практически повторяют ситуацию в аналогичном тесте HD Tach под Windows 98SE!
Производительность контролеров UltraATA в тесте DskBench 2.12 под под Windows XP, Мбайт/с. |
1. Системная плата Canyon CN-75CLV, 256 Мбайт памяти PС133 производства PQI, работающей по таймингу 2-2-2, и винчестер IBM Deskstar 60GXP IC35L040AVER07, с которым тестировались контроллеры, были любезно предоставлены компанией ASBIS Москва. [вернуться]
Еще одним тестом, позволяющим оценить эффективность работы дисков при различном размере блока данных, является ATTO Windows Disk Benchmark 2.02 (см. скриншот). В нем размер блока можно менять от 512 байт до 1 Мбайта (с шагом «удвоения»). Кэширование дисковых операций можно включать или отключать (я в данных тестах его отключал). Результаты этого теста для контроллеров оказались весьма показательными.
Результаты теста ATTO Windows Disk Benchmark 2.02 для контроллера Promise Ultra100 под Windows XP при использовании драйвера из дистрибутива Windows XP. |
Во-первых, наглядно видно, что при размерах блоков чтения и записи менее 8 кбайт есть снижение скорости работы, примерно пропорциональное размеру блока. Зато для блоков 32 кбайт и выше скорость выходит на максимальный уровень и дальше не растет. Причем граница между «спадающим» и «постоянным» участками зависит как от типа контроллера, так и от версии драйверов для него. Например, для HPT370 с наилучшими драйверами максимальная скорость достигается уже при блоках 8 кбайт, и даже для 4 кбайт она уже почти максимальна, тогда как для некоторых других случаев дело обстоит значительно хуже — для того же HPT370, но с драйверами из комплекта Windows XP провал скорости на малых блоках просто ужасающ (см. анимированный рисунок).
Результаты теста ATTO Disk Benchmark для контроллера HPT370 под Windows XP при использовании четырех разных версий драйверов — v1.0.3b (наиболее быстрый по тестам приложений), v1.11.05, v1.2.06 и драйвера из дистрибутива Windows XP (v1.0.5). |
Об оптимизации драйверов можно судить также по «гладкости» графиков (отсутствию провалов) выше «16 кбайт» и разнице в скорости между чтением и записью. На том же рисунке для HPT370 видно, что наилучшей «гладкостью» и наименьшей разницей между чтением и записью обладает драйвер v1.0.3b (хотя он и не и самый быстрый по чтению), а для более поздних версий запись заметно «скажет» и имеет провалы. И хотя в последней (из протестированных здесь) версии v1.2.0612 скорость чтения возросла, проблемы с записью не позволяют этому драйверу показать производительность в приложениях выше, чем для v1.0.3b. Драйвер же из комплекта Windows XP хоть и имеет наивысшие скорости чтения и записи на самых крупных блоках и достойную «гладкость», заметно уступает в скорости остальным из-за отвратительной работы с малыми блоками данных.
Результаты теста ATTO Disk Benchmark для контроллеров Promise Ultra100 и Ultra100 TX2 (верхний рисунок) и интегрированных UltraATA/100-контроллеров в чипсетах i815EP и VIA KT133A (нижний рисунок) под Windows XP Professional. |
Аналогично можно сравнивать и контроллеры между собой. Например, для новой Ultra100 TX2 скорость чтения выше, чем для Ultra100, зато запись в целом помедленнее (на «родных» драйверах, см. выше), хотя заметно ускорена работа с наиболее употребимыми блоками размером 4 и 8 кбайт (верхний рисунок, что согласуется с тестом DskBench) и в тестах WinBench99 это преимущество сказывается. Похожее наблюдается и при сравнении i815 с KT133A — первый выходит на насыщение скорости уже для 4 кбайт (КТ133А — позднее), имеет более быстрое (и равномерное) чтение, зато отстает от VIA в записи. Это обуславливает очень похожее на «Ультры» соотношение между двумя интегрированными контроллерами в тестах копирования файлов, хотя явного предпочтения на основании этих результатов теста ATTO сделать нельзя.
Результаты теста ATTO Disk Benchmark для контроллеров Promise Ultra100, i815EP и VIA KT133A под Windows 98 SE. |
Зато четко видно влияние работы кэширующего драйвера pticache.vxd для контроллера Ultra100 под Windows 98. На последнем рисунке скорость записи для Ultra100 (c кэширующим драйвером) существенно выше (и ровнее), чем для интегрированных контроллеров. За счет этого и наблюдается огромное преимущество «Промиса» в тестах Business Disk WinMark из WniBench99, а также при копировании мелких файлов. Правда, не до конца понятно, как при этом учесть факт отключения кэширования Windows для диска в тесте ATTO.
Перейдем к профессиональным серверным тестам Intel IOMeter под Windows XP. Здесь безусловным лидером (правда, с небольшим отрывом) стал HPT370. За ним вплотную следуют Ultra100 TX2, i815E, попеременно обгоняя друг друга. KT133A смотрится в целом немного лучше, чем i440BX, однако разница между ними очень невелика и последний, несмотря на втрое более медленный интерфейс IDE, до сих пор выглядит очень прилично, причем даже на большом количестве (до 256) одновременно работающих потоков, что характерно для активно работающих серверов. Очевидно, здесь определяющим фактором является скорость самого диска (оптимизация алгоритмов кэширования и подвижность блока головок), а не шины ATA.
Производительность контроллеров UltraATA в тесте Intel IOMeter под Windows XP, Мбайт/с. |
Подробнее об интересном профессиональном тесте Intel IOMeter я расскажу как-нибудь в другой раз, а сейчас лишь отмечу, что в качестве «выходного» параметра на диаграммах я использую не количество операций ввода-вывода в секунду (которое приводит большинство других тестеров), а более понятный и наглядный — скорость передачи данных в Мбайт/с, которая по сути является тем же количеством операций ввода-вывода, приведенным к размеру блоков данных, задействованных в каждом из тестирующих паттернов. Полезность именно такого подхода иллюстрирует введенный мною собственный паттерн для потокового чтения/записи крупными блоками по 64 кбайт (50/50, что типично, например, при работе цифрового магнитофона в режиме TimeShifting), результаты для которого приведены на отдельной диаграмме. В отличие от остальных («серверных» паттернов с мелкими блоками данных), здесь практически нет разницы в скорости от количества одновременно идущих потоков! А скорость передачи данных (около 13 Мбайт/с) примерно на порядок выше, чем в «серверных» моделях нагрузки и сравнима с результатами тестов копирования файлов и WinBench. Здесь уже i815E — явный лидер, а i440BX отстал из-за более медленной шины IDE.
Производительность контроллеров UltraATA в тестах Intel IOMeter под Windows XP, Мбайт/с. |
Тесты для DDR-чипсетов были выполнены немного в других условиях — в качестве тестового винчестера служил один из самых быстрых «весенних» дисков — Maxtor DiamondMax Plus 60 объемом 30 Гбайт (см. http://www.terralab.ru/storage/8200/). Тесты WinBench99 и копирования файлов под Windows 2000 представлены на диаграмме в сравнении с HPT370 и KT133A. В WinBench99 уверенно лидирует VIA Apollo Pro266, тогда как VIA Apollo KT266 с тем же южным мостом заметно отстал, обогнав только KT133A. По-видимому, здесь ощущается влияние типа самого центрального процессора (Athlon проигрывает Pentium III), а не скорость чипсета. Это подтверждается и при копировании файлов — отрыв Pentium III от Athlon для DDR весьма существенен, а лидирует HPT370. Позже мы посмотрим, что будет в будущих чипсетах под Атлон и Пентиум.
Производительность IDE-контроллеров в тестах WinBench 99 и копирования 500 Мбайт файлов под Windows 2000, Мбайт/с. |
Таким образом, однозначного и безоговорочного победителя назвать нельзя и большинство контроллеров примерно равноценны по скорости (по крайней мере, эта разница не будет заметна «на глаз» в реальной работе). В целом немного лучше остальных под Windows XP/2000 смотрится HighPoint Technologies с чипом HPT370. И я еще раз убедился, что поступил правильно, выбрав его для многочисленных испытаний дисков в нашей редакционной лаборатории. К тому же он имеет более гибкий BIOS, позволяющий вручную настраивать (в отличие от Promise Ultra100, например) скорость протокола шины IDE и выбирать любой диск в качестве загрузочного.
В заключение скажу, что на этом баталии контроллеров параллельного ATA-интерфейса еще не заканчиваются — на очереди UltraATA/133 (на сей раз уж точно «последнего» из «параллельных» ATA-интерфейсов), уже реализованный в дисках Maxtor, контроллерах Promise Ultra133 и HighPoint HPT372, а также планируемый в будущих чипсетах большинства производителей. Лишь Intel отказалась от поддержки UATA/133, продвигая свой Serial ATA (см. http://www.terralab.ru/storage/6926/).