СОДЕРЖАНИЕ
- Введение, особенности видеокарт
- Конфигурации стендов, список тестовых инструментов
- Результаты тестов: Serious Sam: The Second Encounter
- Результаты тестов: Code Creatures
- Результаты тестов: Unreal Tournament 2003
- Результаты тестов: Unreal II: The Awakening
- Результаты тестов: RightMark 3D
- Результаты тестов: TRAOD
- Результаты тестов: FarCry
- Результаты тестов: Call Of Duty
- Результаты тестов: HALO: Combat Evolved
- Результаты тестов: Half-Life2(beta)
- Результаты тестов: Splinter Cell
- Результаты тестов: Quake3 Arena
- Результаты тестов: Return to Castle Wolfenstein
- Результаты тестов: DOOM III
- Результаты тестов: 3DMark05 Game1 (с графиком FPS по времени)
- Результаты тестов: 3DMark05 Game2 (с графиком FPS по времени)
- Результаты тестов: 3DMark05 Game3 (с графиком FPS по времени)
- Результаты тестов: 3DMark05 MARKS
- Выводы
Сегодня у нас будет очень интересное исследование. Достаточно давно, когда только стали появляться платформы с поддержкой PCI-Express, NVIDIA объявила о том, что ее видеокарты из семейства High-End, а затем и Middle-End (GeForce 6600GT) имеют потенциал работы в паре друг с другом. И, учитывая, что все патенты и торговые марки бывшей 3dfx ныне принадлежат NVIDIA, названия для новой технологии искать не пришлось, была взята хорошо известная аббревиатура SLI. Но! Это не тот же Scanline Interleaving, что мы видели в связке двух Voodoo2. SLI — это Scalable Link Interface.
Напомню, что SLI на Voodoo2 распределял работу между двумя картами — ПОСТРОЧНО. То есть, нечетные строки обрабатывала первая карта, четные — вторая. И это было жестко закреплено драйвером. Передача данных (готовые линии) для объединения в буфере первичной карты происходила по VGA-LOOP-кабелю с синхронизацией по специальному SLI-переходнику, представляющему собой кусок от шлейфа, напоминающего Floppy.
NVIDIA SLI работает иначе. Да, так же, как и в случае последних многочиповых решений от 3dfx, образуются так называемая ведущая карта (Master, Primary) и ведомая карта (Slave, Secondary). В мастер-карте формируется специальный буфер, где производится «сшивание» картинки. Впрочем, о методах работы многочиповых решений мы уже писали и много раз, поэтому повторяться не будем.
Заметим, что внутри соответствующих чипов (NV45, NV43) имеется специальный блок, отвечающий за SLI, он работает с общими ресурсами для двух плат. Обмен данными производится по шине, а синхронизация — через специальный переходник-коммутатор, одеваемый на обе карты (см. на снимках ниже).
Теоретически, SLI может работать в двух режимах:
- Делить экран и работу пополам (предельный случай), или же варьировать нагрузку на каждый GPU в зависимости от приложения и работы драйвера. Но одно ясно: каждая карта работает со своей полосой (режим 3dfx Voodoo5, XGI Volari DUO).
- Отдавать каждой карте (и каждому GPU) работу над кадром полностью, но, чередуя кадры: четные обрабатывает одна карта, нечетные — вторая, (режим RAGE MAXX).
Второй режим пока не работает (вернее, его не включить), поэтому пока рассматриваем работу SLI как деление между картами работы над одним кадром.
На сегодня SLI официально поддерживают видеокарты NVIDIA GeForce 6800 GT/Ultra PCI-E (NV45) и GeForce 6600GT (NV43). Хотя, как я уже говорил выше, теоретически все карты на базе NV45/43 способны на это, поэтому вероятно PCB у 6600/6200 не имеют контактов для подключения коммутатора чисто по маркетинговым соображениям. Следовательно, вполне можно допустить, что впоследствии на рынке появятся и дешевые платы ценой до 100 долларов, поддерживающие SLI.
Остается много вопросов о том, как работает SLI в нынешних условиях современных 3D-технологий с точки зрения рендеринговых ресурсов. Если раньше во времена Voodoo все было более-менее ясно: там шла лишь растеризация, поделили тривиальную работу пополам и все. Расчеты геометрии, освещения (если оно вертексное) — все ложилось на CPU.
А теперь иное. Взять хотя бы работу шейдеров, в которых, грубо говоря, заложена обработка поверхностей объектов. А как быть, если объект расположен на стыке границ работы двух GPU? Оба процессора должны считать один и тот же шейдер и выполнять лишнюю работу? Или один посчитает весь объект, и половинку информации передаст второму? — Не может быть просто физически. Вероятно, все же, будут некоторые потери производительности на накладные расходы как раз по тем объектам, что на границе, стыке между полосками, за которые отвечают первый и второй GPU.
А дальше больше: как же будет работать адаптивная анизотропия, когда подчас надо обладать информацией большей, чем предназначено для одного GPU? Поэтому, пока это неизвестно, мы будем изучать этот вопрос дальше. Одно четко ясно: расчеты геометрии, загрузка текстур — дублируются двумя картами.
Сегодня нас интересует практика.
И практика такова, что она наталкивается на сложности в доступности… нет, не самих карт или коммутаторов (хотя последние явно в дефиците), а в недостатке самих платформ, имеющих два PCI-Express x16/x4 (x8/x8) слота. Известно, что производители системных плат так и не выпустили материнки на базе i9xx с такой поддержкой для настольных и игровых систем, а сейчас это возможно увидеть лишь на серверных решениях на базе i75xx. Поэтому в стане Pentium4 не будет радостей от SLI, пока кто-то не сделает разводку или x16+x4 или x8+x8 в виде двух полноценных слотов под видеокарты. Вероятно, или VIA или SIS могут заявить о ревизиях своих решений с поддержкой SLI под P4, но пока ничего на сей счет неизвестно. Разумеется, NVIDIA, получив лицензию на шину P4, уже готовит соответствующий nForce и под эту платформу с поддержкой SLI, как уже официально вышел nForce4 под платформы AMD Athlon64/FX/Opteron.
Да, или nForce4 SLI + AMD-процессор последнего поколения, или почти серверная платформа на базе i75xx с одним или двумя Intel Xeon. Всем понятно, что первое будет намного дешевле.
Будет ли SLI дополнительным козырем у AMD в части проталкивания своих решений среди Hardcore Gamers? Пока сложно сказать, поскольку и nForce4 толком даже еще не появился (только ранние сэмплы), и, как я уже говорил, коммутаторов SLI в продаже не найти, а с видеокартами они пока не поставляются, и вообще, есть сведения, что и не будут поставляться. А только лишь вендоры, выпускающие системные платы на nForce4 SLI будут в комплекты с материнками класть такие адаптеры.
Итак, мы все ближе к тестированию самих карт. Название статьи указывает на то, что на сегодня мы провели исследование лишь на платформе Intel. Читатели должны понимать, что эта штука не предназначена для игр, и даже Xeon 3.4 GHz совместно с мощной системной платой показал, что производительность упала ниже, чем было ранее на Pentium4 3.2GHz (i875P) (регистровая память DDR333 сильно медленнее, чем общеизвестная DDR400). Но, тем не менее, это нам не помешало получить очень интересные результаты.
Должен отметить, что главным условием работы SLI на сегодня является полная ИДЕНТИЧНОСТЬ видеокарт, входящих в пару SLI. Я провел эксперименты с несколькими GeForce 6600GT от разных производителей, и скажу, что только видеокарты от Leadtek и Palit смогли работать вместе, драйвер их связку определял корректно, и SLI организовывал. В остальных случаях драйвер извещал, что одна из двух карт не совместима со SLI. Тасовались между собой видеокарты производства кроме вышеупомянутых фирм, еще Gainward, Gigabyte.
Чтобы эксперимент был чист, мы взяли по паре reference card, которые точно являются идентичными внутри каждой пары.
Мы использовали по ПАРЕ нижепредставленных карт:
Установка и драйверы
Конфигурации тестовых стендов:
- Компьютер на базе Xeon 3400 MHz
- процессор Intel Xeon 3400 MHz (L2=1024K);
- системная плата SuperMicro X6DA8-G на чипсете iE7525;
- оперативная память 2 GB DDR SDRAM 333MHz Registered ECC;
- жесткий диск WD Caviar SE WD1600JD 160GB SATA.
- операционная система Windows XP SP2; DirectX 9.0c;
- монитор Mitsubishi Diamond Pro 2070sb (21").
- драйверы NVIDIA версии 66.81/66.93.
VSync отключен.
Пара видеокарт GeForce 6800GT PCI-E
Пара видеокарт GeForce 6600GT
Адаптер-синхронизатор:
Примечание: прошу не удивляться, что на снимках видны разные вентиляторы на CPU. Штатный вентилятор был такой шумный, что даже голова начала болеть (сильный свист на высоких частотах), поэтому пришлось его снять и временно установить обычный вентилятор от БП, который успешно обдувал медный радиатор без всякого шума, при этом последний был почти холодным (зачем ставить 7000-оборотный и очень шумный вентилятор на такой радиатор?).
На скриншоте с настроек драйвера хорошо видно, что при детекте SLI у драйвера появляется новая закладка с предложением включить SLI, и в качестве опции, активизировать показ загруженности каждого GPU. Последний (показ) представляет собой горизонтальную полосу, идущую примерно в 1/3 экрана снизу, которая накладывается поверх всех приложений, и слева в ней бегает индикация загрузки первого GPU, а справа — второго. Можно видеть, как постоянно перераспределяется нагрузка между ними. Впрочем, во всех случаях отклонения от 50/50 были редкими и не более чем 40/60 или 60/40 процентов.
Частоты работы GeForce 6800 Ultra получались разгоном карт GeForce 6800GT (ДО УСТАНОВКИ SLI!) каждой в отдельности.
Результаты тестов: сравнение производительности
В качестве инструментария мы использовали:
- Serious Sam: The Second Encounter v.1.05 (Croteam/GodGames) — OpenGL, мультитекстурирование, ixbt0703-demo, настройки тестирования: quality, S3TC OFF
- Quake3 Arena v.1.17 (id Software/Activision) — OpenGL, мультитекстурирование, ixbt0703-demo, настройки тестирования все на максимальном уровне: уровень детализации — High, уровень детализации текстур — №4, S3TC OFF, плавность кривых поверхностей резко увеличена при помощи переменных r_subdivisions «1» и r_lodCurveError «30000» (подчеркну, что по умолчанию r_lodCurveError «250» !), конфигурации можно скачать тут
- Code Creatures Benchmark Pro (CodeCult) — игровой тест, демонстрирующий работу платы в DirectX 8.1, Shaders, HW T&L.
- Unreal Tournament 2004 v.3323 (Digital Extreme/Epic Games) — Direct3D, Vertex Shaders, Hardware T&L, Dot3, cube texturing, качество High
- Unreal II: The Awakening (Legend Ent./Epic Games) — Direct3D, Vertex Shaders, Hardware T&L, Dot3, cube texturing, качество по умолчанию
- RightMark 3D v.0.4 (одна из игровых сцен) — DirectX 8.1, Dot3, cube texturing, shadow buffers, vertex and pixel shaders (1.1, 1.4).
- Tomb Raider: Angel of Darkness v.49 (Core Design/Eldos Software) — DirectX 9.0, Paris5_4 demo. Тестирование проводилось при максимально установленном качестве, выключены были лишь Depth of Fields PS20.
- HALO: Combat Evolved (Microsoft) — Direct3D, Vertex/Pixel Shaders 1.1/2.0, Hardware T&L, качество максимальное
- Half-Life2 (Valve/Sierra) — DirectX 9.0, demo (ixbt07. Тестирование проводилось при включенной анизотропной фильтрации, а также в тяжелом режиме с АА и анизотропией.
- Tom Clancy's Splinter Cell v.1.2b (UbiSoft) — Direct3D, Vertex/Pixel Shaders 1.1/2.0, Hardware T&L, качество максимальное (Very High); demo 1_1_2_Tbilisi
- Call of Duty (MultiPlayer) (Infinity Ward/Activision) — OpenGL, мультитекстурирование, ixbt0104demo, настройки тестирования — все на максимально возможном уровне, S3TC ON
- FarCry 1.3 (Crytek/UbiSoft), DirectX 9.0, мультитекстурирование, demo01 (research) (запуск игры с опцией -DEVMODE), настройки тестирования все Very High.
- Return to Castle Wolfenstein (MultiPlayer) (id Software/Activision) — OpenGL, мультитекстурирование, ixbt0703-demo, настройки тестирования — все на максимально возможном уровне, S3TC OFF,
- DOOM III (id Software/Activision) — OpenGL, мультитекстурирование, настройки тестирования — High Quality (ANIS8x),
- 3DMark05 (FutureMark) — DirectX 9.0, мультитекстурирование, настройки тестирования — trilinear,
Также, если кто-то из читателей хочет получить демки-бенчмарки, которыми мы пользуемся, то напишите на мой e-mail.
Serious Sam: The Second Encounter
- 6800Ultra SLI — против 6800Ultra — при АА+АФ видим, что прирост до 36%, что не удивительно, ведь как я уже говорил ранее, данная платформа накладывает сильные ограничения, а в этой игре даже АА+АФ не помогают полностью загрузить такие карты.
- 6800GT SLI — против 6800GT — аналогично, но приросты немного больше.
- 6600GT SLI — против 6600GT — аналогично.
В целом +40-50% — очень даже ничего… Во всяком случае, ранее известные SLI или двухчиповые решения не давали и такого.
Code Creatures
- 6800Ultra SLI — против 6800Ultra — при АА+АФ прирост до 78%! Хотя без АА+АФ снова все уперлось в систему. Но все же этот тест больше зависит от GPU, и потому мы видим работу SLI почти на полную мощность.
- 6800GT SLI — против 6800GT — до 95% прироста!!! То есть почти в 2 раза! Прекрасный тест для SLI! :) наверняка накладных расходов по смежным объектам, попадающим в сферу деятельности обоих процессоров, почти нет.
- 6600GT SLI — против 6600GT— несмотря на то, что карта более слабая, и, казалось бы, влияние системы должно быть меньше, а эффект от SLI выше, этого не случилось. Оставим это на совести драйвера.
Unreal Tournament 2004
- 6800Ultra SLI — против 6800Ultra — и снова при АА+АФ прекрасные результаты! до 82% прироста скорости!
- 6800GT SLI — против 6800GT — аналогично.
- 6600GT SLI — против 6600GT — результаты чуть более скромные.
Unreal II: The Awakening
- 6800Ultra SLI — против 6800Ultra — тест явно уперся в системные ресурсы, поэтому приросты по скорости весьма скромные.
- 6800GT SLI — против 6800GT — аналогично.
- 6600GT SLI — против 6600GT— тут все оказалось на своих местах: карта слабее, поэтому влияние системных ресурсов уже меньше, а, следовательно, отдача от SLI — выше. И она дала до 78% прироста по скорости!
RightMark 3D
Результаты аналогичны предыдущим.
TR:AoD, Paris5_4 DEMO
- 6800Ultra SLI — против 6800Ultra— тест полноценно задействует видеокарты, от системных ресурсов мало что зависит, и результат налицо: до 96% прироста по скорости!
- 6800GT SLI — против 6800GT — аналогично.
- 6600GT SLI — против 6600GT — почти то же самое.
Даже глаза не верят в это… А ведь повторяю, что расчеты геометрии, загрузка текстур — все делается обеими картами (дублирование). Но все равно, грамотное разделение драйвером расчетов по шейдерам между картами дало потрясающий эффект.
FarCry, demo01
Аналогично! Лишь у 6800 Ultra приросты от SLI чуть ниже из-за ограничений по системным ресурсам. Но все равно, в Far Cry получить прирост в 90% скорости — это дорогого стоит! Хотя платформа iE7525 так, собственно, и стОит.. :)
Call of Duty, ixbt04
- 6800Ultra SLI — против 6800Ultra — системные ресурсы ограничивают скорость работы карт даже при АА+АФ, поэтому приросты не столь велики.
- 6800GT SLI — против 6800GT — аналогично.
- 6600GT SLI — против 6600GT — здесь уже все в порядке, прирост очень велик при АА+АФ, когда от системных ресурсов мало что зависит при работе с такими картами.
HALO: Combat Evolved
Аналогично. Чем слабее карта, тем выше эффект от SLI.
Half-Life2 (beta): ixbt07 demo
То же самое. Я думаю, комментарии не требуются.
Splinter Cell
- 6800Ultra SLI — против 6800Ultra — почти нет приростов, все уперлось в систему.
- 6800GT SLI — против 6800GT — эффект от SLI стал более заметнее, но все равно влияние CPU еще очень велико.
- 6600GT SLI — против 6600GT — здесь максимальный эффект по росту производительности.
Quake III Arena
Комментарии не требуются.
Return to Castle Wolfenstein (Multiplayer)
Аналогично.
DOOM III
Превосходные результаты у всех карт! Разумеется, речь идет о режиме АА+АФ. Хотя у 6600GT и без него эффект от SLI очень впечатляет.
3DMark05: Game1
- 6800Ultra SLI — против 6800Ultra — до 62% рост производительности от SLI!
- 6800GT SLI — против 6800GT — даже до 68%!
- 6600GT SLI — против 6600GT — а тут до 79%. И даже не нужен режим АА+АФ, поскольку FPS достаточно малы, и нагрузка на карты очень велика сама по себе.
Обратите внимание на график распределения FPS по времени. Прекрасно видны места, где все упирается в системные ресурсы, и потому эффекта от SLI просто нет.
3DMark05: Game2
Аналогично предыдущему.
3DMark05: Game3
Аналогично предыдущему.
Прошу отдельно посмотреть на график распределения FPS по времени. Обратите внимание, какие сильные колебания мгновенного FPS дает SLI в этом тесте, особенно в первой и средней частях. Здесь встречается много объектов из совместных сфер деятельности обоих GPU, и драйвер очень быстро переключает работу процессоров, при этом накладные расходы в какой-то миг могут приводить к падению FPS. Очень может быть, что это неотлаженность драйвера, и один из GPU периодически простаивает.
3DMark05: MARKS
Комментарии еще нужны? :) Я думаю, что нет.
Итак, думаю, что уже ясно, что технология SLI работает. И даже прекрасные приросты скорости там, где системные ресурсы не накладывают сильных ограничений. И это несмотря на то, что один слот PCI-Express работает как х16, а второй — всего лишь х4 (а иных вариантов почти нет, лишь теоретически возможно x8+x8)).
Пока есть и ложка дегтя. В процессе тестирования иногда возникали артефакты в виде ряби, которая, кстати, весьма красноречиво показывала, как работают полукадры (между GPU). Подчас были какие-то искажения цветов. То есть, NVIDIA еще есть над, чем работать в плане усовершенствования драйверов.
Опробовал я и установку SLI на связке GeForce 6600GT + GeForce 6800GT. Не работает. Вернее, работает, но с глюками и проблемами.
В целом можно сказать, что дебют SLI состоялся. Посмотрим во второй части материала результаты тестирования на базе nForce4 SLI, тогда уже сделаем выводы — как оно работает на более приспособленной под игры платформе, хотя, там уже может сказаться сырость драйверов уже под сам nForce, поскольку драйверы от Intel известны своей вылизанностью и отлаженностью, особенно системные.
Думаю, что если на рынке будет появляться все больше системных плат с двумя PCi-E слотами, то успех у SLI будет определенным и даже сногсшибательным.
Более полные сравнительные характеристики видеокарт этого и других классов вы можете увидеть также в наших 3DGiТогах.
Теоретико-аналитические материалы и обзоры видеокарт, в которых рассматриваются функциональные особенности GPU ATI RADEON X800 (R420)/X850 (R480)/X800XL (R430)/X700 (RV410) и NVIDIA GeForce 6800 (NV40/45)/6600 (NV43)
ЧАСТЬ 2: Тестирование на базе nForce4 SLI