Инновации, инновации
X1000 — это серия карт, оснащенных целым рядом инновационных решений. ATI "с нуля" разработала большинство элементов архитектуры, а такие компании делают это нечасто — обычно раз в несколько лет. Нововведений действительно много. Рассмотрим хотя бы наиболее существенные из них, особенно заметно влияющие на производительность.
Все процессоры ATI, устанавливаемые на картах Х1000, выполнены по технологии 90 нм, благодаря чему на той же площади поверхности, что и у предыдущих серий, удалось поместить вдвое больше транзисторов. При этом снижена рабочая температура самого процессора (чтобы иметь аналогичную тактовую частоту). Впрочем, это не означает, что карты греются не так сильно, как их предшественники, а посему меньше шумят. Увы и ах — из-за возросшей тактовой частоты процессора и памяти этого не случилось. В итоге дешевые модели X1300 PRO, где частота процессора равна 600 МГц, практически "орут" — такой шум выдержит не каждый. Причем версия Х1800, оснащенная более массивными модулями охлаждения, работает намного тише, с вполне приемлемой громкостью. Вот такая вот аномалия.
ATI давно выступала против того, чтобы оснащать свои карты Shader Model 3.0. Компания nVidia ввела эту возможность еще в серии GeForce 6xxx. ATI же поясняла, что на рынке не так много игр, использующих столь "навороченные" функции. Что ж, де-факто игр с поддержкой Shader Model 3.0 и в самом деле не густо — но это именно те игры, позиции которых сильны. Например, Battlefield 2, The Cronicles of Riddick или Splintel Cell: Chaos Theory. Число таких игр постоянно растет — и канадцы уже не могут закрывать глаза на столь существенный элемент оснащения видеокарт. И теперь встраивают Shader Model 3.0 во все свои карты, начиная с серии Х1300 и заканчивая Х1800.
На схеме — новая архитектура Radeon X1800 XT.
Остальные модели — X1600 и X1300 — построены аналогично,
за исключением меньшего числа модулей оттенения и геометрической обработки
Shader Model 3.0 — это только верхушка айсберга новых возможностей измененной архитектуры. Одной из самых важных инноваций является специальный процессор Ultra-Threading Dispatch Processor, позволяющий поддерживать до 512 потоков одновременно. Каждое из ядер модуля оттенения разделено на четыре части. В результате получаем 16 модулей оттенения (в модели Х1800).
Ключевым элементом получения высокой производительности модулей оттенения является их максимальное использование. Если модуль оттенения должен искать тип текстуры, не находящийся в памяти текстур, необходимо обеспечить связь с памятью, установленной на видеокарте. А это, в свою очередь, может привести к сотням циклов задержек. Процессор многопоточности, инсталлированный в версии 512 конвейеров в моделях Х1800 или 128 конвейеров в остальных моделях должен постоянно обеспечивать примерно 90-процентную занятость модулей оттенения.
Еще одна важная особенность новой архитектуры — динамическое разделение (dynamic branching). Принцип работы этого механизма состоит в оптимизации диапазона обработки модифицируемых пикселей. В те моменты, когда определенные пиксели не должны обрабатываться, они, благодаря подсчетам, проведенным программой оттенения, пропускаются. Работа над пикселями разделяется процессором UTDP на сотни потоков, состоящих из маленьких блоков размером 4х4 пикселя. Эти точки могут выполнять тот же код оттенения. В тот момент, когда чип UDTP определяет, что он не полностью загружен (закончил задачу или ожидает данные), начинается определение новых задач для выполнения. Во время ожидания новых заданий модули ALU заполняются новыми потоками для выполнения. Каждый из процессоров оттенения Radeon X1800 за один такт может выполнять до двух векторных и скалярных операций. В итоге Radeon X1800 может выполнять до шести инструкций оттенения за один такт на 16 пикселях одновременно.
Восемь модулей обработки геометрии в свою очередь могут обрабатывать одной 128-битной векторной инструкцией и одной 32-битной скалярной за каждый такт. Эти модули поддерживают также функции динамического контроля инструкций, то есть зависимостей и циклов. Оттенение пикселей и вершин производится со 128-битной точностью.
Еще одним нововведением, очень важным с точки зрения производительности карты, стал новый контроллер памяти. Он создан на базе двух окружностей, данные по которым двигаются в противоположных направлениях, что позволяет сократить время задержек к данным. В центре "округлости" находится контроллер памяти, вокруг которого помещен перекрестный коммутатор, связанный, в том числе, и с восемью клиентами. Те же, в свою очередь, могут связываться через указанный коммутатор как с 256-битной внешней шиной данных, так и главным контроллером памяти. В тот момент, когда один из восьми клиентов выдает задание контроллеру памяти, данные, "бегающие" по окружностям, перехватываются ближайшим так называемым Ring Stop (всего их четыре). Что интересно, контроллер памяти программируется, так что они могут быть усовершенствованы с выходом очередных версий драйверов.
Это тем более важно, что этот контроллер поддерживает также и механизм установки важности, которые могут вноситься в код программистами. В результате каждый программист может написать код программы таким образом, чтобы он был максимально оптимизирован под новые карты ATI. По сравнению с моделью серии Х850 контроллер памяти был основательно переработан также и по количеству каналов. У карты-предшественницы было четыре 64-битных канала памяти, связывающихся с четырьмя банками модулей памяти. В версии Х1800 — восемь 32-битных каналов и 8 восемь новых модулей памяти. Благодаря такому "упорядочению" улучшается общий доступ к памяти. Оптимизации подверглась и кэш-память — теперь она может назначаться в любом месте во внутренней памяти графического адаптера.
Модуль оттенения в приближении.
Как видим, каждый двигатель разделен на четыре сегмента
Одним из самых популярных эффектов, используемых в современных играх, является High Dynamic Range — то есть демонстрация света высокой рассеянности и интенсивности. От этого в значительной степени зависит реалистичность игр, однако ранее эта функция имела существенный недостаток — на картах nVidia не могла работать одновременно со сглаживанием кривых. Можно было запустить либо HDR, либо полноэкранное сглаживание — выбор зависел от пользователя. Правда, при включенном HDR соотношение контраста в отображаемых сценах заметно возрастает, так что "остроугольные" кривые видны лучше, чем при выключенном HDR.
ATI первой предоставила в новых картах одновременную поддержку HDR и сглаживания. Что ж, увидим, сможет ли nVidia с выходом следующего поколения драйверов улучшить свою систему. Если эта задача окажется чересчур сложной, ATI получит козырь в виде HDR с полным сглаживанием.