В некоторых
случаях тактовая частота отдельных
блоков GPU отличается от частоты
работы остального чипа. То есть,
разные части GPU работают на
разных частотах, и сделано это
для увеличения эффективности,
ведь некоторые блоки способны
работать на повышенных частотах,
а другие — нет. Такими GPU комплектуется
большинство видеокарт GeForce от NVIDIA. Из
свежих примеров приведём видеочип в модели
GTX 580, большая часть которого работает
на частоте 772 МГц, а универсальные вычислительные
блоки чипа имеют повышенную вдвое частоту
— 1544 МГц.
Скорость заполнения (филлрейт)
Скорость
заполнения показывает, с какой
скоростью видеочип способен отрисовывать
пиксели. Различают два типа филлрейта:
пиксельный (pixel fill rate) и текстурный (texel
rate). Пиксельная скорость заполнения показывает
скорость отрисовки пикселей на экране
и зависит от рабочей частоты и количества
блоков ROP (блоков операций растеризации
и блендинга), а текстурная — это скорость
выборки текстурных данных, которая зависит
от частоты работы и количества текстурных
блоков.
Например,
пиковый пиксельный филлрейт у GeForce GTX
560 Ti равен 822 (частота чипа) × 32 (количество
блоков ROP) = 26304 мегапикселей в секунду,
а текстурный — 822 × 64 (кол-во блоков текстурирования)
= 52608 мегатекселей/с. Упрощённо дело обстоит
так — чем больше первое число — тем быстрее
видеокарта может отрисовывать готовые
пиксели, а чем больше второе — тем быстрее
производится выборка текстурных данных.
Хотя важность
"чистого" филлрейта в последнее
время заметно снизилась, уступив скорости
вычислений, эти параметры всё ещё остаются
весьма важными, особенно для игр с несложной
геометрией и сравнительно простыми пиксельными
и вершинными вычислениями. Так что оба
параметра остаются важными и для современных
игр, но они должны быть сбалансированы.
Поэтому количество блоков ROP в современных
видеочипах обычно меньше количества
текстурных блоков.
Количество вычислительных (шейдерных)
блоков или процессоров
Пожалуй,
сейчас эти блоки — главные
части видеочипа. Они выполняют специальные
программы, известные как шейдеры. Причём,
если раньше пиксельные шейдеры выполняли
блоки пиксельных шейдеров, а вершинные
— вершинные блоки, то с некоторого времени
графические архитектуры были унифицированы,
и эти универсальные вычислительные блоки
стали заниматься различными расчётами:
вершинными, пиксельными, геометрическими
и даже универсальными вычислениями.
Впервые
унифицированная архитектура была
применена в видеочипе игровой консоли
Microsoft Xbox 360, этот графический процессор
был разработан компанией ATI (впоследствии
купленной AMD). А в видеочипах для персональных
компьютеров унифицированные шейдерные
блоки появились ещё в плате NVIDIA GeForce 8800.
И с тех пор все новые видеочипы основаны
на унифицированной архитектуре, которая
имеет универсальный код для разных шейдерных
программ (вершинных, пиксельных, геометрических
и пр.), и соответствующие унифицированные
процессоры могут выполнить любые программы.
По числу
вычислительных блоков и их
частоте можно сравнивать математическую
производительность разных видеокарт.
Большая часть игр сейчас ограничена
производительностью исполнения
пиксельных шейдеров, поэтому количество
этих блоков весьма важно. К примеру, если
одна модель видеокарты основана на GPU
с 384 вычислительными процессорами в его
составе, а другая из той же линейки имеет
GPU с 192 вычислительными блоками, то при
равной частоте вторая будет вдвое медленнее
обрабатывать любой тип шейдеров, и в целом
будет настолько же производительнее.
Хотя, исключительно
на основании одного лишь количества
вычислительных блоков делать
однозначные выводы о производительности
нельзя, обязательно нужно учесть
и тактовую частоту и разную архитектуру
блоков разных поколений и производителей
чипов. Только по этим цифрам можно сравнивать
чипы только в пределах одной линейки
одного производителя: AMD или NVIDIA. В других
же случаях нужно обращать внимание на
тесты производительности в интересующих
играх или приложениях.
Блоки текстурирования (TMU)
Эти блоки
GPU работают совместно с вычислительными
процессорами, ими осуществляется
выборка и фильтрация текстурных
и прочих данных, необходимых
для построения сцены и универсальных
вычислений. Число текстурных блоков
в видеочипе определяет текстурную
производительность — то есть скорость
выборки текселей из текстур.
Хотя в
последнее время больший упор
делается на математические расчеты,
а часть текстур заменяется
процедурными, нагрузка на блоки
TMU и сейчас довольно велика, так
как кроме основных текстур,
выборки необходимо делать и
из карт нормалей и смещений,
а также внеэкранных буферов рендеринга
render target.
С учётом
упора многих игр в том числе и в
производительность блоков текстурирования,
можно сказать, что количество блоков
TMU и соответствующая высокая текстурная
производительность также являются одними
из важнейших параметров для видеочипов.
Особенное влияние этот параметр оказывает
на скорость рендеринга картинки при использовании
анизотропной фильтрации, требующие дополнительных
текстурных выборок, а также при сложных
алгоритмах мягких теней и новомодных
алгоритмах вроде Screen Space Ambient Occlusion.
Блоки операций растеризации (ROP)
Блоки
растеризации осуществляют операции
записи рассчитанных видеокартой
пикселей в буферы и операции
их смешивания (блендинга). Как мы уже
отмечали выше, производительность блоков
ROP влияет на филлрейт и это — одна из основных
характеристик видеокарт всех времён.
И хотя в последнее время её значение также
несколько снизилось, всё ещё попадаются
случаи, когда производительность приложений
зависит от скорости и количества блоков
ROP. Чаще всего это объясняется активным
использованием фильтров постобработки
и включенным антиалиасингом при высоких
игровых настройках.
Ещё раз
отметим, что современные видеочипы
нельзя оценивать только числом разнообразных
блоков и их частотой. Каждая серия GPU использует
новую архитектуру, в которой исполнительные
блоки сильно отличаются от старых, да
и соотношение количества разных блоков
может отличаться. Так, блоки ROP компании
AMD в некоторых решениях могут выполнять
за такт больше работы, чем блоки в решениях
NVIDIA, и наоборот. То же самое касается и
способностей текстурных блоков TMU — они
разные в разных поколениях GPU разных производителей,
и это нужно учитывать при сравнении.
Геометрические блоки
Вплоть
до последнего времени, количество
блоков обработки геометрии было
не особенно важным. Одного блока
на GPU хватало для большинства
задач, так как геометрия в
играх была довольно простой
и основным упором производительности
были математические вычисления.
Важность параллельной обработки
геометрии и количества соответствующих
блоков резко выросли при появлении
в DirectX 11 поддержки тесселяции геометрии.
Компания NVIDIA первой распараллелила обработку
геометрических данных, когда в её чипах
семейства GF1xx появилось по несколько
соответстующих блоков. Затем, похожее
решение выпустила и AMD (только в топовых
решениях линейки Radeon HD 6700 на базе чипов
Cayman).
В рамках
этого материала мы не будем
вдаваться в подробности, их
можно прочитать в базовых
материалах нашего сайта, посвященных
DirectX 11-совместимым графическим процессорам.
В данном случае для нас важно то, что количество
блоков обработки геометрии очень сильно
влияет на общую производительность в
самых новых играх, использующих тесселяцию,
вроде Metro 2033, HAWX 2 и Crysis 2 (с последними патчами).
И при выборе современной игровой видеокарты
очень важно обращать внимание и на геометрическую
производительность.
Объём видеопамяти
Собственная
память используется видеочипами
для хранения необходимых данных: текстур,
вершин, данных буферов и т. п. Казалось
бы, что чем её больше — тем всегда лучше.
Но не всё так просто, оценка мощности
видеокарты по объему видеопамяти — это
наиболее распространенная ошибка! Значение
объёма видеопамяти неопытные пользователи
переоценивают чаще всего, до сих пор используя
именно его для сравнения разных моделей
видеокарт. Оно и понятно — этот параметр
указывается в списках характеристик
готовых систем одним из первых, да и на
коробках видеокарт его пишут крупным
шрифтом. Поэтому неискушённому покупателю
кажется, что раз памяти в два раза больше,
то и скорость у такого решения должна
быть в два раза выше. Реальность же от
этого мифа отличается тем, что память
бывает разных типов и характеристик,
а рост производительности растёт лишь
до определенного объёма, а после его достижения
попросту останавливается.
Так, в
каждой игре и при определённых
настройках и игровых сценах
есть некий объём видеопамяти,
которого хватит для всех данных.
И хоть ты 4 ГБ видеопамяти туда
поставь — у неё не появится
причин для ускорения рендеринга,
скорость будут ограничивать исполнительные
блоки, о которых речь шла выше, а памяти
просто будет достаточно. Именно поэтому
во многих случаях видеокарта с 1,5 ГБ видеопамяти
работает с той же скоростью, что и карта
с 3 ГБ (при прочих равных условиях).
Ситуации,
когда больший объём памяти
приводит к видимому увеличению
производительности, существуют —
это очень требовательные игры,
особенно в сверхвысоких разрешениях
и при максимальных настройках качества.
Но такие случаи встречаются не всегда
и объём памяти учитывать нужно, не забывая
о том, что выше определённого объема производительность
просто уже не вырастет. Есть у чипов памяти
и более важные параметры, такие как ширина
шины памяти и её рабочая частота. Эта
тема настолько обширна, что подробнее
о выборе объёма видеопамяти мы ещё остановимся
в шестой части нашего материала.
Ширина шины памяти
Ширина
шины памяти является важнейшей
характеристикой, влияющей на
пропускную способность памяти (ПСП).
Большая ширина позволяет передавать
большее количество информации
из видеопамяти в GPU и обратно
в единицу времени, что положительно
влияет на производительность
в большинстве случаев. Теоретически,
по 256-битной шине можно передать
в два раза больше данных
за такт, чем по 128-битной. На практике
разница в скорости рендеринга
хоть и не достигает двух раз, но весьма
близка к этому во многих случаях с упором
в пропускную способность видеопамяти.
Современные
игровые видеокарты используют
разную ширину шины: от 64 до 384 бит
(ранее были чипы и с 512-битной
шиной), в зависимости от ценового
диапазона и времени выпуска
конкретной модели GPU. Для самых
дешёвых видеокарт уровня low-end
чаще всего используется 64 и реже 128 бит,
для среднего уровня от 128 до 256 бит, ну
а видеокарты из верхнего ценового диапазона
используют шины от 256 до 384 бит шириной.
Ширина шины уже не может расти чисто из-за
физических ограничений — размер кристалла
GPU недостаточен для разводки более чем
512-битной шины, и это обходится слишком
дорого. Поэтому наращивание ПСП сейчас
осуществляется при помощи использования
новых типов памяти (см. далее).
Частота видеопамяти
Ещё одним
параметром, влияющим на пропускную
способность памяти, является её
тактовая частота. А повышение
ПСП часто напрямую влияет
на производительность видеокарты
в 3D-приложениях. Частота шины
памяти на современных видеокартах
бывает от 533(1066, с учётом удвоения)
МГц до 1375(5500, с учётом учетверения)
МГц, то есть, может отличаться более чем
в пять раз! И так как ПСП зависит и от частоты
памяти, и от ширины ее шины, то память
с 256-битной шиной, работающая на частоте
800(3200) МГц, будет иметь бо́льшую пропускную
способность по сравнению с памятью, работающей
на 1000(4000) МГц со 128-битной шиной.
Особенное
внимание на параметры ширины
шины памяти, её типа и частоты
работы следует уделять при
покупке сравнительно недорогих
видеокарт, на многие из которых
ставят лишь 128-битные или даже
64-битные интерфейсы, что крайне
негативно сказывается на их
производительности. Вообще, покупка
видеокарты с использованием 64-битной
шины видеопамяти для игрового
ПК нами не рекомендуется вовсе.
Желательно отдать предпочтение
хотя бы среднему уровню минимум
со 128- или 192-битной шиной.
Типы памяти
На современные
видеокарты устанавливается сразу
несколько различных типов памяти.
Старую SDR-память с одинарной скоростью
передачи уже нигде не встретишь,
но и современные типы памяти
DDR и GDDR имеют значительно отличающиеся
характеристики. Различные типы DDR и
GDDR позволяют передавать в два
или четыре раза большее количество
данных на той же тактовой
частоте за единицу времени,
и поэтому цифру рабочей частоты
зачастую указывают удвоенной
или учетверённой, умножая на 2 или
4. Так, если для DDR-памяти указана
частота 1400 МГц, то эта память
работает на физической частоте
в 700 МГц, но указывают так
называемую «эффективную» частоту,
то есть ту, на которой должна
работать SDR-память, чтобы обеспечить
такую же пропускную способность.
То же самое с GDDR5, но частоту
тут даже учетверяют.
Основное
преимущество новых типов памяти
заключается в возможности работы
на больших тактовых частотах,
а соответственно — в увеличении
пропускной способности по сравнению
с предыдущими технологиями. Это достигается
за счет увеличенных задержек, которые,
впрочем, не так важны для видеокарт. Первой
платой, использующей память DDR2, стала
NVIDIA GeForce FX 5800 Ultra. С тех пор технологии
графической памяти значительно продвинулись,
был разработан стандарт GDDR3, который близок
к спецификациям DDR2, с некоторыми изменениями
специально для видеокарт.
GDDR3 — это
специально предназначенная для
видеокарт память, с теми же
технологиями, что и DDR2, но с
улучшенными характеристиками потребления
и тепловыделения, что позволило
создать микросхемы, работающие
на более высоких тактовых
частотах. Несмотря на то, что
стандарт был разработан в
компании ATI, первой видеокартой,
её использующей, стала вторая
модификация NVIDIA GeForce FX 5700 Ultra, а следующей
стала GeForce 6800 Ultra.
GDDR4 — это
дальнейшее развитие «графической»
памяти, работающее почти в два
раза быстрее, чем GDDR3. Основными
отличиями GDDR4 от GDDR3, существенными
для пользователей, являются в
очередной раз повышенные рабочие
частоты и сниженное энергопотребление.
Технически, память GDDR4 не сильно
отличается от GDDR3, это дальнейшее
развитие тех же идей. Первыми
видеокартами с чипами GDDR4 на борту
стали ATI Radeon X1950 XTX, а у компании NVIDIA
продукты на базе этого типа памяти не
выходили вовсе. Преимущества новых микросхем
памяти перед GDDR3 в том, что энергопотребление
модулей может быть примерно на треть
ниже. Это достигается за счет более низкого
номинального напряжения для GDDR4.