...
...

ATI R420 — канадский ответ на калифорнийский NV40. Часть 1

ATI R420 — канадский ответ на калифорнийский NV40. Часть 1

Уже позади эйфория по поводу первых тестов NV40. Все смогли убедиться в том, что новое решение от NVIDIA в ряде тестов действительно быстрее своих предшественников в 2 раза, а в некоторых случаях даже превосходит эту цифру. Фантастические характеристики нового чипа подтвердились не менее фантастической производительностью в ряде 3D-приложений, и многие пользователи и аналитики начали серьезно сомневаться в том, сможет ли компания ATI дать достойный ответ. У "калифорнийской дивы" в лице карт GeForce 6800 Ultra и GeForce 6800 на базе чипа NV40 имелась также аппаратная поддержка пиксельных и вершинных шейдеров версии 3.0, которые будут включены в следующую версию DirectX 9.0 с индексом "c", что в плане гибкости архитектуры ставило чип ATI не в самое выгодное положение, учитывая отсутствие поддержки таковых в R420. Однако все напряженно ждали, когда же к обозревателям придет канадский ответ на калифорнийское чудо. И, как оказалось, ждали совсем не зря…

Как и в случае с NV40, канадский чип ATI R420 представлен сразу двумя модификациями плат: ATI Radeon X800 XT и ATI Radeon X800 Pro.
Первое решение — это прямой конкурент NVIDIA GeForce 6800 Ultra и по совместительству самое высокотехнологичное решение на базе чипа ATI R420. Карта имеет, как и NVIDIA GeForce 6800 Ultra, 16 пиксельных конвейеров и 6 вершинных процессоров, однако частотные характеристики явно не в пользу NVIDIA GeForce 6800 Ultra. ATI Radeon X800 Pro — это уже урезанное решение на базе чипа R420. Нужно отметить, что в своей новой линейке компания ATI отказалась от традиционного для прошлого поколения чипов деления Hi-End решений по частотам работы ядра и памяти. На этот раз в числе урезаемых параметров оказался и такой принципиально важный для производительности GPU параметр, как количество пиксельных конвейеров. Вместо 16 пиксельных конвейеров ATI Radeon X800 Pro содержит 12. Лучшие умы человечества на данный момент находятся в поисках способа решения включения дополнительных конвейеров на видеокарте Radeon X800 Pro, однако пока поиски результатов не дали.
Как видим, компания ATI в своей новой линейке видеокарт также внесла существенные изменения в маркировку чипов. Налицо полный отказ от прежней маркировки чипов, в отличие от NVIDIA, которая ее в целом сохранила, но отказалась от приставки "FX", имеющую, видимо, по мнению аналитиков NVIDIA, плохую карму=). Хорошо это или плохо — сказать трудно, но как нам кажется, проблем с распознаванием новых карт на базе чипа R420 будет не очень много: благо приставки Pro и XT остались на месте.

Технические характеристики чипов R420 vs NV40
Мы уже рассматривали особенности архитектуры чипа NV40 в нашем прошлом обзоре, посвященном архитектуре чипа NVIDIA NV40. Теперь же будет интересно взглянуть на цифры NV40 в свете появившихся полных спецификаций R420, которые можно увидеть в нашей таблице 1.

Таблица 1.
Итак, спецификации нового чипа от ATI R420 перед вами. В прошлом обзоре по архитектуре NV40 мы восхищались техническими характеристиками передового решения от NVIDIA; теперь же, по-видимому, настал черед удивляться достижениям ATI. Если взглянуть на основные технические характеристики чипов обеих компаний, то приходишь к выводу, что они разработаны со строгой оглядкой на решения конкурента.

Судите сами: блоки геометрической обработки у обоих графических процессоров имеют одинаковое число вершинных процессоров — 6. По сравнению с решениями предыдущего поколения, ATI увеличила количество вершинных процессоров на 2 (у ATI Radeon 9800 XT/ATI Radeon 9800 Pro их было 4), а NVIDIA и вовсе удвоила: 6 вместо 3-х у GeForce FX 5950 Ultra и GeForce FX 5900 Ultra. Так или иначе, но на данном этапе конкуренции у графических чипов для настольных систем обоих крупнейших производителей одинаковое число вершинных процессоров. Однако не стоит забывать, что количество вершинных процессоров у разных чипов вовсе не обязательно означает одинаковую функциональность ввиду различных подходов в реализации с вершинными шейдерами у обоих производителей. Вернемся к таблице спецификаций: значения частоты ядер у обоих решений различны — у ATI Radeon X800 XT 520 МГц, в то время как NVIDIA GeForce 6800 Ultra имеет заметно меньшую частоту графического ядра — 400 МГц. Именно поэтому ATI R420 с тем же числом вершинных процессоров изначально имеет преимущество над NV40 благодаря гораздо более высокой тактовой частоте ядра. Однако гибкость вершинных процессоров у R420 заметно ниже, чем у NV40. Это выражается в отсутствии поддержки динамических переходов в вершинных шейдерах, а также в невозможности производить выборку текстур. Все вместе это означает, что ATI никоим образом не сможет заявить поддержку вершинных шейдеров 3.0 — ее чип R420 просто физически не способен обрабатывать вершинные шейдеры, соответствующие версии 3.0.

Количество пиксельных конвейеров — это также одна из ключевых характеристик акселератора, которая влияет на скорость закраски графического процессора. Здесь мы видим абсолютную солидарность ATI и NVIDIA. Обе компании увеличили количество пиксельных конвейеров ровно в два раза и теперь как NV40, так и R420 имеют по 16 пиксельных конвейеров, что позволяет выводить им по 16 пикселов за такт. Однако утверждение, что R420 имеет 16 пиксельных конвейеров, было бы не совсем верным, так как архитектура работы блока закраски у R420 несколько иная.

Если взглянуть на блок-схемы презентации архитектуры нового чипа, то видно, что 16 пиксельных конвейеров (представленных схематично в виде небольших "трубочек") сгруппированы в виде 4-х блоков по 4 конвейера. По сути, мы имеем дело не с 16-ю, а с 4-мя пиксельными конвейерами, но каждый из этих блоков умеет работать не с одним единственным пикселом, а сразу с целым блоком пикселов, называемый "квадом", где находится сразу 4 пикселя в виде блока 2х2. Таким образом, мы и получаем 16 выводимых пикселов за такт. Каждый из таких широких 4-пиксельных блоков имеет свою независимую организацию работы, а также независимую кэш-память, блоки выборки текстур и сами пиксельные процессоры. По замыслам ATI, такая структура пиксельных конвейеров чипа R420 должна наилучшим образом уменьшать латентность работы блока закраски графического процессора и наиболее оптимальным образом расходовать вычислительные мощности GPU. В результате ATI получает хорошую возможность наиболее эффективно использовать все свои выпускаемые чипы. Путем отключения одного из 4-х блоков пиксельных конвейеров можно получать 12-, 8- и даже 4-конвейерные решения на базе R420. Такой подход для ATI уже далеко не нов — мы могли с вами убедится в этом после прочтения нашей недавней статьи по переделке ATI Radeon 9800 SE в полноценный ATI Radeon 9800 Pro. Канадская компания уже давно использует все свои выпускаемые чипы наиболее оптимальным образом, и опыт работы с чипами архитектуры R3XX помогает и в работе с новыми чипами. Если в ходе тестирования работы выпущенного чипа обнаруживаются проблемы в одном из блоков, то он благополучно выключается, и мы можем использовать 3 оставшихся "больших" пиксельных конвейера для менее производительных решений. Именно таким образом была получена модификация чипа ATI Radeon X800 Pro, которая имеет 12 пиксельных конвейеров рендеринга, то есть 3 блока. Планируемая в скором времени SE-модификация карт ATI Radeon X800 будет иметь уже только половину пиксельных блоков по сравнению с ATI Radeon X800 XT.

Весьма больным вопросом в свое время был вопрос о точности вычислений при работе с плавающей запятой в пиксельных процессорах. Были многочисленные скандалы с 3D Mark'ами и нападки на NVIDIA, которая имела гибкую архитектуру своих графических процессоров GeForce FX, позволяющую им проводить вычисления как с 16-битной, так и с 32-битной точностью работы с плавающей запятой. Проблема заключалась в том, что вычисления, проводимые в 16-битном формате, имели на выходе явные артефакты в получаемом изображении (бандинг), а 32-битные вычисления обходились NVIDIA очень дорого в плане производительности. ATI же придерживалась золотой середины в данном вопросе: спецификациями DirectX 9.0 была установлена минимально-допустимая точность работы с плавающей запятой — 24 бит. Видимо решив, что изобретать велосипед, а точнее, наступать на грабли NVIDIA не стоит, ATI в своем новом чипе придерживается старых 24 бит для вычислений с плавающей запятой, хотя и поддерживает представление данных в 16-битном и 32-битном форматах. И мы можем понять ATI в этом вопросе — качество изображения при такой точности работы с плавающей запятой оптимально для среднестатистического глаза. Поддержку шейдеров 3.0 компания вводить не собирается, а это значит, что и поднимать точность работы с плавающей запятой пока рано.

GDR3: новым чипам — новую память
Наиболее интересной особенностью плат на базе чипа ATI R420 можно смело считать внедрение памяти стандарта GDR3. Графические ускорители всегда шагали впереди планеты всей в плане использования новых типов памяти. Сразу вспоминается внедрение DDR I и первые платы на ней, DDR II… Материнские платы с поддержкой памяти DDR II только-только перешагнули стадию анонсов, а тут уже видеокарты с памятью GDR3 на подходе=). У ATI R420 в плане использования памяти стандарта GDR3 нет эксклюзивности — NVIDIA также использует данный тип памяти. Тем не менее, есть некоторые особенности в работе контроллера памяти NV40 и R420.

ATI для своего решения решила использовать хорошо проверенную схему конфигурирования контроллера памяти. Вся шина разделена на 4 независимых канала, по 64 бит каждый — 64х4 = 256 бит — результирующая ширина полосы пропускания памяти. Каждый из каналов имеет полностью независимую логику и управляется переключателем, который и отвечает за подачу данных на каждый из четырех каналов. Подобная схема конфигурирования достаточно хороша тем, что можно наиболее оптимальным образом использовать общий канал памяти.
Сама же GDR3 — это дальнейшее совершенствование стандарта памяти DDR. Мощность графических чипов растет, а вместе с ней растет и потребность в более широкой шине памяти, а это значит, что должны расти тактовые частоты для обеспечения большей пропускной способности.

Таблица 2.
Как видно из таблицы 2, которая взята нами из презентации ATI, память GDR3 имеет ряд преимуществ перед GDR2, так и не получившей должное распространение среди производителей плат. Как видим, в стандарте GDR3 во многом учтены ошибки GDR2. Бросаются в глаза цифры в поддержке частот более 600 MHz, применение GDR3 как единого отраслевого стандарта, а также тесная интеграция нового стандарта памяти с мобильными системами, которые в последнее время начинают стремительно повышать свою функциональность.
Вместе с нововведениями, GDR3 сохраняет обратную совместимость с DDR I и DDR II по таким параметрам, как структура данных и импульсы синхронизации. Также память GDR3 можно смело назвать оверклокерской мечтой (что сама ATI и не побоялась сделать=)) из-за низкой потребляемой мощности, что приводит к минимальному нагреву чипов памяти GDR3 на платах, базирующихся на чипах ATI R420.

Temporal Antialiasing — новые алгоритмы антиалиасинга
С выходом чипа ATI R420 и карт на его базе ATI анонсировала новый алгоритм антиалиасинга под названием Temporal Antialiasing, что можно перевести как "временное сглаживание", но мы будем пользоваться термином "темпоральное сглаживание".

Суть нового алгоритма заключается в улучшении качества антиалиасинга благодаря особенностям человеческого зрения, которое обладает свойством "инерционности". Если добавить к этому тот факт, что чипы ATI могут управлять положением сэмплов, то мы получаем весьма интересную технологию от ATI. Суть заключается в том, что, рассчитывая на инерционность человеческого зрения, при рендеринге сцены положение субпикселов меняется. Т.е. на каждом четном и нечетном кадре в соответствии с выбранным количество сэмплов AA субпиксел будет иметь отличное от начального положение — чередоваться от кадра к кадру. В итоге, инерционное человеческое зрение (или также весьма инертный ЖК-монитор) будет усреднять эти два кадра и глазу будет казаться, что использовано в 2 раза больше сэмплов, чем это есть на самом деле. Однако для того, чтобы технология работала на практике, нужно в обязательном порядке включать вертикальную синхронизацию с монитором, что имеет свои последствия, и в приложении должна быть обеспечена скорость не менее 60 fps, т.к. в противном случае Temporal Antialiasing заменяется на обычный AA.

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

Бурдыко Алексей, Knes@tut.by




© Компьютерная газета

полезные ссылки
Корпусные камеры видеонаблюдения