Читать «Журнал «Компьютерра» №30 от 23 августа 2005 года» онлайн - страница 45

Компьютерра

Конфигурация тестового стенда:

процессор: AMD Athlon 64 FX 57 2,8 ГГц (200x14);

материнская плата: ASUS A8N SLI Deluxe;

оперативная память: 2x512 Кбайт Patriot XBLK (2-2-2-10);

жесткий диск: 2xWD Raptor 74 Гбайт, 10000 об./мин., RAID 0;

операционная система: Microsoft Windows XP SP2;

драйверы: последние официальные на момент написания статьи.

GeForce 6800 + восемь пиксельных конвейеров = ?

Кодовое название нового графического чипа nVidia — G70, «принципиально новое» для компании… и не несущее практически никакой информационной нагрузки. Однако если заглянуть в прошлое, выяснится, что вплоть до последнего момента (когда компания вдруг отказалась от традиционной маркировки своих чипов кодами NVxx) GPU GeForce 7800 именовался иначе — NV47. По принятой в nVidia схеме это означает, что GPU архитектурно относится к тому же поколению NV4x, что и чипы семейства GeForce 6xxx (напомню, что GeForce FX — это семейство NV3x; GeForce 3 и 4 — семейство NV2x; а GeForce 1 и 2 — семейство NV1x). Так что ничего принципиально новаторского в новом кристалле мы не увидим: перед нами все тот же классический GPU поколения DirectX 9.0c, поддерживающий шейдеры третьей версии (Shader Model 3.0), эдакий доработанный GeForce 6800 Ultra. Но что же тогда изменилось по сравнению с предыдущим поколением?

Во-первых, в полтора раза увеличилось количество пиксельных конвейеров — с 16 до 24. Уже одно это должно было при прочих равных увеличить теоретическую производительность G70 относительно NV40 примерно в полтора раза; однако инженеры nVidia пошли еще дальше и повысили производительность каждого отдельно взятого конвейера, добавив к каждому стандартному векторному ALU[Arithmetic & Logic Unit, базовое устройство, выполняющее основные вычислительные операции] «вспомогательное» упрощенное ALU, способное одновременно с «главным» выполнять некоторые простые операции. Такая схема позволяет, например, выполнять на конвейерах 7800GTX весьма популярную в шейдерах операцию MAD (Multiply Add, поэлементное умножение двух 4-компонентных векторов с прибавкой к полученному вектору третьего вектора) за один такт, а не за два. И это лишь одна из довольно большого числа ситуаций, когда за счет переноса некоторых операций на «упрощенные» ALU удается достичь двукратного прироста производительности. Инженеры nVidia говорят о полуторакратном (в среднем) приросте производительности на каждый пиксельный конвейер. Вкупе с полуторакратным же приростом числа пиксельных конвейеров получается, что предполагаемая пиковая производительность G70 более чем вдвое выше, нежели у предыдущего флагмана nVidia — NV40, и, похоже, именно это дало основание разработчикам заявить, что 7800GTX будет более быстрым решением, чем пара GeForce 6800 Ultra, работающих в режиме SLI. Кстати, 7800GTX тоже поддерживает технологию SLI.

Во-вторых, увеличилось число вершинных конвейеров (с 6 до 8), и была немного поднята тактовая частота ядра. Причем полной неожиданностью стало то, что в G70 тактовых частот теперь несколько: пиксельные и вершинные конвейеры тактируются раздельно и функционируют асинхронно[Строго говоря, в GPU этих частот даже не две, а три: в отличие от предыдущих поколений, G70 использует еще и «более независимые» блоки пиксельных операций (ROP). Они выполняют такие «вспомогательные» операции, как блендинг, z-тест на отсечение невидимых пикселов, вычисление итогового цвета при антиалиасинге и запись «готового продукта» в видеопамять и фрейм-буфер акселератора. У большинства предыдущих ускорителей Nvidia было по одному блоку ROP на пиксельный конвейер; в G70 компания отошла от этой традиции и поставила 16 ROP, подключающихся через специальный быстродействующий «свитч», при 24 пиксельных конвейерах. Тактовая частота ROP сегодня совпадает с тактовой частотой пиксельных конвейеров, однако в последующих поколениях GPU и даже в последующих вариациях G70 ситуация может измениться]. «Основная» тактовая частота, на которой работают пиксельные конвейеры, составляет 430 МГц; «вторая основная», на которой работают вершинные конвейеры, — 470 МГц. Сводя эти данные воедино, получаем, что теоретически GeForce 7800GTX должен примерно в 2,42 раза (!) по «пиксельной» и 1,57 раза по «вершинной» производительности превосходить 6800 Ultra. Совсем неплохо для «старой» архитектуры, не правда ли? И это еще не предел: судя по названию и поразительно удачным оверклокерским экспериментам[В нашей тестовой лаборатории мы разогнали 7800GTX до частот 500/1320 МГц], nVidia может выпустить заметно более быструю GeForce 7800 Ultra[Еще одна интересная особенность G70: пиксельные конвейеры тактируются не как бог на душу положит, а с шагом 27 МГц. К примеру, 16x27 = 432 МГц, базовая частота 7800 GTX. Тактовые частоты пиксельных конвейеров свеженькой GeForce 7800GT составляют 15x27 = 405 МГц. Резонно предположить, что тактовая частота пиксельных конвейеров «Ультры», буде она появится, будет не меньше 17x27 = 459 (460), а то и 486 (490) МГц].