Кузницы миров

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


В подобной ситуации покупателю остается один выход – изучить технические характеристики выбираемых продуктов и при покупке руководствоваться ими (а также результатами тестирования видеокарт).


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



Процесс построения трехмерного изображения


Этот процесс – 3D-рендеринг – похож на создание фотографии-натюрморта: большую часть времени занимает расположение объектов в кадре, а затем делается моментальный «снимок», результаты которого выводятся на экран. В отличие от фотографии процедура рендеринга при синтезе компьютерного изображения в реальном времени – например, в игре – повторяется несколько десятков раз в секунду (другой вариант: рендеринг производится заранее, а в итоге получается статичная картинка или видеоролик с высокой степенью реалистичности).


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


■ Игровая программа отправляет графическому процессору информацию, описывающую игровую сцену: состав присутствующих объектов, их окраску, положение относительно точки наблюдения, освещение и видимость. Передаются и дополнительные данные, характеризующие сцену и позволяющую видеокарте увеличить реалистичность получаемого изображения, добавив туман, размытие, блики и т.д.


■ Графический процессор располагает трехмерные модели в кадре, определяет, какие из входящих в них треугольников находятся на виду, и отсекает скрытые другими объектами или, например, тенями.



Так выглядит «проволочная» трехмерная модель, лишенная текстуры


Затем создаются источники света и определяется их влияние на цвет освещаемых объектов. Этот этап рендеринга называется «трансформация и освещение» (
T&L
T
ransformation &
L
ighting).



На модель наложена серая текстура, отражающая ее освещение


■ На видимые треугольники накладываются текстуры с применением различных технологий фильтрации. Билинейная фильтрация предусматривает наложение на треугольник двух версий текстуры с различным разрешением. Результатом ее использования являются хорошо различимые границы между областями четких и размытых текстур, возникающие на трехмерных поверхностях перпендикулярно направлению обзора. Трилинейная фильтрация, использующая три варианта одной текстуры, позволяет создать более мягкие переходы.



Трехмерная модель с наложенной текстурой


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




Эффект от использования анизотропной фильтрации (внизу) по сравнению с простой трилинейной фильтрацией (вверху) хорошо заметен на поверхностях, наблюдаемых под острым углом


Такой метод фильтрации текстур задается в настройках драйвера видеоадаптера либо непосредственно в компьютерной игре. Кроме того, можно изменять силу анизотропной фильтрации: 2х, 4х, 8х или 16х – чем больше «иксов», тем более четкими будут изображения на наклонных поверхностях. Но при увеличении силы фильтрации возрастает вычислительная нагрузка на видеокарту, что может привести к снижению скорости работы и к уменьшению количества кадров, генерируемых в единицу времени, т.е. – к «тормозам».



Зеркальная поверхность чайника получена путем наложения карты среды


На этапе текстурирования могут использоваться различные дополнительные эффекты. Наиболее популярным из них является наложение карт среды (Enironmental Mapping). Оно позволяет создавать поверхности, в которых будет отражаться игровая сцена: зеркала, блестящие металлические предметы и т.д. Другой впечатляющий эффект может быть получен с применением карт неровностей (Bump Mapping), благодаря которым свет, падающий на поверхность под углом, создает видимость рельефа.



Рельефные шкуры этих монстров созданы с помощью технологии Bump Mapping


Текстурирование является последним этапом рендеринга, после которого картинка попадает в кадровый буфер видеокарты и выводится на экран монитора.



Что такое шейдеры?

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

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


Эта реалистичная водная гладь создана с применением пиксельных и вершинных шейдеров

Существует несколько версий реализации шейдерной модели (Shader Model). Все современные видеокарты поддерживают пиксельные и вершинные шейдеры версии 4.0, обеспечивающие по сравнению с предыдущей – третьей – версией более высокую реалистичность эффектов. Shader Model 4.0 поддерживается API DirectX, которая работает исключительно в среде Windows Vista. Кроме того, сами компьютерные игры должны быть «заточены» под DirectX 10.
%%%

Электронные компоненты видеокарты


Теперь, когда стало понятно, каким образом происходит процесс построения трехмерного изображения, можно перечислить технические характеристики компонентов видеокарты, которые определяют скорость процесса. Главными составными частями видеокарты являются графический процессор (
GPU
G
raphics
P
rocessing
U
nit) и видеопамять.


Что есть что?
DirectX

Среда программирования приложений (API), предложенная фирмой Microsoft для разработки игр и приложений, обрабатывающих видео и звук. Разные версии DirectX обеспечивают различный уровень качества 3D-графики.
Тексел

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

Технология обработки изображений, применяемая в компьютерных играх и графических редакторах для сглаживания ступенчатых краев трехмерных объектов. Также называется «антиалиасинг».
PCI-Express

Новейший интерфейс для подключения плат расширения. Существует 5 разновидностей PCIe: 1x, 2x, 4x, 8x и 16x, которые различаются скоростями. Самый быст рый, PCI-Express 16x, работает со скоростью до 4 Гб/с.
DVI

Цифровой интерфейс, разработанный для вывода видеосигнала на ЖК-мониторы, проекторы и другие устройства отображения. Позволяет добиться лучшего качества изображения по сравнению с аналоговым интерфейсом.
HDMI

High Definition Multimedia Interface – цифровой интерфейс, «преемник» DVI. Через HDMI передается не только видео-, но и аудиосигнал. Кроме того, поддерживается и технология защиты от копирования HDCP.


Графический процессор

Одной из основных характеристик этого компонента (как и центрального процессора ПК) является тактовая частота. При прочих равных условиях, чем она выше, тем быстрее происходит обработка данных, а следовательно – увеличивается количество кадров в секунду (
FPS
f
rames
p
er
s
econd) в компьютерных играх. Частота графического процессора – важный, но не единственный влияющий на его производительность параметр: современные модели производства NVIDIA и ATI, имеющие сопоставимый уровень быстродействия, характеризуются различными частотами GPU.


Для адаптеров NVIDIA, обладающих высокой производительностью, характерны тактовые частоты GPU от 550 МГц до 675 МГц. Частоту работы графического процессора меньше 500 МГц имеют «середнячки» и дешевые низкопроизводительные карты.



Графические процессоры современных видеокарт могут состоять более чем из миллиарда транзисторов


В то же время GPU «топовых» карт производства ATI имеют частоты от 600 до 800 МГц, и даже у самых дешевых видеоадаптеров частота графического процессора не опускается ниже 500 МГц.


Однако, несмотря на то, что графические процессоры NVIDIA обладают меньшей частотой, чем GPU, разработанные ATI, они обеспечивают по крайней мере такой же уровень производительности, а зачастую – и более высокий. Дело в том, что не меньшее значение, чем тактовая частота, имеют другие характеристики GPU.


■ Количество текстурных модулей (
TMU
T
exture
M
apping
U
nits) – элементов графического процессора, выполняющих наложение текстур на треугольники. От количества TMU напрямую зависит скорость построения трехмерной сцены.


■ Количество конвейеров рендеринга (
ROP
R
ender
O
utput
P
ipe line) – блоков, выполняющих «сервисные» функции. В современных графических процессорах ROP, как правило, меньше, чем текстурных модулей, и это ограничивает общую скорость текстурирования. К примеру, чип видеокарты NVIDIA GeForce 8800 GTX имеет 32 «текстурника» и 24 ROP. У процессора видеокарты ATI Radeon HD 3870 только 16 текстурных моделей и 16 ROP.


■ Производительность текстурных модулей выражается в такой величине, как филлрейт – скорость текстурирования, измеряемая в текселах за секунду. Видеокарта GeForce 8800 GTX имеет филлрейт в 18,4 млрд текс./с. Но более объективным показателем является филлрейт, измеряемый в пикселах, так как он отражает скорость работы ROP. У GeForce 8800 GTX эта величина равна 13,8 млрд пикс./с.


■ Количество шейдерных блоков (шейдерных процессоров), которые – как следует из названия – занимаются обработкой пиксельных и вершинных шейдеров. Современные игры активно используют шейдеры, так что количество шейдерных блоков имеет решающее значение для определения производительности.


Не так давно графические процессоры имели отдельные модули для выполнения пиксельных и вершинных шейдеров. Видеокарты NVIDIA серии GeForce 8000 и адаптеры ATI Radeon HD 2000 первыми перешли на унифицированную шейдерную архитектуру. Графические процессоры этих карт имеют блоки, способные обрабатывать как пиксельные, так и вершинные шейдеры – универсальные шейдерные процессоры (потоковые процессоры). Такой подход позволяет полностью задействовать вычислительные ресурсы чипа при любом соотношении пиксельных и вершинных расчетов в коде игры. Кроме того, в современных графических процессорах шейдерные блоки часто работают на частоте, превышающей тактовую частоту GPU (например, у GeForce 8800 GTX эта частота составляет 1350 МГц против «общих» 575 МГц).


Обращаем ваше внимание на то, что компании NVIDIA и ATI по-разному считают количество шейдерных процессоров в своих чипах. К примеру, Radeon HD 3870 имеет 320 таких блоков, а GeForce 8800 GTX – только 128. На самом деле, ATI указывает вместо целых шейдерных процессоров их составные компоненты. В каждом шейдерном процессоре содержится по пять компонентов, так что общее количество шейдерных блоков у Radeon HD 3870 – всего 64, поэтому и работает эта видеокарта медленнее, чем GeForce 8800 GTX.



Видеопамять


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



Память на видеокарте используется для хранения трехмерных моделей и текстур


Какие характеристики видеопамяти влияют на производительность графической карты?


■ Объем. Современные игры используют огромное количество текстур с высоким разрешением, и для их размещения требуется соответствующий объем видеопамяти. Основная масса выпускаемых сегодня «топовых» видеоадаптеров и карт среднего ценового диапазона снабжается 512 Мб памяти, которая в отличие от оперативной памяти ПК не может быть увеличена впоследствии путем покупки дополнительных модулей. Более дешевые видеокарты оснащаются вдвое меньшим объемом памяти – 256 Мб. Для современных компьютерных игр этого уже недостаточно.


В случае нехватки свободного места в видеопамяти графический процессор вынужден постоянно загружать текстуры из оперативной памяти ПК, связь с которой осуществляется гораздо медленнее; в результате производительность видеоадаптера может заметно снижаться. Кроме того, сокращается объем памяти, доступный процессору. С другой стороны, чрезмерно большой объем памяти на видеокарте может не дать никакого увеличения скорости, так как дополнительное пространство просто не будет использоваться. Покупать видеоадаптер с 1 Гб памяти имеет смысл только в том случае, если он принадлежит к «топовым» продуктам (видеокарты ATI Radeon HD 4870, NVIDIA GeForce 9800, а также новейшие карты серии GeForce GTX 200).


■ Частота. Этот параметр у современных видеокарт может изменяться от 800 до 3200 МГц и зависит, в первую очередь, от типа используемых микросхем памяти. Чипы DDR 2 могут обеспечить рабочую частоту в пределах 800 МГц и сегодня используются только в самых дешевых графических адаптерах. Память типов GDDR 3 и GDDR 4 увеличивает частотный диапазон вплоть до 2400 МГц. Новейшие графические карты ATI Radeon HD 4870 используют память GDDR 5 с фантастической частотой – 3200 МГц.


Частота памяти, как и частота графического процессора, оказывает большое влияние на производительность видеокарты в играх, особенно при использовании полноэкранного сглаживания. При прочих равных условиях, чем больше частота памяти, тем выше быстродействие, т.к. графический процессор будет меньше «простаивать» в ожидании поступления данных. Частота памяти в 1800 МГц является нижней границей, отделяющей высокопроизводительные карты от менее быстрых.


■ Разрядность шины видеопамяти гораздо сильнее влияет на общую производительность карты, чем частота памяти. Она показывает, сколько данных может передать память за один такт. Соответственно двукратное увеличение разрядности шины памяти эквивалентно удвоению ее тактовой частоты. Основная масса современных видеокарт имеют 256битную шину памяти. Уменьшение разрядности до 128 или, тем более, до 64 бит наносит сильный удар по быстродействию. С другой стороны, в самых дорогих видеокартах шина может быть «расширена» до 512 бит (пока этим может похвастаться лишь новейший GeForce GTX 280), что оказывается весьма кстати, принимая во внимание мощность их графических процессоров.

%%%

Конструкция видеокарты


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



«Анатомия» видеокарты: 1 – графический процессор, 2 – чипы памяти, 3 – разъем PCI-E x16, 4 – разъем дополнительного питания, 5 – контакты для соединения со вторым видеоадаптером в режиме SLI


■ Разъем для подключения к материнской плате. В настоящее время большинство видеоадаптеров используют разъем PCI-Express x16.При этом все еще выпускаются адаптеры с устаревшим разъемом AGP 8x. Между собой эти интерфейсы не совместимы, так что при выборе адаптера нужно знать, каким разъемом обладает материнская плата вашего ПК.


Кроме того, интерфейс PCI-E существует в двух версиях: 1.0 и 2.0. Первая обеспечивает пропускную способность в 0,25 Гб/с, вторая – в два раза больше. Оба варианта полностью совместимы между собой, так что видеокарта с PCI-E 2.0 может работать с материнской платой, которая поддерживает лишь PCI-E 1.0, и наоборот. И в том, и в другом случае пропускная способность будет ограничена самым медленным компонентом. Поддержкой PCI-E 2.0 пока обладают только немногие – самые дорогие видеокарты, но ощутимого прироста скорости в играх она не дает.


■ Разъемы дополнительного питания. Среди всех компонентов ПК видеокарта является одним из главных потребителей электроэнергии, поэтому, помимо той силы тока, которую обеспечивает разъем PCI-E или AGP, она нуждается в питании непосредственно от БП через разъемы, расположенные в хвостовой части платы.



Устаревшие видеокарты с интерфейсом AGP оснащаются четырехконтактными коннекторами типа Molex.



Современные видеоадаптеры имеют один или два разъема питания с шестью контактами, а наиболее мощные модели – один шестиконтактный разъем и один восьмиконтактный.

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


■ Система охлаждения. Большинство современных видеокарт оснащается крупными кулерами, которые занимают два слота расширения в корпусе ПК. Поэтому разъем материнской платы PCI или PCI-E, находящийся снизу от разъема видеокарты, окажется заблокирован. Если вам необходимо его использовать, стоит покупать видеокарту с тонкой однослотовой системой охлаждения. Однако в этом случае выбор будет ограничен картами со средней и низкой производительностью, т.к. однослотовый кулер не может обеспечить усиленный отвод тепла, в котором нуждаются «топовые» модели. Единственная альтернатива – карты с тонкими водоблоками для подключения к системе водяного охлаждения (про сборку системы водяного охлаждения ПК см.
).


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


■ Интерфейсные разъемы. «Джентльменским набором» современных карт являются два цифровых разъема DVI для подключения ЖК-дисплеев. А чтобы использовать монитор, обладающий лишь аналоговым входом, понадобится переходник с DVI на D-Sub. Не так давно видеоадаптеры стали оснащаться интерфейсом HDMI, который применяется для вывода HD-изображения на внешние устройства – ЖК-телевизоры, плазменные панели и т.д. Заметим, что наличие HDMI необходимо, но не достаточно для поддержки HD-видео. Разъем HDMI либо присутствует непосредственно на плате, либо вместо него используется переходник с DVI. Интерфейс HDMI позволяет передавать не только цифровое видео, но и звук. Для того чтобы воспользоваться этой возможностью, видеокарта должна обладать встроенным звуковым чипом (адаптеры ATI Radeon HD) либо иметь возможность получать аудиосигнал с отдельной звуковой платы (некоторые платы NVIDIA GeForce серий 8000 и 9000) – для этого используется специальный разъем и кабель.


Наконец, подавляющее большинство карт оснащаются портом S-Video, который представляет собой самый универсальный вариант подключения к ПК телевизоров и проекторов. Даже если ТВ не имеет собственного разъема S-Video, можно прибегнуть к помощи переходников с S-Video на композитный видеокабель, компонентный или SCART.



Карты, имеющие маркировку VIVO (Video In Video Out), помимо вывода видеосигнала через S-Video, позволяют принимать его посредством того же интерфейса и специального кабеля-«гидры» с несколькими разъемами.


Одновременное использование двух видеокарт

Для того чтобы получить максимальную производительность, можно установить в компьютер сразу две видеокарты. Производители предусмотрели для этого соответствующие технологии – SLI (Scalable Link Interface, используется картами NVIDIA) и CrossFire (разработка ATI). Для того чтобы воспользоваться ими, материнская плата должна не только иметь два слота PCI-E для видеокарт, но и поддерживать одну из названных технологий. Многие «материнки» на чипсетах Intel могут использовать платы ATI в режиме Cross Fire, а вот объединить в одну «упряжку» две (или даже три!) видеокарты производства NVIDIA могут лишь платы на чипсетах этой же фирмы. В случае если материнская плата не обладает поддержкой этих технологий, две видеокарты смогут с ней работать, но в играх будет использоваться только одна, а вторая лишь даст возможность одновременно выводить изображение на пару дополнительных мониторов.

Заметим, что использование двух видеокарт не приводит к удвоению производительности. Средний результат, на который стоит рассчитывать, – 50% прироста скорости. Кроме того, весь потенциал тандема будет раскрыт лишь при использовании мощного центрального процессора и монитора с высоким разрешением.


Использование пары видеокарт вместо одной позволяет значительно поднять производительность ПК в играх


Публикуется с сокращениями.