Что такое пиксельная частота

Обновлено: 06.07.2024

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

Тактовая частота видеочипа

Рабочая частота GPU измеряется в мегагерцах, в миллионах тактов в секунду. Эта характеристика прямо влияет на производительность видеочипа, чем она выше, тем больший объем работы чип может выполнить в единицу времени, обработать большее количество вершин и пикселей. Пример из реальной жизни: частота видеочипа, установленного на плате RADEON X1900 XTX равна 650 МГц, а точно такой же чип на RADEON X1900 XT работает на частоте в 625 МГц. Соответственно будут отличаться и все основные характеристики производительности. Но далеко не только рабочая частота чипа однозначно определяет производительность, на его скорость сильно влияет и архитектура: количество различных исполнительных блоков, их характеристики и т.п.

В последнее время участились случаи, когда тактовая частота для отдельных блоков GPU отличается от частоты работы всего остального чипа. То есть, разные части GPU работают на разных частотах, и сделано это для увеличения эффективности, ведь некоторые блоки способны работать на повышенных частотах, а другие — нет. Из последних примеров можно назвать семейство GeForce 8800 от NVIDIA, видеочип модели GTS работает на частоте 512 МГц, но универсальные шейдерные блоки тактуются на значительно более высокой частоте — 1200 МГц.

Скорость заполнения (филлрейт)

Скорость заполнения показывает, с какой скоростью видеочип способен отрисовывать пиксели. Различают два типа филлрейта: пиксельный (pixel fill rate) и текстурный (texel rate). Пиксельная скорость заполнения показывает скорость отрисовки пикселей на экране и зависит от рабочей частоты и количества блоков ROP (блоков операций растеризации и блендинга), а текстурная — это скорость выборки текстурных данных, которая зависит от частоты работы и количества текстурных блоков.

Например, пиксельный филлрейт у GeForce 7900 GTX равен 650 (частота чипа) * 16 (количество блоков ROP) = 10400 мегапикселей в секунду, а текстурный — 650 * 24 (кол-во блоков текстурирования) = 15600 мегатекселей/с. Чем больше первое число - тем быстрее видеокарта может отрисовывать готовые пиксели, а чем больше второе - тем быстрее производится выборка текстурных данных. Оба параметра важны для современных игр, но они должны быть сбалансированы. Именно поэтому количество блоков ROP в чипах семейства G7x, на которых построено семейство GeForce 7, меньше количества текстурных и пиксельных блоков.

Количество блоков пиксельных шейдеров (или пиксельных процессоров)

Пиксельные процессоры — это одни из главных блоков видеочипа, которые выполняют специальные программы, известные также как пиксельные шейдеры. По числу блоков пиксельных шейдеров и их частоте можно сравнивать шейдерную производительность разных видеокарт. Так как большая часть игр сейчас ограничена производительностью исполнения пиксельных шейдеров (см. технологические обзоры игр), то количество этих блоков очень важно! Если одна модель видеокарты основана на GPU с 8 блоками пиксельных шейдеров, а другая из той же линейки — 16 блоками, то при прочих равных вторая будет вдвое быстрее обрабатывать пиксельные программы, и в целом будет производительнее. Но на основании одного лишь количества блоков делать однозначные выводы нельзя, обязательно нужно учесть и тактовую частоту и разную архитектуру блоков разных поколений и производителей чипов. Чисто по этим цифрам прямо можно сравнивать чипы только в пределах одной линейки одного производителя: AMD(ATI) или NVIDIA. В других же случаях нужно обращать внимание на тесты производительности в интересующих играх.

Количество блоков вершинных шейдеров (или вершинных процессоров)

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

Количество унифицированных шейдерных блоков (или универсальных процессоров)

Унифицированные шейдерные блоки объединяют два типа перечисленных выше блоков, они могут исполнять как вершинные, так и пиксельные программы (а также геометрические, которые появились в DirectX 10). Впервые унифицированная архитектура была применена в видеочипе игровой консоли Microsoft Xbox 360, этот графический процессор был разработан компанией ATI. А в видеочипах для персональных компьютеров унифицированные шейдерные блоки появились не так давно, с появлением плат NVIDIA GeForce 8800. И, похоже, что все DirectX 10 совместимые видеочипы будут основаны на подобной унифицированной архитектуре. Унификация блоков шейдеров значит, что код разных шейдерных программ (вершинных, пиксельных и геометрических) универсален, и соответствующие унифицированные процессоры могут выполнить любые программы из вышеперечисленных. Соответственно, в новых архитектурах число пиксельных, вершинных и геометрических шейдерных блоков как бы сливается в одно число — количество универсальных процессоров.

Блоки текстурирования (TMU)

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

Блоки операций растеризации (ROP)

Блоки растеризации осуществляют операции записи рассчитанных видеокартой пикселей в буферы и операции их смешивания (блендинга). Как мы уже отмечали выше, производительность блоков ROP влияет на филлрейт и это — одна из основных характеристик видеокарт всех времен. И хотя в последнее время её значение несколько снизилось, еще попадаются случаи, когда производительность приложений сильно зависит от скорости и количества блоков ROP (см. технологические обзоры игр). Чаще всего это объясняется активным использованием фильтров постобработки и включенным антиалиасингом при высоких игровых настройках.

Нужно еще раз отметить, что современные видеочипы нельзя оценивать только числом разнообразных блоков и их частотой. Каждая серия GPU использует новую архитектуру, в которой исполнительные блоки сильно отличаются от старых, да и соотношение количества разных блоков может отличаться. Компания ATI первой применила архитектуру, в которой количество блоков пиксельных шейдеров было в разы больше числа блоков текстурирования. Это было сделано немного преждевременно, на наш взгляд, но в некоторых приложениях пиксельные блоки используются более активно, чем остальные и для таких приложений подобное решение будет неплохим вариантом, не говоря уже о будущем. Также, в предпоследней архитектуре AMD(ATI) нет отдельных пиксельных конвейеров, пиксельные процессоры не «привязаны» к блокам TMU. Впрочем, у NVIDIA в GeForce 8800 получилось еще сложнее.

Рассмотрим ситуацию на примере видеокарт GeForce 7900 GT и GeForce 7900 GS. Обе они имеют одинаковые рабочие частоты, интерфейс памяти и даже одинаковый видеочип. Но модификация 7900 GS использует GPU с 20 активными блоками пиксельных шейдеров и текстурных блоков, а видеокарта 7900 GT — по 24 блока каждого типа. Рассмотрим разницу в производительности этих двух решений в игре Prey:

Разница в количестве основных исполнительных блоков в 20% дала разный прирост скорости в тестовых разрешениях. Значение 20% оказалось недостижимо потому, что производительность в Prey не ограничена на этих видеокартах только скоростью блоков TMU и ROP. Разница в разрешении 1024x768 составила меньше 8%, а в более высоких достигла 12%, что ближе к теоретической разности в количестве исполнительных блоков.

Объем видеопамяти

Собственная память используется видеочипами для хранения необходимых данных: текстур, вершин, буферов и т.п. Казалось бы, что чем её больше — тем лучше. Но не всё так просто, оценка мощности видеокарты по объему видеопамяти — это наиболее распространенная ошибка! Значение объема памяти неопытные пользователи переоценивают чаще всего, используя его для сравнения разных моделей видеокарт. Оно и понятно — раз параметр, указываемый во всех источниках одним из первых, в два раза больше, то и скорость у решения должна быть в два раза выше, считают они. Реальность же от этого мифа отличается тем, что рост производительности растет до определенного объема и после его достижения попросту останавливается.

В каждой игре есть определенный объем видеопамяти, которого хватает для всех данных, и хоть 4 ГБ туда поставь — у нее не появится причин для ускорения рендеринга, скорость будут ограничивать исполнительные блоки, о которых речь шла выше. Именно поэтому почти во всех случаях видеокарта с 320 Мбайт видеопамяти будет работать с той же скоростью, что и карта с 640 Мбайт (при прочих равных условиях). Ситуации, когда больший объем памяти приводит к видимому увеличению производительности, существуют, это очень требовательные игры в высоких разрешениях и при максимальных настройках. Но такие случаи весьма редки, поэтому, объем памяти учитывать нужно, но не забывая о том, что выше определенного объема производительность просто не растет, есть более важные параметры, такие как ширина шины памяти и ее рабочая частота. Подробнее о выборе объема видеопамяти читайте во второй части статьи.

Ширина шины памяти

Частота видеопамяти

Рассмотрим относительную производительность видеокарт с разной пропускной способностью на примере видеокарт RADEON X1900 XTX и RADEON X1950 XTX, которые используют почти одинаковые GPU с одними характеристиками и частотой. Основные их отличия состоят в типе и частоте используемой памяти — GDDR3 на частоте 775(1550) МГц и GDDR4 на 1000(2000) МГц, соответственно.

Хорошо видно, как отстает карта с меньшей пропускной способностью памяти, хотя разница никогда не достигает теоретических 29%. Разница между достигнутой частотой кадров растет с увеличением разрешения, начинаясь с 8% в 1024x768 и достигая 12-13% в максимальных режимах. Но это сравнение видеокарт с небольшой разницей в ПСП, а особенное внимание на параметры ширины шины памяти и частоты ее работы следует уделять при покупке недорогих видеокарт, на многие из которых ставят лишь 64-битные интерфейсы, что сильно сказывается на их производительности. Вообще, покупка решений на базе 64-бит шины для игр вовсе не рекомендуется.

Типы памяти

На видеокарты устанавливают несколько различных типов памяти. Старую SDR память с одинарной скоростью передачи мы рассматривать не будем, её уже почти нигде не встретишь. Все современные типы памяти DDR и GDDR позволяют передавать в два раза большее количество данных на той же тактовой частоте за единицу времени, поэтому цифру её рабочей частоты зачастую указывают удвоенной (умножают на два). Так, если для DDR памяти указана частота 1400 МГц, то эта память работает на физической частоте в 700 МГц, но указывают так называемую «эффективную» частоту, то есть ту, на которой должна работать SDR память, чтобы обеспечить такую же пропускную способность.

Основное преимущество DDR2 памяти заключается в возможности работы на больших тактовых частотах, а соответственно — увеличении пропускной способности по сравнению с предыдущими технологиями. Это достигается за счет увеличенных задержек, которые, впрочем, не так важны для видеокарт. Первой платой, использующей DDR2 память, стала NVIDIA GeForce FX 5800 Ultra. По сути, на ней стояла GDDR2 память, которая не настоящая DDR2, а нечто среднее между технологиями DDR и DDR2. После применения GDDR2 в серии GeForce FX 5800, последующие видеокарты NVIDIA использовали DDR память, но эта память получила дальнейшее распространение в GeForce FX 5700 Ultra и в некоторых более поздних mid-end видеокартах. С тех пор технологии графической памяти продвинулись дальше, был разработан стандарт GDDR3, который близок к спецификациям DDR2, с некоторыми изменениями, сделанными специально для видеокарт.

GDDR3 — это специально предназначенная для видеокарт память, с теми же технологиями, что и DDR2, но с улучшениями характеристик потребления и тепловыделения, что позволило создать микросхемы, работающие на более высоких тактовых частотах. И опять же, несмотря на то, что стандарт был разработан в ATI, первой видеокартой, ее использующей, стала вторая модификация NVIDIA GeForce FX 5700 Ultra, а следующей стала GeForce 6800 Ultra.

Ну а GDDR4 — это последнее поколение "графической" памяти, работающее почти в два раза быстрее, чем GDDR3. Основными отличиями GDDR4 от GDDR3, существенными для пользователей, являются в очередной раз повышенные рабочие частоты и сниженное энергопотребление. Технически, память GDDR4 не сильно отличается от GDDR3, это дальнейшее развитие тех же идей. Первыми видеокартами с чипами GDDR4 на борту стали RADEON X1950 XTX, а у компании NVIDIA продукты на базе этого типа памяти еще не вышли. Преимущества новых микросхем памяти перед GDDR3 в том, что энергопотребление модулей может быть примерно на треть ниже. Это достигается за счет более низкого номинального напряжения для GDDR4.

Итак, видеопамять самых современных типов: GDDR3 и GDDR4, отличается от DDR некоторыми деталями, но также работает с удвоенной передачей данных. В ней применяются некоторые специальные технологии, позволяющие поднять частоту работы. Так, GDDR2 память обычно работает на более высоких частотах, по сравнению с DDR, GDDR3 — на еще более высоких, ну а GDDR4 обеспечивает максимальную частоту и пропускную способность.

Что такое частота обновления экрана монитора и как она влияет на восприятие

Частота обновления экрана — один из самых неоднозначных параметров монитора. Одни утверждают, что чем она выше, тем лучше, а малая частота снижает качество изображения и вредит зрению. Другие уверены, что высокая частота — это для тех, кому деньги девать некуда, и что глаз все равно не различает частоту выше 25 Гц. Истина, как всегда, где-то посредине.

Что такое частота обновления экрана?

Вне зависимости от того, что мы видим на экране — статичную картинку или динамичный видеоролик — монитор постоянно выводит на экран серию изображений. Просто в первом случае все кадры будут более-менее одинаковы, а во втором расположение деталей на экране будет меняться от кадра к кадру, создавая иллюзию движения. Частота же смены кадров и есть «частота обновления экрана».


Совсем как в кино, поэтому многие вспоминают про стандартные для кинофильмов 24 кадра в секунду, т.е. 24 Гц. Если в кинотеатре никто не жалуется на «низкую частоту обновления», так зачем на мониторе нужно больше?

Существует устойчивый миф, что 24 Гц — это максимальная частота, воспринимаемая человеческим глазом. И что именно поэтому выбран такой стандарт для кино, а более высокая частота кадров просто не имеет смысла.

Развеять этот миф очень просто — достаточно запустить на компьютере какую-нибудь игру, позволяющую задавать скорость вывода кадров на экран (FPS). Игру лучше выбрать попроще, чтобы видеосистема уверенно обеспечивала высокий FPS. Попробуйте выставить в ней сначала FPS 24 и понаблюдать, а потом выше — например, 50. В динамичных сценах разница будет очевидна.


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


Кстати, многие игры также научились «смазывать» объекты, обеспечивая более плавное движение при невысоком FPS. Этот эффект называется motion blur. А частота кадров в кино была выбрана скорее из экономических показателей: меньше частота кадров — короче пленка и проще механика киноаппарата и проектора. Нужна была частота, которая обеспечивает более-менее плавное движение на экране, но при этом не требует больших затрат. Почему именно 24? Потому что при такой частоте минутный расход пленки составлял ровно 30 ярдов, что упрощало расчет количества пленки и, соответственно, бюджета съемок.

60 Гц — мало или достаточно?

Еще один миф, связанный с частотой обновления экрана, — это вред для глаз. Дескать, мониторы с низкой частотой обновления мерцают, что ведет к усталости глаз и, в перспективе, даже к заболеваниям. Следует признать, что это не совсем миф — мерцающее изображение действительно вредно для зрения. И мониторы действительно могут мерцать. Вот только это никак не связано с частотой обновления экрана.


Раньше, когда все мониторы делались на основе электронно-лучевых трубок (ЭЛТ), причиной мерцания экрана действительно была частота обновления. В ЭЛТ люминофор на экране светится только в момент «пробегания» по нему электронного луча. Поэтому чем меньше была «частота монитора», тем заметнее мерцал экран. 60 Гц для такого монитора было совершенно недостаточно.

Однако изображение на экране ЖК-монитора не гаснет в промежутке между обновлениями кадров. Да, на некоторых мониторах заметно мерцание, но не из-за обновления экрана, а из-за режима работы ламп подсветки. Фактически, на статичном изображении нет никакой разницы между мониторами с частотой обновления в 60 Гц и 200 Гц. Если вы используете монитор для работы, в высокой частоте нет необходимости. 60 Гц вполне достаточно.

Кому же нужна высокая частота?

В абзаце, где шла речь о 24 кадрах, не зря упоминалась компьютерная игра. Именно в динамичных играх наиболее заметно влияние частоты обновления. Но если вы любите после работы «погонять в танчики», не спешите бежать в магазин за 240-герцовым монитором. Сначала определитесь, действительно ли вам нужна высокая частота обновления.

    Во-первых, частота обновления монитора должна соответствовать производительности системы. Так что сначала определите максимальный FPS в своей любимой игре — например, с помощью утилиты Fraps. Достаточно скачать и запустить её — текущий FPS начнет отображаться в углу экрана.



А вот киберспортсменам высокая частота обновления действительно важна. Игрок с монитором на 100 Гц получает реальное преимущество перед теми, кто «сидит» на 60 герцах. Именно по этой причине появляются мониторы с частотой 240, 280 и даже 360 Гц.

Впрочем, не все способны воспользоваться эффектом от увеличения частоты обновления. Исследования показали, что мозгу достаточно 13 мс на то, чтобы распознать изображение, но вот на то, чтобы правильно отреагировать на полученный кадр, может потребоваться в десятки раз больше времени. Не стоит рассчитывать, что, сменив монитор, вы сразу и многократно улучшите свои игровые показатели.

Частота обновления и вертикальная синхронизация

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


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

Некоторые мониторы предлагают решить эту проблему без увеличения частоты обновления — при помощи технологий (G-Sync, V-Sync и Freesync), подгоняющих перерисовку кадра к обновлению экрана.


Но и в этом решении есть минусы. Во-первых, технология должна поддерживаться как монитором, так и игрой. Во-вторых, при работе V-sync могут теряться некоторые кадры, что не нравится киберспортсменам.

Частота обновления и время отклика

Время отклика — это период, который требуется пикселям экрана для изменения цвета после получения соответствующей команды. Очевидно, что этот параметр связан с частотой обновления экрана: за время между сменами кадров экран должен не только успеть перерисоваться, но и некоторое время экспонироваться. К примеру, на частоте 100 Гц время демонстрации каждого кадра составляет 10 мс (1000 мс /100 Гц). Если время отклика монитора больше, то нет никакой пользы от высокой частоты обновления, даже наоборот — будет некоторый вред. Когда время отклика сравнимо со временем экспозиции кадра, в динамичных сценах пиксели не успевают «набрать» цвет и правильных цветов на экране вы просто не увидите. Зато заметите «след» старого изображения, отображающегося одновременно с новым.


Поэтому, выбирая монитор с высокой частотой обновления, смотрите, чтобы время отклика у него было минимальным и хотя бы не превышало интервал, необходимый на перерисовку кадра (1000 / частота в Гц).

Выводы

Высокая частота обновления монитора — это не то, что требуется каждому. Если вы не проводите часы за 3D-шутерами или симуляторами, вряд вы вообще ощутите эффект от увеличения частоты обновления. А вот киберспортсменам высокая частота обновления монитора даст реальное преимущество. Да и просто любители динамичных игр почти наверняка (если позволит производительность системы) заметят улучшение игрового процесса, которое последует за увеличением частоты.

Как в кинотеатре или на телевизоре, ваш компьютер симулирует движение на мониторе, выводя последовательность кадров. Частота обновления монитора указывает на то, сколько раз в секунду на экране будет обновляться картинка. Например, частота 75 Гц соответствует 75 обновлениям в секунду.

Если компьютер обрабатывает кадры быстрее, чем может выводить монитор, то в играх могут появиться проблемы. Например, если компьютер просчитывает 100 кадров в секунду, а частота обновления монитора составляет 75 Гц, то из-за накладок монитор может выводить только часть картинки за период своего обновления. В итоге появляются визуальные артефакты.

В качестве решения можно включить V-Sync (вертикальную синхронизацию). Она ограничивает число выдаваемых компьютером кадров до частоты обновления монитора, предотвращая появление артефактов. Если включить V-Sync, то число просчитываемых в игре кадров никогда не превысит частоту обновления. То есть при 75 Гц компьютер будет выводить не более 75 кадров в секунду.

Пиксель (Pixel)

Вершина (Vertex)

Текстура (Texture)

Шейдер (Shader)

Пиксельные программы-шейдеры позволяет видеокарте выдать впечатляющие эффекты, например, как эту воду в Elder Scrolls: Oblivion.

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

Пиксельные шейдеры используются для создания сложных эффектов в ваших любимых играх. Например, код шейдера может заставить пиксели, окружающие 3D-меч, ярче светиться. Ещё один шейдер может обработать все вершины сложного 3D-объекта и симулировать взрыв. Разработчики игр всё чаще прибегают к помощи сложных программ-шейдеров для создания реалистичной графики. Практически любая современная игра с богатой графикой использует шейдеры.

С выпуском следующего интерфейса прикладного программирования (API, Application Programming Interface) Microsoft DirectX 10 на свет выйдет третий тип шейдеров под названием геометрические шейдеры. С их помощью можно будет ломать объекты, модифицировать и даже уничтожать их в зависимости от требуемого результата. Третий тип шейдеров можно будет точно так же программировать, как и первые два, но роль его уже будет другой.

Скорость заполнения (Fill Rate)

Очень часто на коробке с видеокартой можно встретить значение скорости заполнения. В принципе, скорость заполнения указывает на то, с какой скорость графический процессор может выдавать пиксели. У старых видеокарт можно было встретить скорость заполнения треугольников (triangle fill rate). Но сегодня выделяют два типа скорости заполнения: пиксельную (pixel fill rate) и текстурную (texture fill rate). Как уже говорилось, пиксельная скорость заполнения соответствует скорости выдачи пикселей. Она рассчитывается как число растровых операций (ROP), помноженное на тактовую частоту.

Текстурную скорость заполнения ATi и nVidia считают по-разному. nVidia считает, что скорость получается умножением числа пиксельных конвейеров на тактовую частоту. А ATi умножает число текстурных блоков на тактовую частоту. В принципе, оба способа корректны, поскольку nVidia использует по одному текстурному блоку на блок пиксельных шейдеров (то есть по одному на пиксельный конвейер).

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

Архитектура графического процессора: функции

Реализм 3D-графики очень сильно зависит от производительности видеокарты. Чем больше блоков пиксельных шейдеров содержит процессор и чем выше частота, тем больше эффектов можно наложить на 3D-сцену, чтобы улучшить её визуальное восприятие.

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

Вершинные процессоры (блоки вершинных шейдеров)

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

Пиксельные процессоры (блоки пиксельных шейдеров)

Унифицированные шейдеры

Унифицированные (единые) шейдеры ещё не пришли в мир ПК, но грядущий стандарт DirectX 10 как раз опирается на подобную архитектуру. То есть структура кода вершинных, геометрических и пиксельных программ будет единая, хотя шейдеры будут выполнять разную работу. Новую спецификацию можно посмотреть в Xbox 360, где графический процессор был специально разработан ATi для Microsoft. Будет весьма интересно увидеть, какой потенциал несёт новый DirectX 10.

Блоки наложения текстур (Texture Mapping Unit, TMU)

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

Блоки растровых операций (Raster Operator Unit, ROP)

Процессоры растровых операций отвечают за запись пиксельных данных в память. Скорость, с которой выполняется эта операция, является скоростью заполнения (fill rate). В ранние дни 3D-ускорителей число ROP и скорость заполнения являлись очень важными характеристиками видеокарт. Сегодня работа ROP по-прежнему важна, но производительность видеокарты уже не упирается в эти блоки, как было раньше. Поэтому производительность (и число) ROP уже редко используется для оценки скорости видеокарты.

Конвейеры

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

Конвейер нельзя считать строгим техническим термином. В графическом процессоре используются разные конвейеры, которые выполняют отличающиеся друг от друга функции. Исторически под конвейером понимали пиксельный процессор, который был подключён к своему блоку наложения текстур (TMU). Например, у видеокарты Radeon 9700 используется восемь пиксельных процессоров, каждый из которых подключён к своему TMU, поэтому считают, что у карты восемь конвейеров.

С учётом сказанных допущений, число пиксельных конвейеров в графическом процессоре часто используют для сравнения видеокарт (за исключением линейки ATi X1x00). Например, если взять видеокарты с 24 и 16 конвейерами, то вполне разумно предположить, что карта с 24 конвейерами будет быстрее.

Архитектура графического процессора: технология

Техпроцесс

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

Тактовая частота графического процессора

Тактовая частота графического процессора измеряется в мегагерцах (МГц), то есть в миллионах тактов за секунду.

Локальная видеопамять

Память видеокарты очень сильно влияет на производительность. Но разные параметры памяти влияют по-разному.

Объём видеопамяти

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

В большинстве случаев карта со 128 Мбайт видеопамяти будет работать почти так же, как карта с 256 Мбайт. Конечно, есть ситуации, когда больший объём памяти приводит к увеличению производительности, но следует помнить, что больший объём памяти не будет автоматически приводить к росту скорости в играх.

Где объём бывает полезен, так это в играх с текстурами высокого разрешения. Игровые разработчики прилагают к игре несколько наборов текстур. И чем больше памяти будет на видеокарте, тем более высокое разрешение могут иметь загружаемые текстуры. Текстуры высокого разрешения дают более высокую чёткость и детализацию в игре. Поэтому вполне разумно брать карту с большим объёмом памяти, если все другие критерии совпадают. Ещё раз напомним, что ширина шины памяти и её частота намного сильнее влияют на производительность, чем объём физической памяти на карте.

Ширина шины памяти

Более высокая пропускная способность шины (выражается в битах или байтах в секунду, 1 байт = 8 бит) даёт более высокую производительность памяти. Именно поэтому шина памяти намного важнее, чем её объём. При равных частотах 64-битная шина памяти работает со скоростью всего 25% от 256-битной!

Типы памяти

Память можно разделить на две основные категории: SDR (одиночная передача данных) и DDR (удвоенная передача данных), при которой данные передаются за такт в два раза быстрее. Сегодня технология одиночной передачи SDR устарела. Поскольку у памяти DDR данные передаются в два раза быстрее, чем у SDR, важно помнить, что у видеокарт с памятью DDR чаще всего указывают удвоенную частоту, а не физическую. Например, если у памяти DDR указана частота 1000 МГц, то это эффективная частота, при которой должна работать обычная память SDR, чтобы дать такую же пропускную способность. А на самом деле физическая частота составляет 500 МГц.

Частота шины памяти

Подобно процессору, память (или, точнее, шина памяти) работает на определённых тактовых частотах, измеряемых в мегагерцах. Здесь повышение тактовых частот напрямую влияет на производительность памяти. И частота шины памяти является одним из параметров, которые используют для сравнения производительности видеокарт. Например, если все другие характеристики (ширина шины памяти и т.д.) будут одинаковыми, то вполне логично утверждать, что видеокарта с 700-МГц памятью работает быстрее, чем с 500-МГц.

Интерфейс видеокарты

Самая медленная шина, для которой выпускались видеокарты, это PCI (Peripheral Components Interconnect). Если не вдаваться в историю, конечно. PCI действительно ухудшала производительность видеокарт, поэтому они перешли на интерфейс AGP (Accelerated Graphics Port). Но даже спецификации AGP 1.0 и 2x ограничивали производительность. Когда стандарт увеличил скорость до уровня AGP 4x, мы начали приближаться к практическому пределу пропускной способности, которую могут задействовать видеокарты. Спецификация AGP 8x ещё раз удвоила пропускную способность по сравнению с AGP 4x (2,16 Гбайт/с), но ощутимого прироста графической производительности мы уже не получили.

Сегодня лучше всего покупать карту с интерфейсом PCI Express, он продержится на рынке ещё несколько лет. Самые производительные карты уже не выпускаются с интерфейсом AGP 8x, и решения PCI Express, как правило, найти уже легче аналогов AGP, да и стоят они дешевле.

Решения на нескольких видеокартах

Совместное использование нескольких видеокарт даёт достаточную производительность, чтобы вывести игру с высокими настройками качества в высоком разрешении. Но выбирать то или иное решение не так просто.

Начнём с того, что решения на основе нескольких видеокарт требуют большое количество энергии, поэтому блок питания должен быть достаточно мощным. Всё это тепло придётся отводить от видеокарты, поэтому нужно обратить внимание на корпус ПК и охлаждение, чтобы система не перегрелась.

Визуальные функции

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

Microsoft DirectX и версии Shader Model

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

Единственной сложностью остаётся то, что сегодня используются два разных API, а именно Microsoft DirectX и OpenGL, где GL расшифровывается как Graphics Library (графическая библиотека). Поскольку API DirectX сегодня в играх более популярен, мы сконцентрируемся именно на нём. Да и на развитие игр этот стандарт повлиял сильнее.

DirectX периодически обновляется, по мере того, как графические технологии продвигаются вперёд, а игровые разработчики внедряют новые методы программирования игр. Поскольку популярность DirectX быстро возросла, производители графических процессоров начали подгонять выпуск новых продуктов под возможности DirectX. По этой причине видеокарты часто привязывают к аппаратной поддержке того или иного поколения DirectX (DirectX 8, 9.0 или 9.0c).

Многие новые игры требуют установки новейшей версии DirectX, даже если видеокарта относится к предыдущему поколению. То есть новая игра, которая будет использовать путь DirectX 8, всё равно требует установки новейшей версии DirectX 9 для видеокарты класса DirectX 8.

В DirectX 9 можно создавать ещё более сложные программы-шейдеры. DirectX 9 поддерживает Pixel Shader 2.0 и Vertex Shader 2.0. DirectX 9c, обновлённая версия DirectX 9, включила спецификацию Pixel Shader 3.0.

DirectX 10, грядущая версия API, будет сопровождать новую версию Windows Vista. На Windows XP установить DirectX 10 не получится.

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

Перед появлением видеокарт класса DirectX 9 графические процессоры были серьёзно ограничены точностью вычислений освещения. До сих пор освещение можно было рассчитывать только с 256 (8 бит) внутренними уровнями.

Графические процессоры, соответствующие последней спецификации Pixel Shader 3.0, позволяют рассчитывать освещение с более высокой 32-битной точностью, а также выполнять смешение (blending) с плавающей запятой. Таким образом, видеокарты класса SM 3.0 могут поддерживать специальный метод HDR-освещения OpenEXR, специально разработанный для киноиндустрии.

Некоторые игры, которые поддерживают только HDR-освещение методом OpenEXR, не пойдут с HDR-освещением на видеокартах Shader Model 2.0. Впрочем, игры, которые не опираются на метод OpenEXR, будут работать на любой видеокарте DirectX 9. Например, Oblivion использует метод OpenEXR HDR и позволяет включать HDR-освещение только на новейших видеокартах, которые поддерживают спецификацию Shader Model 3.0. Например, nVidia GeForce 6800 или ATi Radeon X1800. Игры, которые используют 3D-движок Half-Life 2, та же Counter-Strike: Source и грядущая Half-Life 2: Aftermath, позволяют включать HDR-рендеринг на старых видеокартах DirectX 9, которые поддерживают только Pixel Shader 2.0. В качестве примеров можно привести линейку GeForce 5 или ATi Radeon 9500.

Полноэкранное сглаживание

Сглаживание очень сильно зависит от производительности видеопамяти, поэтому скоростная видеокарта с быстрой памятью сможет просчитать полноэкранное сглаживание с меньшим ущербом для производительности, чем недорогая видеокарта. Сглаживание можно включать в различных режимах. Например, сглаживание 4x даст более качественную картинку, чем сглаживание 2x, но это будет большим ударом по производительности. Если сглаживание 2x удваивает горизонтальное и вертикальное разрешение, режим 4x его учетверяет.

Текстурная фильтрация

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

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

На сегодня самым лучшим способом фильтрации текстур является анизотропная фильтрация (AF). Подобно полноэкранному сглаживанию, анизотропную фильтрацию можно включать на разных уровнях. Например, 8x AF даёт более высокое качество фильтрации, чем 4x AF. Как и полноэкранное сглаживание, анизотропная фильтрация требует определённой вычислительной мощности, которая увеличивается по мере повышения уровня AF.

Текстуры высокого разрешения

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

У современных игр есть несколько наборов текстур, так что игра без проблем будет работать на старых видеокартах с меньшим количеством видеопамяти, а также и на новых картах с большим объёмом видеопамяти. Например, игра может содержать три набора текстур: для 128 Мбайт, 256 Мбайт и 512 Мбайт. Игр, которые поддерживают 512 Мбайт видеопамяти, сегодня очень мало, но они всё же являются самой объективной причиной для покупки видеокарты с таким объёмом памяти. Хотя увеличение объёма памяти практически не сказывается на производительности, вы получите улучшение визуального качества, если игра поддерживает соответствующий набор текстур.

Засматриваетесь на 4K UHD-мониторы, но ваш лаптоп не поддерживает высокие разрешения? Купили монитор и миритесь с частотой обновления в 30Гц? Повремените с апгрейдом.

TL;DR: 3840×2160@43 Гц, 3200×1800@60 Гц, 2560×1440@86 Гц на Intel HD 3000 Sandy Bridge; 3840×2160@52 Гц на Intel Iris 5100 Haswell.

Предыстория

Давным-давно, когда все мониторы были большими и кинескопными, компьютеры использовали фиксированные разрешения и тайминги для вывода изображения на экран. Тайминги были описаны в стандарте Display Monitor Timings (DMT), и не существовало универсального метода расчета таймингов для использования нестандартного разрешения. Мониторы отправляли компьютеру информацию о себе через специальный протокол Extended display identification data (EDID), который содержал DMT-таблицу с поддерживаемыми режимами. Шло время, мониторам стало не хватать разрешений из DMT. В 1999 году VESA представляет Generalized Timing Formula (GTF) — универсальный способ расчета таймингов для любого разрешения (с определенной точностью). Всего через 3 года, в 2002 году, его заменил стандарт Coordinated Video Timings (CVT), в котором описывается способ чуть более точного рассчитывания таймингов.

Оба стандарта были созданы с учетом особенностей хода луча в электро-лучевой трубке, вводились специальные задержки для того, чтобы магнитное поле успело измениться. Жидкокристаллические мониторы, напротив, таких задержек не требуют, поэтому для них был разработан стандарт CVT Reduced Blanking (CVT-R или CVT-RB), который является копией CVT без задержек для CRT, что позволило значительно снизить требуемую пропускную способность интерфейса. В 2013 году вышло обновление CVT-R c индексом v2, но, к сожалению, открытого описания стандарта в интернете нет, а сама VESA продает его за $350.

История

Стандартные и нестандартные стандарты

Современным мониторам и видеокартам нет никакого дела до фиксированных разрешений и таймингов времен DMT, они могут работать в широком диапазоне разрешений и частот обновления. Давайте посмотрим в техпаспорт моего монитора:

Поддерживаемая горизонтальная частота развертки 31-140 кГц
Поддерживаемая вертикальная частота развертки 29-76 Гц
И максимальный пресет:
Режим Частота горизонтальной развертки Частота вертикальной развертки Частота пикселизации Полярность синхронизации
VESA, 3840×2160 133.3 кГц 60.0 Гц 533.25 МГц H+/V-
Итак, почему лаптоп не может использовать максимальное разрешение?

Дело в частоте пикселизации. Многие видеокарты, а тем более интегрированное в процессор видео, имеют железные ограничения частоты пикселизации, а из-за того, что в EDID монитора нет максимального разрешения с меньшей частотой вертикальной развертки вследствие ограниченности его размера, компьютер не может использовать максимальное разрешение.

К сожалению, производители редко публикуют максимальную частоту пикселизации видеочипов, ограничиваясь максимальным поддерживаемым разрешением, но для интересующих меня карт я нашел необходимую информацию:
Intel HD 3000 (Sandy Bridge): 389 кГц
Haswell ULT (-U): 450 кГц
Haswell ULX (-Y): 337 кГц

Что делать и что сделать?

Ответ очевиден — нужно уменьшить частоту пикселизации! Ее уменьшение приведет и к уменьшению частоты обновления монитора. Как нам это сделать? Нам нужно сгенерировать так называемый modeline — информацию о таймингах для видеокарты и монитора. В сети можно найти множество генераторов modeline, но большинство из них безнадежно устарели и ничего не знают о стандарте CVT-R, который мы и будем использовать. Я рекомендую вам воспользоваться umc под Linux, PowerStrip под Windows и SwitchResX под Mac OS. К слову, SwitchResX — единственная программа, которая может рассчитывать modeline по стандарту CVT-R2, но мой монитор его не поддерживает.

Modeline содержит следующую структуру:

Посмотрите на таблицу выше: минимальная вертикальная частота обновления моего монитора может равняться 29 Гц.

Давайте сгенерируем modeline для разрешения 3840×2160 с частотой обновления в 30 Гц:

Как видим, частота пикселизации с данным режимом будет установлена в 262.75 МГц, что далеко от ограничений моего видеоадаптера.

Давайте попробуем установить и активировать наш режим:


Если все прошло удачно, вы увидите картинку в «неподдерживаемом» вашей картой разрешении на мониторе. Ура!

У нас все еще есть большой запас по частоте пикселизации, да и вряд ли кому-то будет комфортно использовать монитор с частотой обновления в 30 Гц, поэтому мы будем увеличивать ее до тех пор, пока частота пикселизации не приблизится к значению в 389 МГц — пределу моего видеоадаптера. Путем нехитрых манипуляций удалось установить, что при такой частоте мы получаем вертикальную развертку в 44.1 Гц.

Не блеск, но жить можно!

Как можно заметить, частота горизонтальной развертки — 97.25 кГц — вполне в диапазоне поддерживаемых монитором. Как в случае с вертикальной разверткой, так и в случае с разрешением, монитору нет дела до конкретных режимов, поэтому мы можем использовать 3200×1800 при 60 Гц — еще не такое низкое разрешение, как 2560×1440, и с привычной частотой обновления.

  • Отредактировать EDID монитора и указывать его драйверу
  • Добавить modeline в настройки Xorg

Для второго способа достаточно создать файл с Xorg-секцией «Monitor» и поместить его в /etc/X11/xorg.conf.d/ :

Где Identifier — название вашего видеовыхода согласно xrandr. Опцией «PreferredMode» можно задать режим, который будет выбран по умолчанию.

У меня не получается!

Убедитесь, что вы подключаете монитор через DisplayPort 1.2. HDMI 1.4 не позволяет использовать частоту пикселизации выше 340 МГц, в то время как для DisplayPort (HBR2) верхнее ограничение равно 540 МГц. Также удостоверьтесь, что ваш монитор поддерживает частоту обновления выше 30 Гц на максимальном разрешении, т.к. ранние модели этим грешили.

Заключение

Не стоит слепо верить технической документации на монитор. В ходе исследований оказалось, что ограничение по вертикальной частоте аж 86 Гц, вместо 76 Гц по заявлению производителя. Таким образом, я могу наслаждаться плавной картинкой, хоть и в не в самом высоком разрешении


Windows

Давайте просто проверим эти термины немного подробнее.

Что такое разрешение, частота обновления, соотношение сторон, плотность пикселей


Pixel

Теперь давайте начнем с резолюции.

Разрешение

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


Ниже приведены некоторые из распространенных разрешений экрана:

  • 2560 x 1440 (1440p)
  • 1920 x 1080 (FHD или Full HD или 1080p)
  • 1600 х 900
  • 1024 х 768
  • 1280 x 720 (HD или 720p)

Вы можете изменить разрешение вашего дисплея, выполнив следующие действия,

Откройте Настройки Windows . Перейдите по этому пути, Система> Показать . Здесь вы можете изменить разрешение в раскрывающемся меню в разделе Масштаб и макет.

Пиксельная плотность

Плотность пикселей дисплея обозначается тем, что количество пикселей отображается на дюйм на дисплее. Общее количество пикселей на экране является произведением горизонтально расположенных и вертикально расположенных пикселей дисплея. Это разрешение дисплея. Например, для дисплея Full HD количество пикселей на дисплее составляет 1920 * 1080, что составляет 2073600 пикселей. Теперь фактическая плотность пикселей дисплея рассчитывается по этой формуле:

Следовательно, для 1080p Full HD дисплея размером 15 дюймов будет,

Квадратный корень ((1920) ^ 2 + (1080) ^ 2)/15

Это будет равно 146,86 PPI или 146,86 пикселей на дюйм.

Следовательно, чем меньше пикселей на дисплее, чем меньше его физическая площадь, тем четче будет изображение.

Соотношение сторон

Частота обновления

Вы можете установить его по своему выбору в Windows 10 следующим образом:

Откройте «Настройки Windows» и перейдите к «Система»> «Экран»> «Дополнительные параметры дисплея»> «Свойства адаптера дисплея для дисплея X». Здесь X обозначает номер дисплея, который используется вашим компьютером.


Откроется новое мини-окно со свойствами вашего дисплея. Переключитесь на вкладку под названием Монитор. И теперь вы можете переключать частоту обновления для вашего дисплея.

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

Читайте также: