Экспресс-тестирование SATA-контроллеров в чипсетах AMD и Intel

Три контроллера, два режима, три драйвера


Текущая версия методики тестирования внутренних накопителей была введена нами в употребление еще три года назад, так что на сегодня уже нуждается в обновлении, причем речь идет не только о программных компонентах, но и об аппаратном обеспечении. В связи с этим у нас возник вопрос: как соотносятся друг с другом результаты накопителей на разных контроллерах? Иными словами, не выйдет ли так, что тестирования большого практического смысла не имеют из-за слабой устойчивости результатов к изменениям конфигурации. Тем более что современные дисковые контроллеры способны работать в разных режимах и вести себя при этом могут по-разному. Некоторые читатели ранее даже делали замечания по поводу использования нами для тестов режима RAID, а не более распространенного AHCI, считая, что это сказывается на результатах. Но ведь и в случае AHCI может быть разница из-за разных драйверов — системного и поставляемого производителем контроллера. Насколько все эти опасения оправданы, имеет смысл проверить.

Тем более что был за нами и небольшой должок. Как раз три года назад мы решили попробовать сравнить реализации интерфейса SATA600 в чипсетах AMD и Intel и получили, мягко говоря, обескураживающие результаты для одного из случаев. Вот тут как раз претензии к использованию именно RAID-режима, возможно, и были обоснованы (почему — более подробно будет сказано ниже), но проверить это позднее все «руки не доходили». А тут как раз повод выдался. Причем за прошедшее время компания AMD существенным образом переработала эту составляющую своих чипсетов.

В итоге у нас получилось относительно небольшое, но представительное тестирование трех контроллеров с тремя драйверами, отчет о котором как раз и представляет собой данная статья. Но сначала — немного теории и исторических фактов.

Режимы дискового контроллера — Intel-way

Первые SATA-контроллеры в основной своей массе представляли собой немного переделанные устройства, рассчитанные еще на параллельную версию АТА-интерфейса. А иногда — даже и не переделанные: в старших моделях нередко встречались конвертеры-сериализаторы Marvel 88i8030 (в паре с привычными собственно контроллерами), а производители бюджетных карт расширений вовсю использовали гибридные чипы. Например, можно вспомнить такие продукты Promise (почему именно этой компании — понятно станет чуть позже), как FastTrak SATA150 TX2Plus и TX4. Первый (на базе чипа PDC20375) поддерживал два порта SATA150 и один канал PATA, второй (на PDC20318) — четыре порта SATA150, т. е. оба допускали подключение до четырех жестких дисков. И это количество появилось вовсе не на пустом месте, поскольку свойственно было одному из более ранних продуктов компании — FastTrak, который являлся просто двухканальным РАТА RAID-контроллером. Фактически, производители никаких революций не устраивали, просто творчески дорабатывая и перерабатывая свою продукцию. Она требовала установки собственного драйвера, для системы в любом случае представлялась SCSI-контроллером, и никаких особенностей с ее конфигурированием не было.

Однако дискретные контроллеры в те годы уже начали «выходить из моды» во всех областях массового рынка, так что нет ничего удивительного, что подобной функциональностью начали обзаводиться непосредственно чипсеты. Правильнее даже будет сказать, что активное внедрение интерфейса SATA в массы началось с того момента, как появились чипсеты с его поддержкой. И вот тут возникли различия в подходах.

Компания Intel традиционно тянула с поддержкой SATA достаточно долго, однако в итоге подошла к ней достаточно ответственно, добавив новый контроллер в южные мосты ICH5/ICH5R. Предыдущий южный мост компании, ICH4, поддерживал два канала РАТА, его «сменщик» в лице ICH5 — ровно те же два канала РАТА и еще два порта SATA150, а ICH5R позволял на последних (и только на них!) организовать RAID-массив, причем ранее функциональности RAID-контроллера чипсеты Intel вообще не предлагали. Правда, на тот момент никаких дополнительных преимуществ использование SATA не обеспечивало, поскольку в ICH5/ICH5R не была реализована поддержка таких функций, как NCQ и прочих из набора возможностей SATA AHCI, т. е., по сути, режим работы контроллера был единственным и аналогичным РАТА. А вот следующее поколение южных мостов Intel такой функциональностью обзавелось. И тут начал возникать вопрос: как это все должно работать?

К решению проблемы подошли просто. Для начала, сохранили «старый» вариант (т. е. без поддержки новомодных функций) — для сохранения совместимости с устаревшими системами, благо в 2004 году это было весьма актуально. Собственно, Windows XP (на тот момент и немалое количество лет спустя — самая современная ОС) по умолчанию ничего другого, кроме «обычного IDE», «из коробки» и не поддерживала — для более «продвинутых» режимов требовалась установка драйвера. А поскольку критической массы новых устройств с полной поддержкой нового протокола на рынке тоже не наблюдалось, многие пользователи вполне справедливо считали возню с драйверами неудобством и использовали новые контроллеры в режиме «старых». Для всех остальных были придуманы два новых режима работы: RAID и AHCI. Почему два? Потому что по сформировавшейся чуть ранее традиции создание RAID-массивов было доступно только покупателям плат с более дорогим ICH6R, но весь остальной набор функций нужно было предоставить и экономным гражданам, выбирающим ICH6. В принципе, можно было бы обойтись и двумя режимами, поскольку RAID полностью включал в себя всю функциональность AHCI, но сделать три было проще с точки зрения унификации BIOS и драйверов.

С тех пор прошло уже более 10 лет, но в общем и целом подход не изменился. Просто сейчас уже нет разделения чипсетов на «северный» и «южный» мосты, поскольку первый полностью «переместился» в процессор. Однако чипсеты по-прежнему бывают разными: дорогие поддерживают полную функциональность SATA-контроллера, включая создание RAID-массивов, а дешевые — лишь ее подмножество, без массивов. Ничего удивительного, что при таком раскладе Intel рекомендует использовать именно режим RAID во всех случаях, когда он доступен. Тем более что некоторые разработки Intel, такие как Smart Response, на деле все равно реализуются поверх массивов. Однако, несмотря на эти рекомендации, чаще всего сейчас применяется режим AHCI, благо он же, как правило, выбран по умолчанию — из-за драйверов. Дело в том, что все современные операционные системы изначально поддерживают AHCI посредством комплектных драйверов, а вот для RAID, как и ранее, нужно устанавливать ПО производителя контроллера. У Intel это в обоих случаях один и тот же программный пакет, но при работе контроллера в AHCI-режиме его можно не устанавливать вовсе, и на этапе инсталляции системы, соответствнно, его драйверы можно «не подсовывать».

Режимы дискового контроллера — AMD-style

Теперь посмотрим на то, как к поддержке SATA относился второй крупный производитель чипсетов, благо сейчас их уже фактически двое и осталось. Первое время все было очень просто: хотя AMD еще в 1999 году потребовались собственные чипсеты для массового рынка в связи с выходом в свет первых Athlon, использующих собственную же системную шину, сопутствующие микросхемы компания всегда рассматривала как побочную область деятельности. Собственно, и AMD 750, и AMD 760 были выпущены лишь для того, чтобы на рынке в любом случае присутствовал совместимый с процессорами северный мост, а вот на южные мосты сил при этом не хватило. Точнее, таковые тоже выпускались, но были настолько просты и ограничены, что производители плат их, как правило, не использовали, предпочитая продукцию VIA. А как только Athlon занял определенное место на рынке, AMD вовсе отказалась от дальнейшего развития собственных чипсетов, во всем полагаясь на партнеров. На этом «жизнь» линейки чипсетов AMD прекратилась.

Вторичный выход AMD на рынок был связан с покупкой ATI — интеграция на компьютерном рынке всегда затрагивала не только сугубо технические области. В первую очередь, понятно, компанию интересовали разработки графического подразделения ATI, но не только в области дискретных GPU: пришла пора обзаводиться и собственными интегрированными чипсетами. А они как раз у ATI были, причем изначально и для платформы AMD, и для Intel. Но южными мостами ATI самостоятельно тоже занималась не слишком уж увлеченно, не имея возможности тратить средства на «непрофильные» направления. Как при этом выпускать конкурентоспособную продукцию? Да очень просто: лицензируя разработки других производителей, а иногда и просто продавая их под своей торговой маркой. Например, первый южный мост ATI с поддержкой RAID-массивов (SB400) был на самом деле сделан ULi, а отвечающая за SATA часть вообще представляла собой два двухпортовых контроллера Silicon Image, встроенных в чип. В более позднем SB600 изменения ограничились тем, что этот контроллер стал одним четырехпортовым — для удобства использования. Этот южный мост некоторое время продавался и под маркой AMD, но «собственным» для компании в каком-то смысле можно считать уже только SB700 и последующие разработки.

Итак, именно с SB700 фактически и началась новая жизнь чипсетов AMD — более старые упоминать уже не имеет смысла. Что касается более новых, то там положение менее однозначное. Несколько лет оно было простым: все южные мосты чипсетов для платформ AM2/AM3 и все FCH для «интегрированных» платформ FM1/FM2, по сути, являлись дальнейшим развитием SB700. А интересным для нас в данном случае является то, что контроллеры этой линейки работали даже не в трех, а в четырех разных режимах. Первый — «исторический» Legacy IDE (причины, по которым он оставался востребованным, описаны выше). Второй — стандартный для современных систем AHCI-режим (тоже понятно зачем). Третий и четвертый — RAID. Почему целых два режима? Потому что поддержку RAID 0, 1 и 10 получили все южные мосты (в отличие от Intel), а вот RAID5 был доступен лишь в части модификаций, причем вышедших позднее, нежели оригинальный SB700. Но в обоих случаях программная составляющая была лицензирована у компании Promise, так что в те годы была популярна шутка, что AMD просто встроила в свои чипсеты контроллер Promise FastTrak TX4300 — точно так же, как ATI (точнее, ULi) интегрировала ранее продукты Silicon Image. Главное же, что нас в данном случае интересует — никакой совместимости режимов «снизу вверх» у дисковых контроллеров AMD нет. Это разные устройства с разными драйверами — и даже базирующиеся на разработках разных компаний.

Положение дел несколько изменилось после появления платформы FM2+ и новой линейки чипсетов, созданной специально для нее. В принципе, первые три микросхемы по основным параметрам повторяли своих предшественников, а вот программный код Promise канул в лету. Вместо этого AMD начала использовать разработки другого производителя — Dot Hill (сотрудничество с ним началось с серверных решений). Это изменение нельзя отнести к принципиальным — просто общее число режимов работы сократилось до трех (как у Intel), но полной совместимости RAID и AHCI не появилось. С другой стороны, есть у нас подозрения, что обнаруженные три года назад проблемы в RAID-режиме могли быть связаны с тем, что написанные в незапамятные времена драйверы Promise попросту никто не оптимизировал под высокоскоростные накопители, благо изначально необходимости в этом не было, а потом руки не доходили. Оптимизированный же под современные многоядерные процессоры (на что в момент заключения соглашения было обращено особое внимание) «виртуальный RAID-контроллер» может оказаться куда более производительным, чем предшественники. Понятно, что пользователям «дискретных» платформ это никак не поможет, поскольку чипсеты для них не менялись уже очень давно, а вот покупателям APU быстрый RAID может пригодиться (хотя как раз в этом случае «оптимизация под многоядерность» даст меньший эффект ввиду меньшего количества этих самых ядер). Остается только вопрос, насколько этот новый RAID быстрый. И именно на него мы в числе прочего попробуем ответить.

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

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

В общем и целом мы решили опираться на стандартную методику тестирования внутренних накопителей (описанную в соответствующей статье), ограничившись лишь необходимыми изменениями и сократив количество используемых тестов. На нашей базовой системе (чипсет Intel Z77) мы использовали не только режим RAID контроллера под управлением Intel Rapid Storage 10.8.0.1003, но и AHCI — как с драйвером Intel из того же пакета, так и с «системным» драйвером Microsoft, поставляемым вместе с Windows 7. В аналогичных трех программных конфигурациях мы задействовали и чипсет Intel H87, причем на плату устанавливали процессор Core i3-4170T — близкий по характеристикам к «штатному» Core i3-2100. Отметим, что ПО Intel в данном случае старше чипсета, но никаких проблем с его функционированием обнаружено не было, хотя некоторое снижение производительности относительно потенциального уровня вполне возможно. Впрочем, как раз это и интересно проверить. Тем более что системный AHCI-драйвер имеет куда более почтенный возраст.

Что касается платформы AMD, то мы воспользовались платой на чипсете A88X c процессором A10-7850K и драйверами версии 15.7.1 (до сих пор наиболее «свежими»). Разумеется, в одном из режимов тестирования также использовался и драйвер Microsoft.

Большое количество накопителей мы решили не брать, ограничившись одним SSD Sandisk Extreme Pro 480 ГБ. Этого будет достаточно, поскольку накопитель быстрый, а все протоколы работы стандартные, так что предполагать наличие индивидуальных особенностей подключаемых устройств оснований нет. Будет при таком раскладе какая-либо разница в результатах тестов — значит, она есть; не будет — значит, ей и взяться неоткуда.

Линейные операции

Вместо IOMeter мы ограничились AS SSD, поскольку для оценки контроллеров нам достаточно максимальных скоростей, которые достигаются на блоках максимального же размера. Что мы видим? RAID-режим контроллера A88X по-прежнему сильно ограничивает производительность. Особенно сильно это заметно по скорости чтения, которая в данном случае оказалась ниже скорости записи. «Универсальный» драйвер Microsoft, как видите, на этом контроллере тоже немного отстает от AHCI-драйвера AMD, но незначительно. А вот оба чипсета Intel в обоих режимах под управлением разных драйверов работают абсолютно одинаково.

Случайный доступ

Аутсайдер не изменился — это по-прежнему RAID-режим A88X, причем с разгромным счетом. Впрочем, в этом тесте A88X вообще отстает от чипсетов Intel, но это может быть связано с более низкой производительностью платформы. Примечательно, что все три чипсета при использовании драйвера Microsoft демонстрируют максимальную производительность. Разница, конечно, чаще всего микроскопическая, но она есть, и устойчивая.

Вот тест скорости записи оказался весьма интересным. Некоторые закономерности сохранились: SATA-контроллер AMD ведет себя по-разному в AHCI- и RAID-режиме, а у Intel такой «особенности» нет. В AHCI-режиме драйвер Microsoft снижает производительность A88X, но оказывается более быстрым на H87, а Z77 абсолютно все равно. К последнему, впрочем, мы были морально готовы: как уже говорилось выше, использовался более старый пакет ПО Intel, нежели чипсет, так что тут возможно всякое. Хорошо заметно также и то, что программная часть в основном влияет на работу в «нагруженном режиме», несколько выходящем за рамки «обычного использования» компьютера, что будет интересно только любителям бенчмарков с последующим «мерянием»... результатами в форумах — тут удачный (или, напротив, не очень) выбор драйвера может сильно изменить картину. А при тестировании с единичной очередью первоочередными являются собственно характеристики накопителя и контроллера — зависимость от драйвера здесь несравнимо меньше.

Производительность в приложениях

Если говорить не о низкоуровневых характеристиках, а о результатах бенчмарков, имитирующих реальную работу (что, собственно, большинству пользователей и интересно), то разница между испытуемыми сильно сглаживается — настолько, что можно даже не обращать на нее внимание. Исключением (как обычно) является RAID-режима A88X, который снижает производительность примерно на 10%. Для PC Mark 7 это довольно серьезное отклонение: если вспомнить наши тестирования, то, к примеру, бюджетный OCZ Trion 100 «выбивает» на Z77 больше «попугаев», чем Sandisk Extreme Pro 480 ГБ, подключенный к A88X в RAID-режиме. Таким образом, ситуации, в которых разница между контроллерами сравнима или превышает разброс результатов между разными накопителями, вполне возможны. Есть также небольшая разница между «фирменным» и «системным» драйверами в AHCI-режиме, причем для AMD более предпочтительным является первый, а для Intel — наоборот. Однако эта разница столь невелика, что может считаться не заслуживающей внимания.

Разброс значений на разных трассах PC Mark 7 не превышает 10%, что вполне объяснимо тем, что задействовать возможности современных SSD данный пакет может разве что в RAW-режиме, когда не пытается имитировать реальную нагрузку с учетом прочих компонентов компьютера. Выделилась только наша «любимая» трасса запуска приложений, где, кстати, RAID-режим оказался самым медленным у всех контроллеров. Но практически значимым это замедление является только для А88Х, что уже не удивляет.

Работа с большими файлами

Поскольку выше мы видели «вредное влияние» RAID-драйвера AMD даже на последовательные скорости чтения и записи, нет ничего удивительного в том, что мы наблюдаем разницу между испытуемыми и в этих шаблонах NASPT. Однако разница обнаруживается только в упомянутом случае — все остальные практически равны, поскольку сложных операций дисковой подсистеме здесь выполнять не приходится. Есть и некоторая «межплатформенная» разница, но не слишком большая и присутствующая лишь при сравнении чипсетов AMD и Intel, но не разных чипсетов Intel между собой.

Итого

Количество тестов по сравнению со «стандартной» методикой мы в данном случае сильно сократили, но все равно прогнали их намного больше, чем попало на диаграммы выше. Поэтому мы решили (как обычно) вычислить и общий балл, причем (тоже — как обычно) с нормированием относительно показателей типичного винчестера.

Собственно, для целей статьи хватило бы и одной этой диаграммы — остальные нужны для того, чтобы понять, как она такая получилась :) Как видите, в любом (даже наихудшем) случае быстрый твердотельный и механический накопители — это два разных непересекающихся мира. (Напомним, что HDD по условиям конкурса выдает ровно 1000 баллов.) А вот при одинаковом накопителе начинает сказываться и контроллер, с учетом режима его работы и конкретного драйвера. Впрочем, в случае чипсетов Intel AHCI-режим есть лишь подмножество RAID (без собственно «массивов»), да и между драйверами особой разницы не наблюдается — ПО Intel можно устанавливать, а можно не устанавливать, по вкусу. В RAID-режиме как минимум драйвер использовать придется, но без этого режима вполне можно обойтись: самый простой и удобный для пользователя (и выбираемый системными платами по умолчанию) режим AHCI со стандартным системным драйвером работает не хуже (и не лучше), так что все остальные нужны только тогда, когда пользователь точно знает, зачем. При этом включение RAID-режима просто «чтобы было» тоже ни к каким проблемам не приведет.

С платформами AMD ситуация немного иная: в данном случае использование RAID-режима, как и ранее, противопоказано. Конечно, если вам действительно нужны дисковые массивы, придется его использовать, невзирая на снижение производительности. Впрочем, подсластить пилюлю помогает то, что установка системного SSD в этом случае все равно оправдана — от винчестера даже таких «порезанных» скоростей невозможно получить и близко. Без насущной же необходимости лучше использовать режим AHCI как минимум (при наличии выбора) для тех портов, куда подключаются высокоскоростные накопители. При этом вполне оправданной является установка собственного драйвера AMD: будет немного быстрее, чем без него. Однако в целом производительность этого варианта все равно немного ниже, чем при использовании чипсетов Intel, так что для нужд тестирования платформа AMD подходит не слишком хорошо. А вот для практического использования (когда твердотельный накопитель используется не для погони за красивыми цифрами, а просто чтобы компьютер быстрее работал) реализация AHCI-режима в чипсетах AMD пригодна без оговорок.




Дополнительно

iXBT BRAND 2016

«iXBT Brand 2016» — Выбор читателей в номинации «Процессоры (CPU)»:
Подробнее с условиями участия в розыгрыше можно ознакомиться здесь. Текущие результаты опроса доступны тут.

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.