Введение
Расчёт 3D-графики относится к типу задач, которые хорошо распараллеливаются. Параллелизм можно найти как на уровне самих данных (вектор из 4 компонентов), так и на уровне инструкций, которые обрабатывают эти данные. Производители GPU прекрасно это понимают, поэтому параллелизм является базовым принципом (собственно, в этом плане графические и центральные процессоры заметно отличаются), на основе которого создаются 3D-чипы.
Следовательно, увеличение параллелизма является оптимальным способом повысить производительность GPU. Можно говорить о геометрических блоках, пиксельных конвейерах или потоковых процессорах, но история эволюции производительности видеокарт тесно связана с числом упомянутых блоков. Единственным ограничением является физический размер кристалла, увеличение которого приводит к повышению издержек производства (меньший выход годных чипов). В конечном итоге, оптимизация техпроцесса позволяет увеличить квоту на число транзисторов, которые может вмещать GPU (площадь кристалла, кстати, меняется мало), и повысить число вычислительных блоков.
Чтобы преодолеть упомянутое ограничение, компании, производящие 3D-чипы, приняли на вооружение идею использовать несколько графических процессоров. Опять же, данный подход оказался выгодным для мира GPU, поскольку задачи можно легко распараллелить и привязать к конкретным чипам, ограничив при этом число обменов данными между разными GPU, что намного сложнее сделать для нескольких центральных процессоров (CPU). Таким путём была создана Infinite Reality от Silicon Graphics – система очень гибко настраивается, а разные части графического конвейера находятся на отдельных картах: геометрический движок (Geometry Engine), растровый менеджер (Raster Manager), генератор дисплея (Display Generator).
Геометрический движок (Geometry Engine). Нажмите на картинку для увеличения.
Растровый менеджер (Raster Manager). Нажмите на картинку для увеличения.
Генератор дисплея (Display Generator). Нажмите на картинку для увеличения.
Систему можно настроить в разных конфигурациях, можно даже добавлять карты, чтобы повысить производительность рабочей станции. Схема растеризации сложная и нацелена на баланс нагрузки как между 80 графическими движками в каждом растровом менеджере (Raster Manager), так и между разными менеджерами. Для этого система построена на тайлах (мозаичных элементах), размер которых меняется в зависимости от числа растровых менеджеров
Истоки
Ещё одна компания с долгой историей, ныне уже не существующая 3dfx, реализовала подобный принцип на массовом рынке с выпуском второго поколения чипов Voodoo 2, которые можно было объединять через SLI (Scan Line Interleave). Счастливые обладатели двух видеокарт могли устанавливать их совместно в систему (рядом с первой видеокартой, в результате чего видеоподсистема могла занимать до трёх слотов PCI), чтобы получить удвоение скорости заполнения. Как видно по названию технологии, рендеринг выполняется чересстрочно, то есть первая видеокарта занимается растеризацией чётных строчек, а вторая – нечётных. Некоторые производители, например, Quantum 3D, смогли интегрировать два чипа Voodoo на одну карту, что позволило продвигать технологию 3dfx ещё дальше. А после интеграции двух чипов Voodoo 2 на одну карту, видеокарты можно было связывать уже в четвёрки.
Quantum 3D Mercury. На этом “монстре” 3dfx провела демонстрацию T-Buffer. Нажмите на картинку для увеличения.
С появлением AGP решения на нескольких видеокартах стали невозможны, поэтому производители, с той или иной долей успеха, пошли путём интеграции нескольких GPU на одну видеокарту. Среди таких попыток можно отметить видеокарту ATI Rage Fury MAXX, которая так и не стала успешной. Мы храним Voodoo 5 5500 в качестве сувенира тех времён, который несёт оттенок грусти и сожаления, поскольку это была последняя видеокарта от 3dfx, а версия 6000, на самом деле, принадлежала уже Quantum 3D. Затем решения на нескольких GPU исчезли с рынка ПК, найдя своё применение в других сферах. Прежде всего, в сегменте профессиональных систем, когда карты, например, от Evans&Sutherland, используют несколько чипов R300. Silicon Graphics решила отказаться от разработки собственных чипов, перейдя на GPU от ATI.
Rage Fury MAXX. Нажмите на картинку для увеличения.
Voodoo 5 5500. Нажмите на картинку для увеличения.
Многочиповые решения использовались и в сегменте игровых автоматов, в качестве примера можно привести Naomi 2 от Sega, который был построен на двух PowerVR2, данные для которых готовил геометрический процессор Elan. Затем такие решения стали даже мощнее, чем на ПК, в частности, с появлением Volari V8 Duo… извините, 3DLabs Realizm 800, пусть даже эта карта была нацелена на профессиональный рынок. Наконец, все мы помним GeForce 7950GX2, которая оставила смешанные впечатления.
GeForce 7950GX2. Нажмите на картинку для увеличения.
Истории присуще повторяться, и теперь настала очередь AMD выпустить карту с несколькими GPU в надежде закрыть high-end сегмент рынка, который оставался открытым после падения Radeon HD 2900 XT, и обеспечить соотношение цена/производительность на уровне HD 3870. Среди всего прочего, перед производителем встала серьёзная проблема – отсутствие high-end чипа после объявления об откладывании R700 на… 2009 год! Пусть даже есть небольшая вероятность того, что мы увидим гипотетическую R690 в этом году, скорее всего, учитывая современное состояние производителя, он просто представит систему CrossFire на двух R680. Но что собой представляет эта R680?
Radeon HD 3870 X2
Под R680 (в миру Radeon HD 3870 X2) на самом деле скрывается видеокарта, построенная на двух GPU RV670. Как мы уже видели, история видеокарт с несколькими GPU весьма противоречива. И хотя HD 3870 X2 отходит от идей, заложенных в Voodoo 5500 (VSA 100 была изначально разработана, чтобы группироваться, как минимум, ещё с двумя GPU, чтобы дать эффективную производительность), её цель напоминает Rage Fury MAXX в 1999: обеспечить продукт, который можно противопоставить high-end чипам калифорнийского конкурента.
RV670 возвращается. Нажмите на картинку для увеличения.
AMD решила интегрировать на одну плату два чипа RV670 (чтобы получить более подробную информацию об этом чипе, мы предлагаем ознакомиться с обзором Radeon HD 3850 и 3870). Это, без сомнения, позволило установить мощную систему охлаждения и разместить на плате все соединения двух графических подсистем. В итоге мы получили “монстра” длиной 26,7 см (это больше, чем ширина материнской платы). Ожидаемая стоимость идентична видеокартам GeForce 8800 GTX и Ultra, которые оснащены всего одним чипом.
Знакомые глаза… Нажмите на картинку для увеличения.
Вес видеокарты тоже рекордный – чуть больше одного килограмма. И это несмотря на то, что AMD указала в документации оптимизацию веса благодаря использованию гибридного радиатора из меди и алюминия.
Радиатор состоит из медных и алюминиевых частей. Нажмите на картинку для увеличения.
Медный или алюминиевый, в зависимости от GPU. Нажмите на картинку для увеличения.
Детали
Вполне естественно, система охлаждения использует два слота и выбрасывает горячий воздух за пределы корпуса. Радиальный вентилятор такой же, какой устанавливается на HD 2900 XT. Поток воздуха сначала охлаждает первый, а затем второй GPU, у обоих есть собственный радиатор с набором рёбер, которые монтируются сверху. Первый радиатор алюминиевый, чтобы второй GPU, который соединён с медным радиатором, получал более холодный воздух. Теплопроводность алюминия меньше, он легче и дешевле меди.
Разобранная карта: много винтов и радиаторов. Нажмите на картинку для увеличения.
Число тепловых прокладок впечатляет. Нажмите на картинку для увеличения.
По этой причине один GPU будет охлаждаться менее эффективно, но так было и в случае 7950 GX2 (один вентилятор был зажат между картами, что приводило к большой разнице в температурах). Решения на нескольких видеокартах отличаются подобной особенностью. По нашему мнению, было бы более интересно разместить вентилятор в центре, как на GeForce 7800 GTX 512 MB.
Мост CrossFire…
…размещён между двумя GPU. Нажмите на картинку для увеличения.
Технически, Radeon HD 3870 X2 можно рассматривать как систему CrossFire из двух HD 3870 на одной плате. Для соединения двух GPU на карту интегрирован мост только PCI Express 1.1. Они соединяются через двунаправленную шину, которая имеет 16 линий с пропускной способностью 2 x 4 Гбайт/с. Однако время доступа не будет существенно меньше, чем у классических решений CrossFire на основе двух раздельных карт. Это объясняет, почему нам придётся подождать драйверов, поддерживающих Quad-CrossFire из двух Radeon HD 3870 X2 на одной материнской плате. С другой стороны, для работы видеокарты не требуется чипсет, поддерживающий CrossFire.
Карта спереди. Нажмите на картинку для увеличения.
Карта сзади. Нажмите на картинку для увеличения.
Оснащённая, как и предшествующие модели, двумя разъёмами дополнительного питания (на 6 и 8 контактов), карта требует использовать только два 6-контактных разъёма питания PCI Express (но не меньше, судя по спецификациям AMD, иначе система не загрузится).
Карта PowerColor. Нажмите на картинку для увеличения.
Powercolor выслала образец карты в нашу лабораторию. Неудивительно, что карта следует эталонному дизайну и поставляется без программного обеспечения, зато с переходником с Molex на 6-контактный разъём PCI Express и двумя переходниками (DVI на VGA и DVI на HDMI), мостиком CrossFire и кабелем вывода видео.
Спецификации
Спецификации весьма любопытные. Первый сюрприз: частота HD 3870 X2 существенно выше, чем у HD 3870. Но ощущения смешанные. Графический процессор работает на 825 МГц, что на 50 МГц или на 6% больше, чем у 3870. Неслабо, особенно по сравнению с 7950 GX2, у которой частоты были даже меньше, чем у 7900 GTX. Однако гигабайт памяти GDDR3 на HD 3870 X2 работает на частоте 900 МГц по сравнению с 1 125 МГц на HD 3970 (GDDR4) и 1 080 МГц на 8800 Ultra. К счастью, интерфейс памяти увеличился до 512 битов, что делает пропускную способность 3870 X2 выше, чем у 8800 Ultra. Впрочем, следует помнить, что карта нагружает два банка памяти по 512 Мбайт, причём каждый GPU работает со своим кадровым буфером. Так что подобное ограниченное количество памяти может стать ещё одним препятствием на высоких разрешениях, как мы увидим дальше.
Спецификации видеокарт | |||
GPU | HD 3870 X2 | HD 3870 | 8800 Ultra |
Частота GPU | 825 МГц | 775 МГц | 612 МГц |
Частота блока шейдеров | 825 МГц | 775 МГц | 1 512 МГц |
Частота памяти | 900 МГц | 1 125 МГц | 1080 МГц |
Ширина шины памяти | 512 битов | 256 битов | 384 бита |
Тип памяти | GDDR3 | GDDR4 | GDDR3 |
Объём памяти | 2 x 512 Мбайт | 512 Мбайт | 768 Мбайт |
Число пиксельных/вершинных конвейеров | (160) | (80) | (32) |
Число текстурных блоков | 32 | 16 | 32 |
Число блоков растеризации (ROP) | 32 | 16 | 24 |
Производительность | 1 TFlops | 496 GFlops | 387 GFlops |
Пропускная способность памяти | 115,2 Гбайт/с | 72 Гбайт/с | 103,7 Гбайт/с |
Число транзисторов | 1334 млн. | 666 млн. | 754 млн. |
Техпроцесс | 55 нм | 55 нм | 65 нм |
Площадь кристалла | 2 x 196 мм² | 196 мм² | 484 мм² |
Поколение | 2008 | 2007 | 2007 |
Модель шейдеров | 4.1 | 4.1 | 4.0 |
Ошибки и драйверы
Карту можно назвать правомочной наследницей Rage Fury MAXX, поскольку во время работы с бета-версией драйверов мы натолкнулись на некоторые ошибки. Поначалу драйверы часто отказывались устанавливаться, сообщая, что необходимо войти под учётной записью администратора (что, конечно, уже было сделано). Сообщение исчезло после перезагрузки. Проблемы возникли и с тремя играми. В Test Drive Unlimited и S.T.A.L.K.E.R. смена разрешения (при любом текущем разрешении) приводила к тому, что экран начинал мерцать, как будто частота обновления составляла 30 Гц. Проблема исчезла так же быстро, как и появилась, достаточно было вновь изменить разрешение. В World In Conflict мерцание было сильнее, от него нельзя было избавиться упомянутым выше способом, и оно присутствовало только на игровых картах. В других играх никаких проблем не было. Наконец, у нас иногда получалось, что 2D-рендеринг под Windows XP случайно становился частично или полностью размытым.
Эти ошибки напомнили нам те, которые возникли во время теста CrossFire, а также и в тесте GeForce 7950GX2… Они также являются причиной, почему эмбарго на публикацию тестов HD 3870 X2 было продлено (изначально оно должно было закончиться в прошлую среду). В последнюю минуту AMD пожелала представить новые драйверы 123a. Эти драйверы не решили каких-либо проблем и не изменили производительность. Мы столкнулись с несколькими случайными “падениями”, самые серьёзные из которых появлялись после включения сглаживания (в Oblivion или Age Of Empires III). В качестве картинки изменений не произошло. Поэтому мы остановились на драйверах 108a для всех видеокарт, так как, по нашему опыту, они были лучшими.
Тестирование
Как и в предыдущих статьях, каждая карта тестировалась в реальных условиях, в играх мы воспроизводили одинаковые тестовые прогоны, а замеры частоты кадров выполнялись с помощью Fraps.
Мы решили пересмотреть разрешения. Приоритетными для нас были разрешения ЖК-дисплеев, а учитывая производительность тестируемых карт, мы проводили измерения в 1 680 x 1 050 (24″) и 1 920 x 1 200 (26″, 27″). На отдельной странице мы провели тесты некоторых карт в разрешении 2 560 x 1 600 (30″).
Тестовая система 1. Нажмите на картинку для увеличения.
Тестовая система 2. Нажмите на картинку для увеличения.
Мы также включили конфигурации CrossFire на основе Radeon HD 3870 (775/1125 МГц) и Radeon HD 3850 512 MB, разогнанной до 730/880 МГц, поскольку второй Radeon HD 3870 у нас не было. Эта вторая карта всего на 6% медленнее, чем HD 3870, и показывает на 22% меньшую пропускную способность памяти, что, как мы увидим ниже, не особо ограничивает производительность.
Тестовая конфигурация тоже изменилась.