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

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

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

Теперь рассмотрим видеоконтроллеры, встроенные в набор микросхем (НМС) системных плат. Сравнивать их между собой довольно трудно. Если отдельную видеоплату можно вставить в любую заданную систему, чтобы затем сравнить производительность нескольких образцов в одной конфигурации, то для встроенного видеоадаптера сделать подобное зачастую просто невозможно. Вот и взятые для обзора образцы тестировались в ПК совершенно различных конфигураций: совместно с процессорами 3,6-ГГц Intel Pentium, AMD Athlon 64 3500+ Socket-939 и AMD Athlon 64 3200+ Socket-754, а также с оперативной памятью разных типов (DDR 400 и DDR2-533) и объемов (1024 и 512 Мбайт). В процессах исследования взятых продуктов общим было только то, что наряду с проведением испытаний встроенного видеоконтроллера каждая из примененных систем протестировалась вместе с внешним видеоконтроллером PCI Express Albatron GeForce PCX 5750 — видеоплатой среднего уровня позапрошлого поколения. Ее производительность была лишь незначительно выше, чем у встроенных решений, а порой даже не достигала ее. Поэтому для того, чтобы сравнение было корректным, все результаты тестирования в таблицах приведены в виде отношения производительности исследуемого видеоадаптера к производительности внешней платы.

Первоначально роль видеоадаптера сводилась лишь к обеспечению устройства отображения (дисплея) необходимыми сигналами синхронизации и к преобразованию содержимого видеопамяти в сигнал яркости нужного цвета. Естественно, само содержимое видеопамяти могло трактоваться по-разному в зависимости от режима работы — текстовый или графический, различные глубина цвета, используемая палитра и т.п. А забота о заполнении видеопамяти, т.е. о построении изображения, целиком возлагалась на центральный процессор. Следовательно, функции были четко разделены: ЦП записывает в видеопамять, а видеоконтроллер читает. Однако первые же попытки реализации 3D-графики на ПК показали, что производительности центрального процессора недостаточно для формирования качественной картинки с приемлемой частотой обновления экрана.

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

Впервые попытка разгрузить центральный процессор ПК была предпринята компанией 3dfx, в настоящее время поглощенной фирмой nVidia. Она создала видеоускоритель Voodoo, взявший на себя функцию текстурирования — достаточно однообразный алгоритм, не слишком эффективно выполняемый универсальным процессором. Затем аналогичные по назначению устройства превратились в текстурные блоки видеопроцессора, которые позднее стали пиксельными (фрагментными) шейдерами.

По поводу обработки вершинных данных (т.е. преобразования координат и вычисления освещенности) мнения производителей разделились. Сперва они выполнялись процессором, но растущие возможности видеоадаптеров позволяли строить более сложные сцены с большим количеством полигонов, с чем арифметико-логическое устройство центрального процессора уже не справлялось. Фирма nVidia оснастила свои новые видеоплаты GeForce блоком T&L, обрабатывающим геометрические данные. Так появился прообраз вершинных шейдеров. В то же самое время компания Intel внедрила в свои процессоры Pentium III новый векторный вычислительный блок и соответствующее ему расширение системы команд SSE, предназначенные для тех же задач. С того времени Intel перестала оснащать свои графические процессоры блоком T&L, и при этом программы для вершинных шейдеров выполняются на центральном процессоре.

Необходимо заметить, что полностью объективная оценка видеоускорителя, а также определение объективного индекса производительности в принципе невозможно. Пусть, скажем, есть две игры: Vector Wars, требующая 2 млн. векторных вычислений на кадр и 1 млн. пиксельных, и Pixel Magic с 1 млн. векторных и 2 млн. пиксельных операций. Имеются и две видеоплаты: SuperVector, обеспечивающая 100 млн. векторных операций в секунду и 50 млн. пиксельных, и UltraPixel с производительностью 50 и 100 млн. векторных и пиксельных операций в секунду соответственно.

В программе Vector Wars видеоплата SuperVector будет иметь вдвое большую производительность, чем UltraPixel, а в приложении Pixel Magic — наоборот. Но на самом деле все гораздо сложнее. Каждый из блоков, и векторный, и пиксельный, состоит из множества узлов, производительность которых может существенно различаться, а любые эффекты, используемые в той или иной программе, могут по-разному нагружать такие узлы. Следовательно, основная задача разработчиков сводится к балансировке их мощности. Причем следует добиться того, чтобы для наиболее ресурсоемких игр, запланированных к выпуску в ближайшие два года, нагрузка на все узлы распределялась бы по возможности равномерно. А поскольку представление о распределении нагрузки, в свою очередь, в значительной степени зависит от уровня как аппаратного (графические процессоры), так и программного обеспечения (алгоритмы в 3D-графике, особенности драйверов и API), то и само оно со временем сильно изменится.

Хорошо иллюстрирует сказанное выше сравнение общего индекса производительности, показанного в тестах 3DMark03 и 3DMark05. Первый из них демонстрирует 2—4-кратное превосходство внешней платы над встроенными решениями, второй — определенное преимущество встроенной графики над устаревшим внешним видеопроцессором. Ничего удивительного, ведь разработчики 5750 исходили из баланса мощности, возможного в 2003 г., а создатели встроенных решений трудились уже в 2005 г. Отсюда и результат, из которого, казалось бы, должен был следовать вывод о том, что для современных игр встроенные решения ничуть не хуже устаревшего внешнего, но это, увы, не так. Типичная частота кадров в 3DMark05 составляет 2 кадр/с, что нельзя считать приемлемым ни по каким меркам. Значит, в современные игры (не во все, конечно, а в наиболее ресурсоемкие из них) нельзя играть ни с одним, ни с другим графическим процессором. А вот при использовании устаревших программных технологий, когда речь идет о десятках кадров в секунду, безоговорочно лидируют внешние адаптеры.

В целом следует признать, что аппаратные решения nVidia заметно превосходят аналогичные продукты Intel. Что же касается вершинных вычислений, производимых процессором, то результаты измерений показывают полную бесперспективность применения центрального процессора на этом поприще, поскольку даже 3,6-ГГц Intel Pentium значительно отстает как от маломощных графических процессоров конкурента, так и от устаревших решений среднего уровня.

Любопытно, что если синтетические тесты, в том числе 3DMark разных версий, GL XSMark (OpenGL) и AquaMark3 (DirectX), показывают превосходство изделий nVidia, то на реальных игровых приложениях столь очевидной разницы не ощущается. Но, видимо, синтетические тесты претендуют на то, чтобы описывать более широкий круг приложений. Если же рассмотреть спектр программ, входящих в тест SPECViewperf и представляющих собой в основном «тяжелые» профессиональные пакеты трехмерной графики, то окажется, что в этой сфере применения внешнее решение предпочтительнее встроенного, а среди последних по-прежнему nVidia намного опережает Intel. Более того, при использовании видеоконтроллеров Intel два теста из семи выполнялись настолько долго, что при подсчете средней частоты кадров результирующая величина была округлена до нуля.

Есть и еще один фактор, который необходимо учитывать при выборе между внешней и встроенной видеоплатой. Практика показывает, что у встроенных решений гораздо хуже обстоят дела с совместимостью, т.е. чаще встречается ПО, отказывающиеся на них работать. Кроме двух упомянутых выше случаев с программами, входящими в пакет SPECViewperf, был зафиксирован отказ в прохождении тестов GunMetal Benchmark, ShaderMark и Avtest на системе Intel 915. Сложилась такая практика, что тестовые программы, проявившие когда-либо «капризность» к используемому «железу», сразу же отбраковывались и в дальнейшем в тестах не использовались, поэтому их поведение с Intel 945 и nVidia так и осталось невыясненным.

Что же получается? С одной стороны, встроенные видеоконтроллеры включают в себя все более мощные блоки трехмерной графики, с другой — для современных 3D-игр производительности этих блоков явно недостаточно. Все зависит от того, какой смысл мы вкладываем в слова «современные 3D-игры». Это, безусловно, правильно для применяющихся при тестировании видеоплат «стрелялок» от первого лица (или из-за спины третьего), в общем-то и двигающих вперед всю компьютерную 3D-графику. Но ведь есть игры и других жанров, в частности ролевые и квесты (quest — приключение), для которых требования к частоте обновления экрана уже намного мягче. Немало также других игр, например логических или имитаторов настольных, вообще не требующих трехмерной графики, но их удобнее выполнять с использованием функций 3D-ускорителей либо просто для того, чтобы реализовать приятную для глаз перспективную проекцию игрового поля, либо потому, что 2D-ускорители традиционно не поддерживают функций полупрозрачности.

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


"Основные характеристики встроенных видеоадаптеров"
"Результаты тестов FutureMark 3DMark03, баллы, при разрешении, точки1"
"Результаты тестов FutureMark 3DMark05, баллы, при разрешении, точки"
"Результаты синтетических 3D-тестов GL XSMark 1.2v (32 бит, CPU/FPU) и AquaMark3"
"Результаты игровых тестов, кадр/с, при разрешении, точки"
"Результаты тестов Serious Sam (для четырех сценариев), кадр/с"