Меню

Что такое tmu видеокарта



Технологии в приобретаемой видеокарте (расшифровка некоторых терминов, используемых при описании видеосистем персональных компьютеров).

Технологии в приобретаемой видеокарте (расшифровка некоторых терминов, используемых при описании видеосистем персональных компьютеров).

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

Шейдерный блок.
Технология эта сравнительно новая. Шейдер — это специальная программа, которая использует определенные программируемые регистры видеокарты для создания различных графических эффектов (регистры — это ячейки памяти). Всего различают два вида шейдеров: вершинные и пиксельные шейдеры.
Вершинные шейдеры

Вершинные шейдеры позволяют гибко управлять ядром T&L (от англ. Transformation and Lighting — Трансформация и Освещение), то есть дают разработчику широкие возможности по аппаратному ускорению обработки вершин полигонов (позволяют производить различные геометрические преобразования и вычисления). В наборе команд вершинных шейдеров присутствуют 127 инструкций. Что же реально можно получить с помощью вершинных шейдеров? Область их применения практически не ограничена (а если и ограничена, то только фантазией разработчика). С помощью этих шейдеров можно получить объемный реалистичный туман, всевозможные деформации объектов, плавный морфинг (это когда одно изображение «перетекает» в другое), эффект motion blur (размытие при движении, т.е. при очень быстром движении объекта, он начинает казаться нечетким, немного смазанным), практически неограниченное количество источников света, и многое другое.
Пиксельные шейдеры

Пиксельные шейдеры в свою очередь дают широкие возможности по обработке пикселей (экранных точек). Инструкций пиксельных шейдеров всего 8. Эти шейдеры позволяют программисту по шагам управлять процессом наложения текстур и вычисления цвета пикселей. Что это дает разработчику (и пользователям)? Что касается игр, то здесь использование шейдеров, как пиксельных, так и вершинных, возрастает все больше и больше. Во-первых, можно получить в играх (и не только) реальное освещение (ведь с помощью этих шейдеров возможно делать освещение определенных пикселей). Во-вторых, в арсенале разработчика появились микрополигоны, что позволяет создавать реалистичные эффекты взрыва, дождя, пыли, дыма, и т.п. В-третьих, шейдеры дают точные тени (теперь тени образуются даже от малейших неровностей поверхности). С помощью пиксельных шейдеров можно получить еще множество интересных эффектов, но главная суть пиксельных и вершинных шейдеров, я думаю, стала понятной — это добиться максимальной реалистичности. Кстати, в отличии от вершинных шейдеров, нет способа эмулировать пиксельные шейдеры программным путем.

Унифицированная архитектура

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

Конвейер

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

Далее вершины собираются в примитивы – треугольники, линии, точки, после чего переходят в пиксельный блок.

Пиксельныйблок . Блок TMU – Texture Mapping Unit

Здесь определяются конечные пиксели, которые будут выведены на экран, и над ними проводятся операции освещения или затенения, текстурирования (этим занимается блок TMU – Texture Mapping Unit, который связан с пиксельным конвейером), присвоения цвета, добавляются эффекты от пиксельных шейдеров.

Количество конвейеров Чем больше конвейеров поддерживает видеокарта, тем, естественно, лучше. Кроме количества поддерживаемых конвейеров очень важно число текстурных блоков. Если взять, к примеру, две видеокарты с одним и тем же количеством конвейеров, но разным количеством текстурных блоков, то при наложении одной текстуры на объект разницы во времени мы не почувствуем вообще. Когда же придет пора мультитекстурирования, то видеокарта с меньшим числом текстурных блоков проиграет. Чтобы узнать, сколько текстур видеокарта сможет наложить на объект за один проход, необходимо количество конвейеров умножить на число текстурных блоков. Кстати, минимальное требование для DirectX9-совместимых ускорителей — это 16 текстур за один проход.

T&L(Transform&Lighting).
Трансформация и Освещение (так звучит название этой технологии на русском языке) — это процесс переноса информации о 3D мире (позиция объектов, дистанция между ними, источники света) в 2D изображение, которое в действительности и отображается на экране. С появлением аппаратной поддержки T&L увеличилась скорость игр, а также их качество (не только графика, но и искусственный интеллект и физика). Причем же здесь трансформация и освещение к, например, искусственному интеллекту? Дело в том, что создание объектов со сложной геометрией (а тем более, освещением) требует очень больших скоростей обработки данных. И всю эту работу приходилось делать процессору (при использовании программного T&L). И после того, как видеокарта начала сама «беспокоиться» о трансформации и освещении, довольно большая нагрузка спала с центрального процессора, тем самым, дав больше процессорного времени и мощности для других задач (ИИ, физические расчеты, и др.). Так что наличие аппаратной поддержки T&L играет очень важную роль (во всех новых ускорителях она есть).

T & L -конвейер

Сейчас значительно улучшен блок T&L. В первую очередь, возросла производительность: теперь акселератор способен на 3D-расчеты, эквивалентные по сложности 76 млрд. операций с плавающей точкой в секунду. Во-вторых, блок стал программируемым, и это мощный инструмент для разработчиков игровых приложений. И это очевидная «статья расходов» новых транзисторов — они обеспечивают логику и математику GPU нового поколения. Разумеется, T&L необходима большая пропускная способность шины, так как ее ширины постоянно не хватает. По заявлению Nvidia, все данные о геометрии полигонов хранятся в специальном буфере локальной видеопамяти. Благодаря конвейерам, оснащенным программируемым T&L-блоком, в NV20 введена поддержка 3D-текстур и, следовательно, воксельной графики. Технология 3D-текстур позволяет создавать более точные 3D-объекты, передавая специфику материалов, обрабатывать объемные среды (туман, взвесь частиц в луче света), а также создавать объекты с изменяющейся структурой — разрушающиеся стены, вмятины, трещины и тому подобное. Открывается интересная возможность поддержки сплайновых полигонов. Сплайновые криволинейные поверхности, это уже почти реальность.

Читайте также:  Моя видеокарта перестала работать

Программируемый T&L-блок (nfiniteFX Engine).

Программируемый T&L-блок открывает технологию пиксельных и вершинных шейдеров, позволяя программистам регулировать процесс рендеринга, что дает практически бесконечные возможности по созданию новых эффектов. Ведь, если разобраться, в GeForce256, как и в GeForce2, не было настоящего геометрического процессора. Конечно, в GeForce256 и GeForce2 очень помогала возможность аппаратной трансформации и освещения полигонов, но это же и ограничивало программистов, которые не были больше способны управлять процессами рендеринга и наложения текстур. Теперь появился первый настоящий GPU.

Аппаратный T&L, и не какой-нибудь, а уже программируемый. Программируемый T&L-конвейер, помимо повышения скорости, дает известные преимущества. Аппаратная поддержка воксельной геометрии, 3D-текстур, сплайновых поверхностей. Множество фактов говорит о том, что чип способен создавать криволинейные полигоны, причем сложности высокого порядка. В чип введена поддержка уже привычной технологии сжатия текстур FXT1 (а также S3TC). Видеочипы все больше походят на процессоры. Это и полностью программируемые этапы рендеринга, и реализация нестандартных контроллеров памяти, и даже постоянное увеличение объема накристальной кэш-памяти.

Графический процессор

Ключевым компонентом любой современной видеокарты является графический процессор (или набор микросхем — графический чипсет), который занимается расчётами выводимой на экран информации и трёхмерных сцен. На данный момент разработкой графических процессоров занимаются в основном компании NVIDIA, продвигающая серию GeForce, и AMD, купившая канадскую компанию ATI с её линейкой Radeon. Программные драйверы, с помощью которых операционные системы и приложения управляют видеокартой, как правило, разрабатываются именно с учетом параметров конкретного набора микросхем.

Видеопамять

Для хранения изображений, текстур и другой необходимой информации на плате видеокарты установлены чипы памяти (GDDR, GDDR2, GDDR3, GDDR4), соединённые с графическим процессором специальной шиной, ширина которой определяется в битах: 64, 128, 256, 320, 384, 512. Эффективные частоты могут достигать: 1000 МГц для GDDR и GDDR2, на картах с GDDR3 — 2200 МГц, а GDDR4 – более 2 ГГц.

DAC (Digital to Analog Converter)

Цифроаналоговый преобразователь, он же DAC (Digital to Analog Converter). Ранее используемый в качестве отдельной микросхемы, DAC зачастую встраивается в графический процессор новых наборов микросхем.

RAMDAC

Цифроаналоговый преобразователь видеокарты с собственной памятью с произвольным доступом (обычно называемый RAMDAC) преобразует генерируемые компьютером цифровые изображения в аналоговые сигналы, которые может отображать монитор.

Разъём Dual Link DVI I

Современные ускорители обычно снабжены самыми современными видеовыходами, в том числе двумя интерфейсами Dual-Link DVI, поддерживающими вывод на два монитора с разрешением 2560х1600.

Присутствие двух разъёмов Dual-Link DVI, что позволяет работать с плоскопанельными дисплеями больших форматов с разрешением до 2560 x 1600 пикселей;

BIOS видеокарты

BIOS видеокарты (подобно системной BIOS персонального компьютера, хранится в микросхеме ROM) содержит основные команды (программы), которые предоставляют интерфейс между оборудованием видеоадаптера и программным обеспечением, информацию о видеоадаптере, экранные шрифты и т. д. Программа, которая обращается к функциям BIOS видеокарты, может быть автономным приложением, операционной системой или системной BIOS. Обращение к функциям BIOS позволяет вывести информацию о мониторе во время выполнения процедуры POST и начать загрузку системы до начала загрузки с диска любых других программных драйверов.

Видеодрайвер

Программный драйвер является одним из важнейших элементов видеосистемы, с его помощью осуществляется связь программного обеспечения с видеокартой. Видеодрайверы используются для поддержки процессора видеоадаптера. Несмотря на то, что видеокарты поставляются изготовителем вместе с драйверами, иногда используются драйверы, поставляемые вместе с набором микросхем системной логики. Желательноиспользовать драйверы, поставляемые производителем адаптера. Программные драйверы разрабатываются для взаимодействия непосредственно с API, а не с операционной системой и программным обеспечением (API — OpenGL и Direct 3D).

Fillrate.
Fillrate — это величина, которая указывает на скорость закраски треугольников. По большому счету это основной фактор, сдерживающий быстродействие 3D ускорителей. Fillrate указывается в двух видах — мегапикселей/секунду (MPix/s) и мегатекселей/секунду (MTexels/s, где тексель — это элемент текстуры, т.е. определенный пиксель в текстуре). Вывод здесь напрашивается один: чем больше эти два показателя, тем быстрее будет работать видеокарта.

Источник

Блоки адресации, выборки и фильтрации текстур
в составе современных графических чипов

Более подробно ознакомиться с 3D терминологией можно в статье Ликбез по 3D.

Немного истории

Трудно переоценить значение специализированных блоков загрузки и фильтрации текстур в составе архитектуры современного графического процессора. Собственно, аппаратное ускорение 3D-графики на персональных компьютерах началось именно с их появления. Первый удачный 3D-акселератор для массового рынка, Voodoo Graphics, был двухчиповым решением. Один чип, TexelFX, представлял собой один простой текстурный блок, загружавший четыре текселя и выполнявший билинейную интерполяцию между ними за один такт. Другой чип, PixelFX, являлся простым блоком растеризации (ROP), выводящим один пиксель за такт. В Voodoo 2 был добавлен второй текстурный блок, что позволило применять несколько более сложные эффекты, накладывая до двух текстур на пиксель за такт. Либо, если игра не поддерживала мультитекстурирования, включать трилинейную фильтрацию.

На периодически добавляющейся поддержке увеличенных размеров и новых форматов текстур в этой статье внимание заострять не будем. Следующим важным нововведением стало появление возможности однопроходного мультитекстурирования — до двух текстур за проход силами одного текстурного блока на конвейер в Rage 128. Тот чип имел текстурный и пиксельный кеши, по 8 КБ каждый, что позволило сохранять между тактами промежуточные результаты рендеринга с полной точностью и без задержек, связанных с записью в видеопамять. Этой модели последовали и другие производители, и дальше мы видели увеличение количества накладываемых текстур за проход, увеличение количества конвейеров рендеринга, добавление полноценных блоков T&L и увеличение сложности эффектов, реализуемых различными методами одновременного накладывания нескольких текстур.

Добавление поддержки продвинутых эффектов типа попиксельного освещения, рельефного текстурирования с использованием карт окружения и им подобных, привело к появлению программируемых АЛУ, привязанных к текстурным блокам. Чуть позже наступило время полностью программируемых шейдерных архитектур. Появились программируемые вершинные шейдеры. Сначала процессоры вершинных шейдеров работали параллельно со старыми (fixed-function) блоками T&L, которые выполняли свой фиксированный набор функций эффективнее более гибких вершинных процессоров. Дальнейшее развитие вершинных процессоров позволило полностью отказаться от FF блоков T&L, а текстурные блоки стали частью пиксельных процессоров. Несмотря на постоянное увеличение возможностей и количества программируемых АЛУ, архитектуры графических чипов еще долгое время были чётко разделены на блоки обработки вершинных и пиксельных шейдеров, где пиксельные шейдеры имели почти эксклюзивный доступ к блокам текстурирования. Рассмотрим блоки текстурирования такой архитектуры подробно на примере последнего вышедшего «топового» чипа — R580+.

Читайте также:  Обновить драйвера видеокарты автоматически амд

R580+ в качестве примера старой архитектуры

R580+ имел 48 пиксельных процессоров, распределенных по четырем SIMD-квадам (пиксельные процессоры одного квада выполняли одни и те же инструкции, но над разными пикселями). При этом, внутри квадов они были сгруппированы в группы по 3. К каждой группе был привязан свой текстурный блок, который получал инструкцию одновременно со своей группой пиксельных процессоров.

Текстурный блок мог выбирать до четырех текселей и выполнять одну билинейную интерполяцию за такт до 16-ти раз за проход. Поддерживалась адресация текстур размером до 4096х4096. Поддерживались сжатые форматы DXTC/S3TC 1-5 и 3DC+. Отличие 3DC+ от 3DC, в дополнение к 4:1 компрессии двухканальных текстур, заключается в поддержке 2:1 компрессии одноканальных текстур, которые могут быть использованы для карт освещения или затенения, для хранения свойств материалов и т.п.. Конечно же, можно было выполнять анизотропную фильтрацию степенью до 16х.

На том этапе в ATI считали, что основным применением для текстур в формате с плавающей запятой будет хранение таблиц данных, поэтому для них аппаратно поддерживалась только поточечная выборка. Выборка из FP16 текстуры выполнялась за два такта, из FP32 текстуры — за 4. Программист мог реализовать их фильтрацию в шейдере, соответственно теряя в производительности.

Учитывая соотношение 3:1 количества пиксельных процессоров к количеству текстурных блоков, в чипах ATI, начиная с RV530, была введена поддержка технологии под названием Fetch4, призванной ускорить выборку из одноканальных текстур в 4 раза.

Обычные текстуры являются четырёхканальными (красный, зелёный, синий цвета и альфа-канал). Fetch4 использует 4 канала RGBA для одновременной выборки из четырёх текселей одноканальной текстуры. Основное применение этой технологии видится в чтении карт теней и в последующем усреднении значений затенённости в пиксельном шейдере.

Отдельно остановимся на вопросе доступа к текстурам из вершинного шейдера. SM3.0 требует возможность текстурирования в вершинном шейдере, в то время как WHQL сертицифицированный R580+ не имел никаких специальных узлов для доступа к текстурам из вершинных процессоров. Этот факт породил немало недоумений о неполном соответствии R580+ спецификациям SM3.0. Все дело в том, что хотя бит возможности текстурирования в вершинном шейдере и должен быть включен, спецификация SM3.0 не диктует каких-либо форматов текстур, которые должен поддерживать вершинный процесор. Этой брешью в спецификации успешно пользовался R580+, проходя все SM3.0 тесты Microsoft.

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

В действительности, использовать текстурные модули пиксельных конвейеров в вершинных шейдерах можно было уже тогда. Результат пиксельного шейдера может быть записан не только в кадровый буфер или в текстуру, но и в вершинный буфер — буфер в памяти, используемый в качестве ввода для вершинного шейдера. ATI продвигали использование расширения Render To Vertex Buffer (R2VB) для DirectX в качестве альтернативного метода текстурирования в вершинном шейдере. По идее, любой DirectX9 (включая SM2.0 и не-ATI) графический контроллер был способен поддерживать рендеринг в вершинный буфер, все зависело только от желания или нежелания производителей включить поддержку R2VB в драйвере. R2VB имел плюсы по сравнению с вершинным текстурированием в его тогдашнем виде. Он позволял использовать всю функциональность пиксельного шейдера в вершинном, и должен был выполняться быстрее, чем традиционное вершинное текстурирование, так как пиксельные процессоры уже были созданы с учетом высоких задержек при выборке текстур. Перейдём к блокам текстурирования современных архитектур.

Текстурные блоки R600

R600 имеет квартет текстурных блоков, и они теперь почти полностью отделены от вычислительных массивов АЛУ. Единственным ограничением является привязанность каждого текстурного блока к своим квадам шейдерных процессоров. Т.е., если представить R600 как 4 массива по 16 шейдерных блоков, то каждый массив представляет собой 4 квада, и каждый текстурный блок загружает данные только в свой квад в каждом из четырёх массивов.

Каждый текстурный блок состоит из 8 блоков адресации, 20 блоков выборки и 4 блоков фильтрации. Обратите внимание, что 4 из 20 блоков выборки предназначены исключительно для поточечной выборки (или для загрузки вершин). Выборка любой текстуры, включая даже FP32, происходит теперь всего за один такт. Т.е., например, каждый текстурный блок способен загрузить достаточно FP32 текселей для четырёх билинейных фильтраций и ещё 4 FP32 текселя для поточечной выборки, и всё за один такт. Блоки фильтрации теперь способны аппаратно фильтровать любые форматы текстур. Причём, большинство форматов билинейно фильтруются также за один такт. Исключение составляют только два самых «тяжёлых» формата — четырёхканальные INT16 и FP32 — на фильтрацию которых уходит два такта. Текстурный блок может наложить до 128 текстур за проход.

Была добавлена поддержка адресации 8192х8192 текстур, а также нового 32-бит RGBE (9:9:9:5) формата. По-прежнему поддерживается Fetch4, и появилась поддержка PCF (Percentage Closer Filtering), благодаря её включению в DirectX 10. PCF долгое время оставалась проблемой для ATI, т.к. она не была документирована в DirectX и вообще являлась интеллектуальной собственностью SGI, доступ к которой nVidia получила путём специального соглашения. Тем не менее, технология смогла получить широкую поддержку в играх, благодаря использованию NV2A в игровой приставке XBOX, где поведение PCF было хорошо известно разработчикам. Реализация технологии сходна с применением Fetch4 для сглаживания теней, за исключением того, что PCF усредняет значения текселей аппаратно блоком фильтрации текстур.

Читайте также:  Видеокарта ультра hd для компьютера

Текстурные блоки имеют L1 кеши по 32 КБ каждый, вершинный кеш может использоваться для ускорения поточечных выборок (у RV610 вершинный и L1 кеши сложены в один), размер L2 кеша равен 256 КБ у R600 и 128 КБ у RV630 (RV610 не имеет L2 текстурного кеша).

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

Текстурные блоки G80

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

Каждый текстурный блок состоит из 4 блоков адресации, 8 (32 в терминологии R600) блоков выборки и 8 блоков фильтрации. Выборка из FP16 текстуры выполняется на половинной скорости, из FP32 текстуры — в четыре раза медленнее, чем выборка INT8. Блоки фильтрации способны аппаратно фильтровать любые форматы текстур. Некоторые примеры возможностей: каждый текстурный блок способен либо выполнить 4 билинейные AF 2x с форматом INT8 (да, бесплатная AF 2x, если нужные тексели оказались в L1 кеше), либо 4 билинейные фильтрации с форматом FP16, либо 2 билинейные фильтрации с форматом текстуры FP32. Текстурный блок может наложить до 128 текстур за проход.

Текстурные блоки имеют L1 кеши по 8 КБ каждый. L2 кеш, объём которого равен 128 КБ, текстурные блоки делят с блоками ROP. По всей видимости, текстурные блоки G80 используются для доступа к буферам констант шейдерными процессорами, что может негативно сказаться на производительности DirectX 10 приложений.

Текстурные блоки G80 также управляются арбитрами отдельно от шейдерных процессоров.

В чипах G84 и G92, появившихся после G80, каждый кластер шейдерных процессоров уже включает по 8 блоков адресации текстур.

Заключение

Сравним некоторые пиковые теоретические возможности текстурных блоков R580+, R600 и G80 таблицей.

Чип R580+ R600 G80
Видеокарта Radeon X1950 XTX Radeon HD 2900 XT 1 GB GeForce 8800 Ultra
Частота 650 МГц 825 МГц 612 МГц
Текстурных блоков 16 4 8
Кеш L1 2 КБ * 16 32 КБ * 4 + вершинный 8 КБ * 8
Кеш L2 ? 256 КБ 128 КБ
Текстур за проход 16 128 128
Блоков адресации 1 * 16 (16) 8 * 4 (32) 4 * 8 (32)
Блоков выборки (в единицах AMD) 4 * 16 (64) 20 * 4 (80) 32 * 8 (256)
Блоков фильтрации 1 * 16 (16) 4 * 4 (16) 8 * 8 (64)
INT8 выборок за такт для билинейной фильтрации 4 * 16 (64) 16 * 4 (64) 32 * 8 (256)
FP16 выборок за такт ½ * 4 * 16 (32) 1 * 20 * 4 (80) ½ * 32 * 8 (128)
FP32 выборок за такт ¼ * 4 * 16 (16) 1 * 20 * 4 (80) ¼ * 32 * 8 (64)
Трилинейных фильтраций INT8 за такт ½ * 1 * 16 (8) ½ * 4 * 4 (8) ½ * 8 * 8 (32)
Билинейных фильтраций FP16 за такт 1 * 4 * 4 (16) ½ * 8 * 8 (32)
Билинейных фильтраций FP32 за такт ½ * 4 * 4 (8) ¼ * 8 * 8 (16)
Билинейных фильтраций одноканальных FP32 за такт 1 * 4 * 4 (16) ¼ * 8 * 8 (16)
Трилинейных фильтраций INT8 в секунду 8 * 650 * 10^6 (5.2 млрд) 8 * 825 * 10^6 (6.6 млрд) 32 * 612 * 10^6 (19.6 млрд)
Билинейных фильтраций FP16 в секунду 16 * 825 * 10^6 (13.2 млрд) 32 * 612 * 10^6 (19.6 млрд)
Билинейных фильтраций одноканальных FP32 в секунду 16 * 825 * 10^6 (13.2 млрд) 16 * 612 * 10^6 (9.8 млрд)

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

Но всё же R600 является заметным шагом вперёд по сравнению с R580+.

Судя по предварительным данным, Fetch4 будет включена в состав DirectX 10.1 под названием Gather4. В отличие от PCF, уже включенной в состав DX 10, это позволит напрямую передавать неотфильтрованные тексели одноканальных текстур блокам АЛУ (PCF передаёт блокам АЛУ только отфильтрованный результат). Начиная с RV530, продукты AMD уже поддерживают Fetch4, а компании nVidia придётся изменить их текстурные блоки для поддержки этой технологии.

Краткий глоссарий некоторых терминов, использованных в статье

  • Пиксель — элемент изображения, выводимого на экран. Например, экран с разрешением 1600х1200 состоит из 1600 * 1200 (1.92 * 10^6) пикселей.
  • Тексель — элемент текстуры. Например, текстура размером 512х512 состоит из 512 * 512 (262144) текселей.
  • Поточечная выборка — выборка одного текселя из текстуры с учётом LOD.
  • Билинейная интерполяция (билинейная фильтрация) — усреднение значений четырёх соседних текселей (2х2) одного MIP-уровня одной текстуры для последующего использования полученной средней величины. Помогает устранять шумы, возникающие, когда один пиксель проецируется сразу на несколько текселей одной текстуры.
  • Трилинейная фильтрация — линейная интерполяция результатов двух билинейных фильтраций соседних MIP-уровней одной текстуры. Т.е. всего выбирается восемь текселей. Сглаживает переходы MIP-уровней.
  • AF (Anisotropic Filtering) — анизотропная фильтрация, несколько раз выполненные билинейная или трилинейная фильтрации в целях уточнения получаемого значения. Например, AF 2x выполнит базовую фильтрацию до двух раз (в случае билинейной базовой фильтрации будут загружены до восьми текселей). Существуют несколько разных алгоритмов анизотропной фильтрации.
  • Карта теней — текстура, полученная во время специального прохода рендеринга сцены с точки зрения источника света. Во время этого прохода значения буфера глубины сохраняются в карту теней.
  • Одно-, двух-, трёх-, четырёх- канальные текстуры. Типичные базовые текстуры являются четырёхканальными, где три канала отведены на три основных цвета (RGB — красный, зелёный, синий) и один на альфа-канал (степень прозрачности текстуры). Но четыре компоненты многим типам текстур просто не нужны. Так, например, карты теней, освещённости, глубины, часто являются одноканальными. Карты нормалей часто являются двухканальными.
  • Формат текстуры INT8 — каждый канал представлен восьмибитным целым числом. Например, каждый тексель INT8 RGBA текстуры представлен 32-мя битами (8:8:8:8).
  • Формат текстуры INT16 — каждый канал представлен шестнадцатибитным целым числом. Тексель четырёхканальной INT16 текстуры занимает 64 бит.
  • Формат текстуры FP16 — каждый канал представлен шестнадцатибитным числом c плавающей запятой. Тексель четырёхканальной FP16 текстуры занимает 64 бит.
  • Формат текстуры FP32 — каждый канал представлен 32-х битным числом c плавающей запятой. Тексель четырёхканальной FP32 текстуры занимает 128 бит.
Источник