Выбор видеокарты для новичков-3.


nvidia geforce sandwitchДва прошлых техномира мы посвятили рассказу о видеокартах – из чего они состоят, как работают и главное на что нужно обращать внимание, при выборе видеодаптера. Если вы читали начало нашего мини-цикла, то знаете, из каких основных частей состоят видеокарты, познакомились с шейдерами, конвеерами и пиксельными процессорами, нам стало ясно, что такое графический процессор, память и шина обмена данными. Сегодня мы завершим наш цикл рассказом об архитектурных особенностях процессора и его технологиях, коснемся визуальных функций и многопроцессорных решений.

Техпроцесс и тактовые частоты видеопроцессора.

Под термином технопроцесс понимают размер одного элемента (транзистора) чипа и точность процесса производства. Совершенствование техпроцессов позволяет получить элементы меньших размеров. Например, техпроцесс 0,18 мкм даёт элементы большего размера, чем 0,13-мкм техпроцесс, поэтому он не такой эффективный. Транзисторы меньшего размера работают от меньшего напряжения. В свою очередь, снижение напряжения приводит к уменьшению теплового сопротивления, что даёт снижение количества выделяемого тепла. Совершенствование техпроцесса позволяет уменьшить расстояние между функциональными блоками чипа, а на передачу данных требуется меньше времени. Сокращение расстояний, понижение напряжения и другие улучшения позволяют достигать более высоких тактовых частот. Несколько усложняет понимание то, что для обозначения техпроцесса сегодня используют как микрометры (мкм), так и нанометры (нм). На самом деле всё очень просто: 1 нанометр равен 0,001 микрометру, поэтому 0,09-мкм и 90-нм техпроцессы – это одно и то же. Если сравнивать видеокарты с чипами 0,18 мкм и 0,09 мкм (90 нм), то вполне разумно ожидать от 90-нм карты более высокой частоты.

Тактовая частота графического процессора, как и центрального, измеряется в мегагерцах (МГц), то есть в миллионах тактов за секунду. Тактовая частота напрямую влияет на производительность графического процессора. Чем она выше, тем больше работы можно выполнить за секунду. Для первого примера возьмём видеокарты nVidia GeForce 6600 и 6600 GT: графический процессор 6600 GT работает на частоте 500 МГц, а у обычной карты 6600 – на 400 МГц. Поскольку процессоры технически идентичны, 20% прирост тактовой частоты 6600 GT приводит к более высокой производительности. Но тактовая частота – это ещё далеко не всё. Следует учитывать, что на производительность очень сильно влияет архитектура. Для второго примера возьмём видеокарты GeForce 6600 GT и GeForce 6800 GT. Частота графического процессора 6600 GT составляет 500 МГц, но 6800 GT работает всего на 350 МГц. А теперь примем во внимание, что у 6800 GT используются 16 пиксельных конвейеров, а у 6600 GT – только восемь. Поэтому 6800 GT с 16 конвейерами на 350 МГц даст примерно такую же производительность, как процессор с восемью конвейерами и удвоенной тактовой частотой (700 МГц). С учётом сказанного, тактовую частоту вполне можно использовать для сравнения производительности.

Визуальные функции
Кроме аппаратных спецификаций, различные поколения и модели графических процессоров могут отличаться набором функций. Например, часто говорят о том, что карты поколения ATi Radeon X800 XT совместимы с Shader Model 2.0b (SM), в то время как nVidia GeForce 6800 Ultra совместима с SM 3.0, хотя их аппаратные спецификации близки друг к другу (16 конвейеров). Поэтому многие потребители делают выбор в пользу того или иного решения, даже не зная, что означает это различие.

Microsoft DirectX и Shader Model

DirectX и OpenGL – это графические API, то есть интерфейсы прикладного программирования (Application Programming Interface) – открытые стандарты кода, доступные каждому. До появления графических API каждый производитель графических процессоров использовал собственный механизм общения с играми. Разработчикам приходилось писать отдельный код для каждого графического процессора, который они хотели поддержать. Очень дорогой и не эффективный подход. Для решения этой проблемы были разработаны API для 3D-графики, чтобы разработчики писали код под конкретный API, а не под ту или иную видеокарту. После чего проблемы совместимости легли уже на плечи производителей видеокарт, которым пришлось гарантировать, что драйверы будут совместимы с API. Единственной сложностью остаётся то, что сегодня используются два разных API, а именно Microsoft DirectX и OpenGL, где GL расшифровывается как Graphics Library (графическая библиотека). Но API DirectX сегодня в играх более популярен, да и на развитие игр этот стандарт повлиял сильнее.
В действительности, в DirectX входит несколько API, только один из которых используется для 3D-графики. DirectX включает API для звука, музыки, устройств ввода и т.д. За 3D-графику в DirectX отвечает API Direct3D. Когда говорят о видеокартах, то имеют в виду именно его, поэтому в данном отношении понятия DirectX и Direct3D взаимозаменяемы. DirectX периодически обновляется, по мере того, как графические технологии продвигаются вперёд, а игровые разработчики внедряют новые методы программирования игр. Поскольку популярность DirectX быстро возросла, производители графических процессоров начали подгонять выпуск новых продуктов под возможности DirectX. По этой причине видеокарты часто привязывают к аппаратной поддержке того или иного поколения DirectX (DirectX 8, 9.0 или 9.0c).
Ситуацию усложняет то, что части API Direct3D могут меняться со временем, без смены поколений DirectX. Например, в спецификации DirectX 9.0 указана поддержка Pixel Shader 2.0. Но обновление DirectX 9.0c включает Pixel Shader 3.0. Таким образом, хотя карты относятся к классу DirectX 9, они могут поддерживать разные наборы функций. Например, Radeon 9700 поддерживает Shader Model 2.0, а Radeon X1800 – Shader Model 3.0, хотя обе карты можно отнести к поколению DirectX 9. Многие новые игры требуют установки новейшей версии DirectX, даже если видеокарта относится к предыдущему поколению. То есть новая игра, которая будет использовать DirectX 8, всё равно требует установки новейшей версии DirectX 9 для видеокарты класса DirectX 8.
DirectX 10, грядущая версия API, будет сопровождать новую версию Windows Vista. На Windows XP установить DirectX 10 не получится.

HDR-освещение и OpenEXR HDR

HDR расшифровывается как “High Dynamic Range”, высокий динамический диапазон. Игра с HDR-освещением может дать намного более реалистичную картинку, чем игра без такового, причём не все видеокарты поддерживают HDR-освещение. Перед появлением видеокарт класса DirectX 9 графические процессоры были серьёзно ограничены точностью вычислений освещения. До сих пор освещение можно было рассчитывать только с 256 (8 бит) внутренними уровнями. Когда появились видеокарты класса DirectX 9, они получили возможность выдавать освещение с высокой точностью – полные 24 бита или 16,7 млн. уровней.
Следует учитывать, что все формы HDR-рендеринга требуют серьёзной вычислительной мощности и с ними могут не справиться даже самые мощные графические процессоры. Если вы хотите играть в новейшие игры с HDR-освещением, то без высокопроизводительной графики не обойтись.
Полноэкранное сглаживание
Полноэкранное сглаживание (сокращённо AA) позволяет устранить характерные “лесенки” на границах полигонов. Но следует учитывать, что полноэкранное сглаживание потребляет немало вычислительных ресурсов, что приводит к падению частоты кадров. Сглаживание очень сильно зависит от производительности видеопамяти, поэтому скоростная видеокарта с быстрой памятью сможет просчитать полноэкранное сглаживание с меньшим ущербом для производительности, чем недорогая видеокарта.
Текстурная фильтрация
На все 3D-объекты в игре накладываются текстуры, причём, чем больше угол отображаемой поверхности, тем более искажённой будет выглядеть текстура. Чтобы устранить этот эффект, графические процессоры используют фильтрацию текстур. Первый способ фильтрации назывался билинейным и давал характерные полоски, которые были не очень-то приятны глазу. Ситуация улучшилась с внедрением трилинейной фильтрации. Обе опции на современных видеокартах работают практически без ущерба производительности.
Текстуры высокого разрешения
Все 3D-игры создаются с учётом конкретных спецификаций, и одно из таких требований определяет текстурную память, которая понадобится игре. Все нужные текстуры должны умещаться в память видеокарты во время игры, иначе производительность будет сильно падать, поскольку обращение за текстурой в оперативную память даёт немалую задержку, не говоря уже о файле подкачки на жёстком диске. Поэтому, если разработчик игры рассчитывает на 128 Мбайт видеопамяти как минимальное требование, то набор активных текстур не должен превышать 128 Мбайт в любое время.

Многопроцессорные решения.
Использовать несколько видеокарт для увеличения графической производительности – идея не новая. В ранние дни 3D-графики копания 3dfx вышла на рынок с двумя видеокартами, работающими параллельно. Но с исчезновением 3dfx технология совместной работы нескольких потребительских видеокарт была предана забвению, хотя ATi выпускала подобные системы для профессиональных симуляторов ещё с выхода Radeon 9700. Пару лет назад технология вернулась на рынок: с появлением решений nVidia SLI и, чуть позднее, ATi Crossfire.
Совместное использование нескольких видеокарт даёт достаточную производительность, чтобы вывести игру с высокими настройками качества в высоком разрешении. Но выбирать то или иное решение не так просто. Решения на основе нескольких видеокарт требуют большое количество энергии, поэтому блок питания должен быть достаточно мощным. Всё это тепло придётся отводить от видеокарты, поэтому нужно обратить внимание на корпус ПК и охлаждение, чтобы система не перегрелась. Кроме того, что SLI/CrossFire требует соответствующей материнской платы (либо под одну технологию, либо под другую), которая обычно стоит дороже по сравнению со стандартными моделями. Конфигурация nVidia SLI будет работать только на определённых платах nForce4 или nForce5**, а карты ATi CrossFire – только на материнских платах с чипсетом CrossFire или на некоторых моделях Intel. Ситуацию осложняет и то, что некоторые конфигурации CrossFire требуют, чтобы одна из карт была специальной: CrossFire Edition. После выхода CrossFire для некоторых моделей видеокарт ATi разрешила включать технологию совместной работы по шине PCI Express, причём с выходами новых версий драйверов число возможных комбинаций увеличивается. Но всё же аппаратный CrossFire с соответствующей картой CrossFire Edition дёт более высокую производительность. Но и карты CrossFire Edition стоят дороже обычных моделей.
Следует учитывать и другие факторы. Хотя две графические карты, работающие совместно, и дают прирост производительности, ему далеко до двукратного, при том, что денег вы отдадите в два раза больше. Чаще всего прирост производительности составляет 20-60%. А в некоторых случаях из-за дополнительных вычислительных расходов на согласование прироста нет вообще. По этой причине конфигурации на нескольких картах вряд ли оправдывают себя с дешёвыми моделями, поскольку более дорогая видеокарта, как правило, всегда обгоняет пару дешёвых карт.
Для большинства потребителей брать решение SLI/CrossFire смысла не имеет. Но если вы хотите включить все опции улучшения качества или играть в экстремальных разрешениях, например, 2560×1600, когда надо просчитывать больше 4 миллионов пикселей на кадр, то без двух или четырёх спаренных видеокарт l
;е обойтись.
На этом наш миницикл мы завершаем, но если в ваших знаниях о видеокартах остались еще «белые пятна» мы ждем вас на форуме www.forum.az, где всегда рады самым каверзным вопросам и самым беспринципным спорам. А к теме видеокарт в техномире мы вернемся уже скоро, ведь к концу этого – началу следующего года увидят свет видеочипы нового поколения.

Владимир Зимин.
(c)Internet News
3 ocktober 2006