Компьютер будущего : мультипроцессорная графическая подсистема. Hybrid SLI

26 декабря 2008, пятница 16:31
Компьютер будущего : мультипроцессорная графическая подсистема. Hybrid SLI

Предисловие
Как выбиралась материнская плата
Видеокарта GF8400GS
Инициализация Hybrid SLI
Тест разгрузки CPU
Тестирование производительности
О минимальном fps в играх
Коротко о неграфических вычислениях
Подведение итогов


Предисловие

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

В связи со сборкой нового HTPC появилась возможность непосредственно ознакомиться с относительно новыми технологиями — Asus Express Gate и Hybrid SLI. Информация по ним в описаниях и на интернет-сайтах достаточно скудная, что и привело к написанию небольшого обзора "Asus Express Gate v1.3.3.1". Теперь познакомимся и с технологией NVidia Hybrid SLI.

В интернете зачастую можно увидеть обзоры, тестирование и обсуждение на форумах, когда в пару встроенной видеокарте от NVidia установлена GF9800. Но совместная работа таких видеокарт в режиме Boost performance попросту невозможна.

Недоразумения происходят потому, что, желая маркетингом притянуть за уши в категорию Hybrid SLI как можно более широкий спектр своих изделий, NVidia на своем сайте несколько запутанно это обозначила. Но человеку, разбирающемся в компьютерах, все должно быть понятно, хотя форма подачи технологии, на мой взгляд, неудачная. Ибо Hybrid SLI нередко используется и как обобщающее название двух технологий — Boost performance (наиболее близкое по смыслу к обычному SLI), и Hybrid Power, когда, в целях экономии электроэнергии, при отсутствии нагрузки на мощную дискретную карту, «вместо нее» может работать встроенная видеокарта. Но эти технологии не могут работать одновременно на одном и том же компьютере - Hybrid SLI может включаться при установке дискретной карты GF8500 и ниже, а Hybrid Power — при установке GF9800. Hybrid SLI нас будет интересовать в более классическом понимании, как средство увеличения производительности видеоподсистемы, то есть режим Boost performance, и ему мы уделим основное внимание.

С другой стороны, статья — продолжение серии размышлений на тему компьютера будущего. Для тех, кто не читал предыдущий материал, оговоримся, что речь идет не о глобальном и неопределенно далеком будущем, а о ближайшем будущем компьютере автора, класса HTPC (кодовое имя HTPC2, так как один HTPC уже есть).

Вот конфигурация компьютера HTPC2 :


Athlon X2 4850e 2.5GHz (охлаждение - ThermalTake Sonic Tower, пассивное)
Asus M3N78-EM GF8300 integrated, A-DATA 8GB DDR2-800
Asus BC-1205PT BluRay
Asus WL-130N Wi-Fi
Enlight Card reader с пультом ДУ под Windows Vista
PCIEx1 SATA контроллер Sil3132
Блок питания EzCool 400Вт, переделанный под пассивное охлаждение


Накопители планируются SSD, но финальная конфигурация пока не определена, в контексте темы тип накопителя не имеет особого значения.
ОС Windows Vista Ultimate 64 SP1 установлена на IDE HDD Samsung SP0802N.

Может показаться, что ни о каком MultiGPU на этом слабеньком компьютере вести речь нельзя. Да и не зачем. Но не будем торопиться и постепенно все станет понятно.

Как выбиралась платформа

Подход основывался на том, что была нужна материнская плата с интегрированной графикой от NVidia, так как определенный интерес представляет CUDA, технология неграфических вычислений на GPU. Не обязательно, что вычисления (скорее, эксперименты) будут вестись на маломощном графическом процессоре GF8300, это просто позволит иметь в системе единый драйвер и освободить более мощную карту, вставленную во внутренний слот расширения, от необходимости работы с монитором и графическим выводом, тем самым легко можно уйти от “watchdog” в Windows (ОС не разрешает программам надолго захватывать в единоличное пользование «главное» графическое устройство). Разумеется, подобные технологии предлагают и AMD, и Microsoft, но, на момент моего знакомства с CUDA (версия 0.8 beta, а сейчас уже вышла 2.1) , NVidia была на голову впереди, по крайней мере, с публичными версиями. Потихоньку ситуация выравнивается, но предметного знакомства с технологией от AMD так пока и не получилось (разве что за исключением технологии рендеринга в буфер вершин, но это из старого, так как доступно даже и для некоторых видеокарт ATI с поддержкой Shader Model 2.0). Поэтому материнские платы с интегрированной графикой от AMD и Intel даже не рассматривались.

Дополнительное требования — форм-фактор микро-АТХ, что сужает выбор. Еще более его ограничивает желание получить наиболее производительное графическое решение. Учитывая, что плата приобреталась ранней осенью, то наиболее современный вариант был доступен только для платформы AM2+. Но то, что не было пока анонсировано решений на GF9400 под платформу LGA775, было даже плюсом, так как конструктивно задумывалось полное отсутствия вентиляторов в системе охлаждения и требовался процессор с невысоким TDP. В итоге, осталось выбрать из многообразия в лице единственного варианта - Asus M3N78-EM.

Соответственно, процессор тоже был предопределен - Athlon X2 4850e с TDP 45W, так как хоть не анонсированный X2 5050e с тем же TDP был уже в продаже, стоил он в полтора раза дороже, что было нонсенсом (сейчас уже, как и положено, разница в районе нескольких долларов).

Младшие модели процессоров, если задумываться о меньшей стоимости, не рассматривались, так как хотелось обеспечить вывод Full HD через встроенную видеокарту. Как оказалось, процессор Athlon X2 3800+ плавный просмотр Blu-Ray дисков (программа Cyberlink PowerDVD BD edition c обновлением) в полноэкранном режиме, несмотря на заявление Cyberlink, не обеспечивает, максимум — в оконном режиме около 1200 точек по ширине. С внешней картой этот процессор справляется и с настоящим Full HD, но внешняя карта у нас, если будет, то предполагается под цели неграфических вычислений. Asus для Full HD рекомендует процессор не ниже X2 4400, но лучше подстраховаться.

Почему было сказано про видеокарту «если будет»?
Возможно, что слот PCIEx16 придется отдать под Raid-контроллер, это зависит от итоговой конфигурации накопителей, которая пока не определена. Чем дальше, тем больше хочется приличный контроллер, с 4-ю SATAII портами или больше, типа HighPoint 3xxx или от Intel, чтобы попробовать получить максимальную отдачу от массива SSD. А такие контроллеры требуют слот PCIEx4 или PCIEx8 и видеокарту ставить будет просто некуда. Но это пока из серии «возможно будет» и, к тому же, идет вразрез с рассматриваемой темой. Спускаемся с небес на грешную землю.

Для того, чтобы завершить тему с процессором, нужно отметить еще один момент. Рассказ о системе охлаждения HTPC2 еще только в планах, но пока выясняется, что пассивный Sonic Tower удовлетворительно справляется на нагрузках процессора до 50%. БП тоже может при этом обходиться совсем без обдува, со своими штатными маленькими радиаторами на силовых полупроводниках. То есть, серфинг в сети, набор текстов и прочая слабая 2D нагрузка не вызывает никаких проблем. Активная работа СPU по выводу DivX контента прогревает его до 55-60 градусов. А Blu-Ray фильм на двустороннем диске, к концу второго часа, доводит эту температуру до 75° (на нее настроено предупреждение о высокой температуре, так как максимальная рабочая температура процессора X2 4850e по ТТХ определена в 78°C; вот где позавидуешь i7 с их 100°С! ). Стресс-тесты выводят на критические температуры еще быстрее. Но, так как компьютер класса HTPC, то предельная нагрузка — это явление практически недостижимое, а вот HD контент не должен выводить на закритические режимы. Можно двигаться и в сторону эффективности пассивного охлаждения (типа Scythe Orochi), но можно помочь процессору и установкой дополнительной видеокарты, включив режим Hybrid SLI. Что мы и сделаем. Заодно попытаемся понять, что же этот режим «неполноценного SLI» может дать не только в разгрузке процессора и снижения его температуры, но и в приложениях, соответствующих классу этого графического оборудования, учитывая то, что максимальная пара для GF8300 при такой работе определена NVidia как GF8500GT. Девятая серия дискретных карт Hybrid SLI уже не поддерживает. Имеющаяся в хозяйстве GF8600GT (даже две штуки есть) задачу по разгрузке решает, но также не дает включиться Hybrid SLI. Наверное, сам по себе, я вряд ли стал бы покупать пару для встроенной GF8300, но отказаться от знакомства с Hybrid SLI не дает простое человеческое любопытство. Поэтому, для минимизации стоимости эксперимента, приобретаем скромную по производительности и самую скромную по цене карту Asus EN8400GS SILENT/HTP/512M, как раз под стать встроенной, поскольку GF8500GT уже будет ее серьезно переигрывать, особенно с шиной 128 бит и с DDR3, да и стоит это подороже. Впрочем, обладая практически такими же параметрами, как и GF8300, GF8400GS, как мы увидим, легко кладет ее на лопатки.

Внешняя видеокарта GF8400GS

Следует отметить, что вариантов исполнения GF8400GS существует великое множество, как по виду и числу внешних интерфейсов, так и по частотным характеристикам. При референсных частотах 450/900/800 разные производители сотворили продукты с весьма отличающимися штатными частотами GPU, шейдерного блока и эффективной частотой памяти DDR2. Продукт, сочетающий все три максимальных параметра, не был найден. Впрочем, изощряться в таких поисках — задача неблагодарная, так как GF8500 с его 128-битной шиной уже перечеркивает любые надрывные усилия GF8400, особенно в варианте с DDR3.

Поэтому выбирается экземпляр, который обладает, по крайней мере, парой параметров выше среднего, по частоте GPU и шейдерного домена. Выбор пал на Asus EN8400GS (567/1400/800). Насколько удалось заметить, лучший заводской разгон DDR2 памяти для GF8400 был 1200МГц, на картах от BFG.

По внутреннему устройству GF8400 представляет собой половинку от GF8600 — 16 унифицированных шейдерных процессоров, 8 текстурных блоков (TMU) и 4 блока растеризации (ROP). Сразу можно сделать вывод о производительности, с учетом того, что и шина поуже и частоты другие.

Описывать Asus EN8400GS особого смысла не имеет, так как изделие в продаже давно и погостило на сайтах многих обозревателей. Ссылка на сайт производителя
http://www.asus.com/products.aspx?l1=2&l2=6&l3=551&l4=0&model=2094&modelmenu=1
Дадим только общий вид, как выглядит все то, что было внутри небольшой коробки:



Два бесполезных диска с драйверами и руководством, такой же бесполезный бумажный буклет и единственный полезный аксессуар — HDTV кабель.

Вытащенная из антистатического пакета карта наполнила воздух ароматом машинного масла. Сразу вспомнились оружейные комнаты, служба в ВС. Наверняка это связано с тем, что крупная отлитая заготовка радиатора нарезалась «ломтями» и отрезная фреза охлаждалась маслом. Все кромки острые, за исключением последних наружных зашлифованных ребер. Но следов подтеков не видно. К слову, у Asus EN8600GT Silent пассивный радиатор отливался индивидуально, острых кромок нет.
Частота графического процессора 567МГц, шейдерного домена 1400МГц, но частота памяти DDR2, вместо заявленных на сайте Asus 667МГц, составляет 800МГц, похоже вкралась опечатка. В спецификации Samsung, от августа 2008 года, о памяти с доступом 3нс, что соответствовало бы 667МГц DDR, уже не упоминается. Примененная 2.5нс память - K4N51163QZ-HC25, индекс Z говорит о том, что установлена самая последняя, 26-я ревизия данного типа графической памяти Samsung:



Видеокарта содержит 16 унифицированных шейдерных процессора и 4 блока растеризации, то есть ровно половинку от GF8600:



Понятно, что карта бюджетная, но несколько удивило, что радиатор закреплен всего на двух подпружиненных винтах (на плате, кроме этих отверстий, есть еще 4, незадействованных, под стандартные кулеры). При попытке снять установленную карту нечаянный нажим на радиатор приводит к тому, что он "отрывается" от чипа и елозит по его грани, упираясь в PCB. Так и до скола недалеко.


Инициализация Hybrid SLI

Сначала нужно настроить BIOS. Можно выбрать первичный адаптер (с которого у нас будет выводиться сигнал на монитор), им может быть как встроенная, так и внешняя карта. От перестановки слагаемых GF8300 + GF8400GS или GF8400GS + GF8300 сумма меняется, причем однозначный вывод о преимуществе какого-либо из этих вариантов на тестируемой платформе сделать нельзя.



В данном случае на скриншоте выбран вариант с подключенной внешней картой. Для перехода в режим Hybrid SLI опция Hybrid SLI Mode должна быть переведена в mGPU Always Enable, выбран размер системной памяти, выделяемый под графические нужды (на самом деле, ОС к этому добавит еще немного, не говоря уже о существенном объеме дополнительной памяти, которую может предоставить Windows Vista). Память выбираем, исходя из объема набортной памяти дискретного накопителя, то есть 512MB.

После загрузки ОС, на панели Windows появляется новая иконка, при наведении на которую показывается текущий режим Hybrid SLI, а при щелчке мышью — появляется меню с возможностью выбора режима:



Нас как раз и интересует выбираемый по умолчанию режим Boost performance. Он позволяет подключить до двух мониторов к первичному видеоадаптеру.

Но можно выбрать и режим Additional displays, что отключит режим совместной работы видеокарт, но позволит иметь четыре монитора в системе. При этом иконка меняет свой вид:



Казалось бы, технология SLI уже давно на рынке и такая мелочь, как Hybrid SLI, не должна была вызвать никаких затруднений у NVidia. На самом деле, не все было так просто и анонс несколько раз переносился - не получалось добиться прироста производительности. Впрочем, и текущий интегральный результат, который мы увидим ниже, далек от того прироста, который обеспечивает «полноценный» SLI.
Посмотрим на системную информацию, которую предоставляет NVidia Control Panel:



Примечательно, что в системе появилась новая видеокарта, GF8500! Правда, почему-то показывается только 8 потоковых процессоров.
GPU-Z также обеспечивает вывод информации для «новой» карты, в ипостасях GF8300 + GF8400GS или GF8400GS + GF8300:



Кроме того, видно, что работает 2-Way SLI. Параметры связки устанавливаются по первичному адаптеру, в данном случае по GF8300.

Интересно, что драйвер 180.60 (для CUDA 2.1) позволяет выбирать и адаптер, который будет выполнять обработку вызовов физического API PhysX:



По идее, такой выбор должен предлагать любой драйвер, если для карт не установлен режим Boost performance, но пока это не так. Скорее всего, все будущие драйверы будут допускать возможность выбора.


На некоторых версиях драйверов (не уследил, на каких именно) появляется дополнительное уведомление о включении этого режима и в контрольной панели (версия 2.2.310.00) отображаются дополнительные опции, помимо трея:



Надо сказать, что интерпретация «композитной» видеокарты, если брать за правильную форму ее представления как GF8500(8300+8400) или GF8500(8400+8300), не всегда корректно распознается различными программами. Например, 3DMark06 путает одиночную и Hybrid SLI, а вечноглючная Sandra SiSoft местами показывает их как две 8400GS, да и цифры вызывают сомнения:



Впрочем, возможно и отсутствие адаптации программ к материнской плате M3N78-EM, несмотря на то, что использовались самые последние их версии. Все-таки плата достаточно свежая. К примеру, GPU-Z 0.30 наделяет встроенную GF8300 обычной DDR, а Lavalys Everest не способен считывать и мониторить напряжение +5V.

Более того, драйвер 178.24 и после физического снятия GF8400GS с материнской платы информировал все заинтересованные программы (в частности, GPU-Z), что в системе установлена GF8500 (8300+8400). Прекратилось это только после переустановки драйвера видеокарты.

Тест разгрузки CPU

Как упоминалось выше, просмотр 2-х часового фильма с BluRay диска привел к выходу процессора с пассивным охлаждением на предельно допустимый тепловой режим. Не изменяя системы охлаждения и настроек работы CPU, попробуем выяснить, удастся ли избежать перегрева в случае использования Hybrid SLI.

Если быть до конца объективным, то NVidia на своем сайте, для видеокарты GF8400GS (слабейшей из выпускаемых), способность воспроизводить HD контент оценивает как хорошую. Все остальные видеокарты получают оценку «отлично». Разница между «хорошо» и «отлично» не объяснена. Но тогда не на отлично будет работать и GF8300. А так как Hybrid SLI выводит графический компонент на новые вершины производительности (пока будем надеяться), и устройство уже будет идентифицироваться как GF8500(8300+8400), то мы вправе при этом ожидать и такой же отличной оценки, какой удостоена GF8500. Ввиду отсутствия инструментальной базы и опыта оценки изображения, кроме опыта обыкновенного зрителя при проверке качества HD-контента, нашей целью будет выяснить, поможет ли Hybrid SLI снизить нагрузку на CPU так, чтобы пассивный режим охлаждения и отсутствие принудительной вентиляции в корпусе не приводили бы к закритическим температурным режимам.

Попытаемся провести опыт с просмотром фильма с Blu-Ray носителя (49 GB), фильм длится более 2-х часов. Вывод осуществляется на монитор Viewsonic 2435VM, через встроенный в M3N78-EM выход HDMI.

Данные по просмотру на встроенной одиночной GF8300 принимаем за исходную точку, включаем Hybrid SLI и пытаемся посмотреть фильм. Но тут нас поджидает неудача:



Cyberlink Power DVD Blu-Ray Edition не понимает такого включения и отказывается проигрывать фильм, жалуясь на неподходящий драйвер. Откатываемся на WHQL 178.24, но ничего не меняется. Без включенного режима Boost performance - никаких проблем. Поскольку остальные 2D и 3D приложения не имели никаких претензий к режиму Boost performance, то, очевидно, проблема в программе от Cyberlink. Других легальных программ для проигрывания BD у меня нет, бесплатная Oxygen из-за нарушения авторских прав канула в лету, поэтому будем ждать доработок от Cyberlink.

Конечно, этого ждать можно долго, но проблема перегрева при пассивном охлаждении решается и путем создания небольшого движения воздуха в корпусе, но это тема для отдельного разговора.

Тем не менее, давайте убедимся, что две слабые видеокарты теоретически смогут разгрузить процессор на рассматриваемой платформе. Для этого воспользуемся программой встроенного мониторинга от Lavalys Everest - прогреем процессор встроенным в программу стресс-тестом в течение получаса, затем сделаем два прогона 3DMark06, с одиночной картой и в режиме Hybrid SLI. Вот что в итоге получается:



Сиреневым цветом показывается температура со встроенного в GF8300 датчика, красным - температура GF8400, желтым — температура материнской платы. На нижнем графике — загрузка CPU. Температура процессора (зеленый и голубой цвет) показывается с занижением в 15°, поэтому в конце первого получаса (между вертикальными штриховыми линиями на верхнем рисунке) реальная температура составляет 75°. Ввиду «застаивания» горячего воздуха в условиях отсутствия принудительного обдува, теплообмен ухудшается и постепенно температура процессора будет немного, но повышаться, о чем уже было сказано. Кроме того, нагрев чипсета выше 100° не радует, кстати, боксовый процессорный кулер эффективно охлаждал его, и, при любых нагрузках, радиатор чипсета был холодным. К сожалению, невысокая культура азиатской ручной сборки требует обязательной перепроверки правильности постановки радиатора и наличия адекватной теплопроводящей пасты. Например, вот так выглядела окаменевшая рельефная «термопаста» на первом из моих адаптеров GF8600GT (всего их было 4 штуки, на трех других ситуация была получше):



Это приводило к показаниям датчика температуры около 120° под нагрузкой, впрочем, такая температура не является разрушительной для видеокарты, но явно не расчетная, а с нормальным термоинтерфейсом максимальная температура на 25° ниже.
У чипсета GF8300 на M3N-78EM температура по датчику GPU, без обдува (даже косвенного), составляет 100° в покое и до 118° под нагрузкой, что тоже наводит мысли о некачественном термоинтерфейсе. Впрочем, нагрев чипсета и на предыдущих поколениях интегрированных адаптеров от NVidia очень сильный.
Но борьба за лучший тепловой режим в этой статье не рассматривается. К тому же, такие температуры оказывают больше психологический эффект на владельца, нежели наносят реальный вред.

Сейчас нам более интересно сравнить, как изменится нагрузка на процессор при включенном Hybrid SLI. После остывания процессора до температуры простоя, запускаем 3DMark06 (Hybrid SLI включен), затем даем немножко остынуть системе, выключаем Hybrid SLI (виден характерный всплеск активности процессора) и делаем еще один прогон 3DMark06. Результаты тестов - тема следующей главы, а в контексте текущей темы хорошо видно, что средняя нагрузка на процессор в графических тестах существенно ниже при включенном Hybrid SLI (характерные стопроцентные двойные пики нагрузки CPU в середине каждого прогона соответствуют двум CPU - тестам в 3DMark06).

По всей вероятности, точно также мы бы разгрузили процессор, просматривая и Blu-Ray фильм в режиме Hybrid SLI, если бы не проблема с программой от Cyberlink. Это подтверждается и тем, что при просмотре HD не наблюдается перегрева в связке Athlon X2 4850е с GF8600, также при такой видеокарте без проблем проигрываются Blu-Ray фильмы и с процессором Athlon X2 3800+, в отличие от работы Athlon X2 3800+ с интегрированной GF8300.

Тестирование производительности

Видеоустройства GF8300 и GF8400 имеют одинаковое внутреннее строение. В номинальном режиме GF8300 имеет преимущество более 7% по частоте шейдерного блока, в то время как Asus EN8400GS обладает более высокой частотой GPU, примерно на 11%. Частота памяти DDR2 одинакова у обеих карт. Казалось бы, производительность не должна серьезно отличаться, но на поверку это совсем не так. Этот факт, подтверждающий, что дискретное решение, сделанное на том же GPU, выиграет у встроенного, давно известен и обусловлен тем, что системная память, хоть и выделенная чисто для графики, является ахилессовой пятой встроенных видеоускорителей и требует относительно более долгого времени для доступа. И никакой разгон всех трех частот соотношение сил существенно не изменит, фактически только приведет к напрасному перегреву, особенно в нашем случае, когда все охлаждается пассивно.

Попробуем определить, в каких именно случаях встроенная видеокарта уступает дискретной. Теоретически, это отставание будет тем хуже, чем больше обращений в секунду происходит к видеопамяти, ибо при равной скорости именно латентность доступа GPU к системной памяти и будет сказываться.

На упомянутой во введении конфигурации проведем сравнение производительности встроенной видеокарты GF8300, одиночной Asus EN8400GS, совместную работу этих двух карт в Hybrid SLI Boost Performance и все это на фоне заведомо более быстрой Asus EN8600 GT Silent/HTDP/256M/A (560/1188/1400).

Тестирование будет производиться в стандартных синтетических бенчмарках Futuremark версий 3DMark2003, 3DMark2006 и 3DMark Vantage. Так как игры меня интересуют только с точки зрения реализации технических и программных решений, то полными версиями игр я, как правило, не обладаю, и мы воспользуемся любезно предоставленными сайтом NVidia демо-версиями со встроенными бенчмарками, это будут DevilMayCry4 (для DX10), технодемо Nurien и PT Boats, все с настройками по умолчанию. Ввиду того, что рассматриваемые карты находятся в низшей категории производительности, играбельность не оценивается вообще (да и не игрок я).

Начнем с бенчмарков от FutureMark.


3DMark20033DMark20063DMark Vantage
GF83003000940P70
GF8400GS54001650P460
Hybrid SLI39002000Failed
GF8600GT139004600P1500





3DMark2003


Интересная картина получается. Hybrid SLI дает реальный прирост только в трех тестах, по сравнению с GF8400 — двух тестов на закрашивание и по скорости выполнения вершинного шейдера. В большинстве других тестов Hybrid SLI показывает результат, существенно худший, чем у одиночной карты GF8400. Правда, некоторый прирост от GF8300 есть всегда, но вывод можно сделать — в старых 3D приложениях Hybrid SLI включать не рекомендуется. Посмотрим, как пойдут дела в более современных приложениях


3DMark2006


Тут мы к участникам, помимо Hybrid SLI с ведущей GF8300, добавили и Hybrid SLI с ведущей GF8400.
В целом, Hybrid SLI в этом бенчмарке реабилитируется, и по итоговому счету на 30-40% превосходит сильнейшую из карт в связке, а производительность GF8300 превышена вдвое.
Однако, на этот раз тест «простого» вертексного шейдера (VShS) оказывается не по зубам для Hybrid SLI, в «сложном» (VShС) тоже проигрыш, но только совсем чуть-чуть. В тесте генерации частиц Hybrid SLI, во главе с «ведущей» GF8400GS, впервые и единственный раз в бенчмарке опускается ниже одиночной GF8300, видимо так влияют дополнительная синхронизация и множественные ожидания окончаний операций с памятью в GF8300. При смене «ведущей» карты на встроенную, более быстрый отклик дискретной карты позволяет превзойти результат одиночной GF8300, но проигрыш одиночной GF8400GS более, чем вдвое. Вот к чему приводит наличие множества запросов на операции с высоколатентной памятью.

При рендеринге 2D по алгоритму Перлина оба варианта Hybrid SLI на высоте.


3DMark Vantage (Performance Level, но для этих карт и с Entry Level радости не будет намного больше):


3DMark Vantage


В этом бенчмарке Hybrid SLI проходит первый тест, но второй тест уже не загружается. Можно было поработать с настройками 3DMark, но гуманнее досрочно прекратить мучения этих карточек, так как даже GF8600 не предназначена для такого бенчмарка (кстати, в тесте GPU2 ее преимущество боле 6000%).
Да и вид женоподобных охранников в первом графическом тесте, с фигурами лиц неопределенной ориентации, смахивает на пропаганду от разработчиков. На мой взгляд, выглядит отвратительно.

Без комментариев ( это о никудышной производительности в бенчмарке).

А что с разгоном? Может, поможет?
Простое повышение частот у слабейшего звена на 40% , до 700МГц для GPU и на 15% по шейдерному домену ничего не дали. Прирост результата по 3DMark06 всего 3%, что ниже инструментальной ошибки данного бенчмарка. Поэтому нет смысла в разгоне встроенного чипсета и ухудшение его и без того напряженного теплового режима. Дискретная видеокарта на разгон отреагирует, но слабое звено не даст реальных преимуществ для пропорционального роста производительности связки, так как именно Hybrid SLI — предмет нашего внимания.

В то же время, разгон и вольтмод дискретной видеокарты обеспечат ей заметную прибавку. Материалов в сети по разгону GF8400 достаточно, например,http://www.madshrimps.be/?action=gethowto&howtoID=76

Переходим к играм.


Игровые тесты


Встроенный бенчмарк DevilMayCry 4 показывает хорошую реакцию на HybridSLI, мне трудно судить, как это скажется на игре, но просмотру это явно идет на пользу. Фризы, естественно, встречаются, но, в целом, камера движется плавно и большей частью даже комфортно, чего не скажешь об одиночных картах (кроме GF8600). После 4-х тестов бенчмарк выдает средние значения fps и даже рисует его график, правда, очень мелко. Кроме того, присваивается индекс производительности, пишется вердикт и дается рекомендация. Например, карте GF8600 присвоен индекс «B», вердикт - «Stylish action is possible» (Комфортный уровень игры обеспечивается), но рекомендация — произвести апгрейд системы. Остальные участники попали в категорию «D» с выводом «Комфортный уровень игры не обеспечивается».

Nurien - новая технодемо в виде показа мод, с интенсивным использованием GPU для физических вычислений. Также в первой тройке на сайте NVidia (по времени появления) была и демо китайской игры MKZ, но просмотр разочаровал, это все элементарно делалось с любым 3D бейсиком и враппером PhysX года три-четыре тому назад.

PT boats была добавлена, так как в DMC4 встроена защита от DirectX – отладчика, а Nurien обеспечивает довольно однородную равномерную нагрузку на видеокарту. Зачем же нам отладчик?
Страшненькая по графике PT boats как раз и послужит материалом для следующей главы, которая появилась потому, что во многих обзорах игр и видеокарт показываются минимальные и максимальные fps и на их основании делаются какие-то выводы. Не то, чтобы это было совсем не верно, дело в том что эти цифры никакого отношения к правде не имеют и ссылка на них показывает не совсем правильное понимание проблемы минимального fps. Как делать чуть более правильно, будет рассказано в следующей главе.

О минимальном fps в играх

Как правило, fps замеряется на базе точного измерения времени, как показано во вспомогательных утилитах к примерам из состава DirectX SDK (если говорить о DirectX играх, но это не принципиально). Часто такое измерение соответствует своему названию «frame per second», то есть, параметры измеряются и отображаются с секундным интервалом. Разработчик (маркетолог) не связан ограничением временного интервала,может взять полусекундный базис, а измеряемое значение может приводиться к «per second», к примеру, простой экстраполяцией. Но чем меньше интервал, тем точнее fps и, в конце концов, мы придем к настоящей правде — мгновенному значению fps. На самом деле, эта величина - обратная по отношению к действительно контролируемой при разработке игры величине времени рендеринга каждого фрейма. И именно по анализу времени рендеринга разработчики ищут узкие места и принимают меры по увеличению производительности своей программы, так как, несколько упрощая, в игре присутствуют два относительно независимых цикла — просчета логики игры (в т.ч. появление, изменение координат и ориентаций объектов) и собственно рендеринга. Для каждого фрейма эти времена изменяются. Как правило, логика привязывается к расчетному значению fps с тем, чтобы на разных по производительности компьютерах «внутреннее время игры» было одинаковым, к примеру автомобиль в одинаковых сценах двигался с одной и той же скоростью. Соответственно, возможно несколько состояний в отношениях этих величин.

К примеру, обычно расчетное время логики игры равно 16.7мс, что соответствует 60 fps. Если рендеринг укладывается в это время, то все просто великолепно. Проблемы начинаются, когда он не укладывается, в худших случаях это приведет к тому, что пропускаются несколько логических циклов игры, во время которых некоторые объекты успевают появиться и исчезнуть, а на экране мы всего этого не увидим.
Применительно к PT boats, на встроенной GF8300 так и не удастся увидеть ни одной вспышки пламени при выстрелах ни с кораблей, ни с катеров. Hybrid SLI дает увидеть одну-две вспышки, одиночная GF8400 выглядит получше, а GF8600 позволяет вовсю насладиться страшненькой спрайтовой анимацией красными кругляшками (впрочем, в 3DMark06 вспышки от выстрелов не многим лучше, за исключением пулеметчика).

Из-за этого происходят и рывки игровых объектов, так как, при нерасчетном времени рендеринга, «лишние» логические циклы загоняют объект в новые координаты, а мы в это время на экране видим их еще по старым. В то время, как «ожидаемые глазами» координаты соответствуют следующему логическому циклу, он для рендеринга уже потерян, поэтому, при слабых видеокартах, и идут постоянные чередования плавного движения и рывков, в худшем случае — полное слайд-шоу.

Существуют различные инструменты для анализа 3D приложений, к примеру, в комплекте с DirectX SDK идет програма PIX for Windows. Вот как в ней выглядит бенчмарк PT boats для наших видеокарт, красным цветом показывается мгновенный уровень fps:



Верхние две полосы на гаждом графике — это события для CPU и GPU в каждом фрейме, они при таком масштабе просто сливаются в сплошную черную полосу, но мы эти события рассматривать не будем. Просто обратим внимание на номер фрейма на всех четырех картинках, который как раз показан между полосами, который соответствует одному и тому же эпизоду (это момент, когда камера обогнула подводную лодку у острова и развернулась на 180°, в кадре появляются корабли). Видно, что к этому моменту рендеринг GF8300 пропустил больше половины кадров, которые видны с GF8600, и это при том, что и GF8600 не справляется с расчетным временем рендеринга. Отметим уровень мгновенного fps в 3-4 кадра в секунду у всех, при том, что для GF8600 бенчмарк рапортует о минимальном значении 12 кадров в секунду.
Падение fps в этом месте обусловлено тем, что в поле зрения попадают корабли на горизонте (вдалеке), без использования LOD (уровней детализации), что дает сильную мгновенную нагрузку на CPU и GPU.
Кроме того, заметно, что каждое изменение поверхности рендеринга (например, рендеринг в простую или кубическую текстуру, используемую для выводов дальних планов облаков, фона и т.д, карт теней и др.), которое видно по пикам синего графика, также сопровождается падением fps, так как является относительно долгой операцией.
К таким же операциям относятся и изменения установок рендеринга (зеленый график), хорошо видна сильная корреляция с fps.

В последней четверти бенчмарка падение мгновенного fps связано с генерацией большого числа спрайтов, изображающих всплеск воды при попадании торпеды в корабль.

Такие падения не фиксируется "минимальным" fps, это видно только на мгновенном графике. Не факт, что визуально это может быть заметно всегда, но на фоне низкого среднего fps, при "провалах" подряд или с маленьким интервалом, фризы обеспечены.

Конечно, приведенный график не позволяет провести детальный анализ, для этого требуется более долгая и подробная работа с PIX. В частности, анализируются все системный вызовы и вызовы DirectX, на график можно вывести практически любую информацию, включая влияние TCP/IPV4-6, что важно для онлайн игр, можно проанализировать качество отрендеренного изображения каждого фрейма, при различных настройках и установках, анализ использования ресурсов и т.д.

Цель данной главы — показать, что указываемые в бенчмарках и тиражируемые на сайтах «анализы» максимального и минимального fps делаются на основе неких усредненных значений, а не мгновенного fps, и никакой смысловой нагрузки не несут.
Поэтому на графиках в статье они и не приведены. Другое дело средний fps, на который уже можно ориентироваться.


Коротко о неграфических вычислениях

С точки зрения компьютера никакой разницы между графическими и не графическими устройствами, конечно же, нет. Просто человек так устроен, что ему надо все классифицировать сообразно своему пониманию процессов, от чего, кстати, иногда получается совершенно противоположный результат, запутывающий и усложняющий природную простоту вещей.

Эволюция, в ее локальном применении к компьютерной технике, вновь совершила очередной виток. Изгнанные из CPU в специализированные GPU «графические» функции, привели к такому бурному развитию GPU, что уже в некоторых задачах современные GPU, превосходящие CPU по числу ALU в сотни раз, оказались же во столько раз и быстрее.
И теперь уже GPU в состоянии «отобрать» у CPU часть задач для более эффективной обработки, если эти задачи удовлетворяют некоторым условиям, в первом приближении принято называть, что они «хорошо распараллеливаются», то есть можно создать несколько параллельно работающих вычислительных потоков. Уже средний локальный современный компьютер способен стать центром весьма серьезных научных вычислений.
Например, уже несколько лет на слуху технология NVidia CUDA, доступная для всех после появления карт восьмой серии, http://www.nvidia.com/object/cuda_home.html

Как интегрированная GF8300, так и GF400GS поддерживают эту технологию:



Правда, производительности этих GPU не всегда хватает даже на то, чтобы победить Athlon X2 4850e.

Подобную технологию имеет и AMD. Разумеется, и Microsoft не осталась в стороне, выпустив свой вариант программы (bsgp) для использования GPU при решении общевычислительных задач. Но он во многом основывается на подходах CUDA и требует некоторых файлов из CUDA SDK. Странно звучит и заявление о производительности, не хуже чем у CUDA и большем удобстве для работы, хотя декабрьский релиз по-прежнему работает только в 32-разрядной WindowsXP SP2, а CUDA с версии 2.0 уже полностью поддерживает 64-разрядные Windows Vista. Но у Microsoft есть безусловный козырь в рукаве — интеграция соответствующих API в свои SDK и ОС, что, со временем, может сместить акценты разработчиков.

Впрочем, тема о неграфических вычислениях на GPU заслуживает отдельной статьи.

Подведение итогов

Производительность интегрированного решения GF8300 позволяет сегодня комфортно выполнять, при наличии не самого слабого процессора, просмотр Full HD контента, тем более ему по плечу и другие 2D приложения. В 3D ситуация, хоть и существенно лучше предыдущего поколения встроенной графики (да и, судя по сторонним тестам, Intel X4500), но с трудом позволяет наблюдать даже за картинкой в бенчмарках современных игр, а в шутерах, очевидно, создаст абсолютно неприемлемые игровые условия, даже в небольших разрешениях.
Впрочем, для любителей поиграть существует великое множество игр предыдущих лет, которые на этом ускорителе обеспечат комфортную игру.

Технология NVidia Hybrid SLI, в некоторых случаях, может помочь встроенному GF8300, но приросту, наблюдаемому в новых играх, и который, по большому счету, реального комфорта не добавляет, в относительно старых 3D приложениях сопутствует падение производительности ниже уровня одиночной карты GF8400GS. Таким образом, установка второй слабой видеокарты в режим Hybrid SLI, в целом, не целесообразна, хотя наличие второй видеокарты может быть оправдано, если в некоторых специфических случаях требуется разгрузка CPU, например, при выводе Full HD контента, или для тренировки навыков в среде программирования CUDA (или bsgp).

Чипсет GF8300 предлагает еще одну особенность, при работе с картами класса GF9800, о которой упоминалось - Hybrid Power, но только ради этого покупать такую карту нет никакого желания, так как меня даже не вдохновила на покупку текущая лидирующая серия 280/260, которую я так ждал. НО тесты Hybrid Power есть в сети.

За рамками рассмотрения осталась и тема мультимониторной конфигурации. Хотя у меня на столе три монитора (точнее, на столе один, над ним подвешен на кронштейн второй, а третий — где придется, обычно слева на колонке), но я никогда не подключал к одному компьютеру более двух мониторов. А то, что Nvidia Control Panel позволяет настроить одновременно вывод изображения на разные мониторы с разным разрешением, наверное, знают все.

Желаю всем оверклокерам и другим хорошим людям удачного Нового Года, высказаться по теме статьи можно здесь .

zauropod, специально для www.overclockers.ru
25 декабря 2008 года

Happy New Year!
Оценитe материал

Возможно вас заинтересует

Популярные новости

Сейчас обсуждают