Начальная

Windows Commander

Far
WinNavigator
Frigate
Norton Commander
WinNC
Dos Navigator
Servant Salamander
Turbo Browser

Winamp, Skins, Plugins
Необходимые Утилиты
Текстовые редакторы
Юмор

File managers and best utilites

Семейства видеокарт AMD(ATI) RADEON Справочная информация. Шейдерные блоки видеокарты


Шейдерные процессоры или объем памяти.

 

Выпустив летом 2008 года свои новые решения AMD/ATI и Nvidia, включились в новый виток гонки за производительность. Тогда же каждая из двух компаний озвучила планы по созданию новых линеек видеокарт.

 

 

Решения AMD/ATI на новом GPU RV770 создали линейку высокопроизводительных видеокарт Radeon HD4800. Первоначально в нее вошли - Radeon HD4850 (512МБ GDDR3, частоты работы 625/2000) и HD4870 (512МБ GDDR5, частоты работы 750/3600). Если первая предназначалась в Middle-end сегмент рынка и имела рекомендованную розничную стоимость на уровне 199$, то вторая должна была прикрывать нижний High-End и иметь рекомендованную стоимость на уровне 299$. Через полтора месяца в ряды видеокарт серии Radeon HD4800 затесался еще один представитель ставший флагманом AMD/ATI - двухчиповый Radeon HD4870 Х2 (2ГБ GDDR5 = 2x1ГБ, частоты работы 750/3600). Рекомендованная цена для него составила 549$, то есть она обозначила триумфальное возвращение продукции AMD/ATI в сегмент Hi-End решений для энтузиастов.

 

 

Nvidia, между тем, выпустив в начале лета 2008 года видеокарты основанные на флагманском чипе GT200, который сменил G80/92, поменяла вывеску под которой эти видеокарты пошли в продажу - GeForce GTX2xx. Расшифровываться это будет примерно так: GTX - принадлежность продукта к решениям ТОР класса, а цифровое обозначение 2хх - трехзначный номер модели. Всего было анонсировано 2 модели видеокарт: GeForce GTX280 - 240 потоковых процессоров, частоты 602(1296)/2200, 1024МБ памяти GDDR3 и GeForce GTX260 - 192 потоковых процессора, частоты 576(1242)/2000, 896МБ памяти GDDR3 имевшими рекомендованную стоимость в 549 и 399 долларов соответственно, поспешно сдувшуюся до 449 и 299 долларов, а затем и еще больше.

 

 

И вот здесь следует немного оговориться. Если AMD/ATI в начале года выпустила линейку видеокарт Radeon HD4800 включающую в себя решения входящие как в Middle, так и в High-Еnd сегменты рынка, то Nvidia ограничилась выпуском только High-Еnd решений. Middle-End сегмент оставили прикрывать сдувшиеся в цене видеокарты из серий GeForce 8800 и 9800.

 

В августе/сентябре, как со стороны AMD/ATI, так и Nvidia, была проведена небольшая работа над ошибками. После выхода видеокарты Radeon HD4870 512МБ было высказано достаточно много претензий в связи с недостаточным объемом видеопамяти. Вскоре в продажу поступили видеокарты Radeon HD4870 с 1Gb высокоскоростной памяти GDDR5 (частоты работы 750/3600) и рекомендованной стоимостью 329$, которые решили проблему её нехватки в некоторых играх на высоких разрешениях. Nvidia же поступила немного иначе. Для большей конкуренции с решениями AMD/ATI в лице Radeon HD4870, была усилена одна из видеокарт на основе GT200, вернее ее графический процессор. В GeForce GTX260 решено было добавить шейдерных процессоров, увеличив их количество со 192 до 216 штук. Новая видеокарта получила наименование GeForce GTX260 Core 216 и новую ценовую нишу, немного дороже "старой" GeForce GTX260-192.

 

Вот с такими "работами над ошибками" в виде GeForce GTX260 Core 216 и Radeon HD4870 1Gb GDDR5 я и предлагаю ознакомиться в нашей сегодняшней статье.

 

Сlub3D Radeon HD4870 1Gb.

1. Передняя и оборотная сторона

 

2. Маркировка, коннектор CF

 

3. Коробка: перед, зад, стикер.

 

4. Комплектация.

 

5. Сравнение с Radeon HD4850-512, карта в корпусе.

 

Видеокарта Club3D Radeon HD4870 1Gb основывается на референсном дизайне печатной платы. Цвет текстолита красный. Длина РСВ составляет 250 мм.

 

Gigabyte Radeon HD4870 512MB

 

Сlub3D Radeon HD4870 1Gb

 

 

Club3D Radeon HD4870 1Gb основана на графическом процессоре AMD -RV770. Количество транзисторов GPU равно ~ 956 млн. штук. Графический процессор производятся по 55 нм технологии. Площадь RV770 равна 256 мм2 (55 нм RV670 - 190 мм2). Чип в своей основе имеет: скалярных унифицированных шейдерных процессоров (ALU) - 800 штук, блоков текстурирования (TMU) - 40 штук, блоков растеризации (ROP) - 16 штук.

 

 

 

Все блоки ядра работают на базовой частоте GPU, равной 750 (по спецификации 750) МГц.

 

 

 

В отличие от своей менее объемной сестры HD4870 512MB, память, установленная на графическом адаптере HD4870 1Gb, GDDR5 производства не Qimonda 1.0 ns, а Hynix 1.0 ns, как и на видеокартах Radeon HD4870 X2. Номинальная частота работы 4000 (4х1000) МГц, но работает она на 3600 (4х900) мгц. Шина доступа к памяти - 256-bit, что на частоте 3600 МГц дает общую пропускную способность в 115,2 Гбит/с.

 

 

У видеокарт Radeon HD4870 присутствует разделение частот на 2D и 3D режимы. Для 3D режима частоты видеокарты Club3D Radeon HD4870 1Gb равны 750/3600, а для 2D - 507/3600.

 

На задней панели - ТВ-выход и два DVI-выхода, которые также можно использовать через переходник как HDMI.

 

 

 

Видеокарта оборудована двумя разъемом дополнительного питания 6-pin. Потребление видеокарты Radeon HD4870 с объемом памяти 512МБ заявлено производителем на уровне 160Вт, а для карты с объемом 1Gb немного выше.

 

 

 

На видеокарту Сlub3D Radeon HD4870 1Gb устанавливается референсная двухслотовая система охлаждения, которая полностью повторяет виденную нами на 512МБ версии Radeon HD4870. Система не монолитна и состоит из трех частей - радиатора для охлаждения GPU, пластины-радиатора для отвода тепла с памяти расположенной только на лицевой стороне PCВ и элементов питания карты и турбины-вентилятора

 

 

 

Охлаждением GPU занимается конструкция состоящая из медного теплосъемника, двух тепловых трубок и нанизанных на них тонких алюминиевых пластин.

 

 

 

Второй компонент этого кулера - алюминиевая пластина, которая отводит тепло как с памяти, так и с элементов питания видеокарты.

 

 

 

Третьим компонентом кулера является турбина. В 2D скорость вращения турбины не выходит за рамки 30%, а в 3D повышает свои обороты до 40%, оставаясь при этом весьма тихой.

 

 

 

В 3D температура GPU видеокарты Club3D Radeon HD4870 1Gb, работающей на номинальных частотах, составляет 88 градусов.

 

Видеокарту Club3D Radeon HD4870 с 1Gb набортной памяти удалось разогнать по средствам утилит:

 

AMD Overdrive- утилита является составной частью Catalyst Control Center (CCC).

 

 

 

Возможности. Утилита позволяет изменять частоты GPU/Mem, имеет встроенный тест стабильности, осуществляет мониторинг за температурой и нагрузкой GPU, а также может следить за частотами работы карты в 2D/3D. Кроме того с недавних пор утилита получила и поддержку управления скоростью вентилятора СО карты. Потолок установки частот GPU/Mem для видеокарты Radeon HD4870 1Gb составляет 790/4400.

 

Riva Tuner 2.11- утилита имеет полноценную поддержку видеокарт Radeon HD4600/4800, как в одиночной, так и в CF конфигурации.

 

AMD GPUClockTool- последняя версия данной утилиты 0.9.8.0 обладает поддержкой видеокарт Radeon HD4xxx. Присутствует возможность разгона и мониторинга температуры карты.

 

При помощи утилиты Riva Tuner 2.11 видеокарта Club3D Radeon HD4870 1Gb была разогнана до частот 836/3804. В разгоне GPU прогревался до 92 градусов на оригинальном кулере с турбиной работающей в АВТО режиме.

 

 

 

Разгон Club3D Radeon HD4870 1Gb разочаровал, особенно по памяти. Как оказалось, память Hynix используемая на видеокартах Radeon HD4870-1Gb, может покорить гораздо меньшие частоты, чем память производства Qimonda, применяемая на Radeon HD4870 с объемом памяти в 512МБ. К слову, присутствующая в тестировании видеокарта Club3D Radeon HD4870-512 с памятью Qimonda смогла осилить частоты 845/4450.

 

Gigabyte GeForce GTХ260 Core 216 896МБ

 

1. Передняя и оборотная сторона.

 

 

 

2. Маркировка, BIOS, коннектор SLI.

 

 

 

3. Коробка: перед, зад, стикер.

 

 

 

4. Комплектация.

 

 

 

5. "Новая" Gigabyte GeForce GTХ260 Core 216 896МБ в сравнении со "старой" Gigabyte GeForce GTХ260 896МБ, карта в корпусе.

 

 

 

Видеокарта Gigabyte GeForce GTХ260 Core 216 (дальше будет именоваться как GeForce GTХ260-216) основывается на референсном дизайне печатной платы. Её длина составляет 270 мм, что равно длине таких видеокарт производства Nvidia как 8800GTX, 9800GTX и 9800GX2. Дизайн печатной платы не претерпел абсолютно никаких изменений относительно "старой" версии GeForce GTХ260 со 192 шейдерными процессорами (дальше будет именоваться как GeForce GTХ260-192). Поэтому я взял на себя смелость не разбирать карту Gigabyte GeForce GTХ260-216 и ниже предоставить фотографии старой версии GeForce GTХ260-192 этого же производителя.

 

 

Gigabyte GeForce GTX260 896МБ

 

 

Gigabyte GeForce GTX260-216 896 mb основана на GPU Nvidia G200-103-A2. Предшественница, видеокарта GeForce GTX260-192, имела маркировку GPU - G200-100-A2. Количество транзисторов равно 1400 млн. штук. Графический процессор производится по 65 нм технологии. Площадь G200 равна 576 мм2 (65 нм G92 - 330 мм2, 55 нм RV770 - 256 мм2). Чип в своей основе имеет: скалярных унифицированных шейдерных процессоров (ALU) - 216 штук, блоков текстурирования (TMU) - 72 штуки, блоков растеризации (ROP) - 28 штук.

 

Блоки TMU и ROP работают на базовой частоте GPU равной 576 (по спецификации 576) МГц, а унифицированные шейдерные процессоры на частоте 1242 (по спецификации 1242) МГц.

 

 

 

Память установленная на графическом адаптере - GDDR3, производства Hynix со временем выборки 1.0 ns. Номинальная частота работы 2000 (2х1000) МГц на которой она и работает. Объем 896МБ. Шина доступа к памяти - 448-bit, что на частоте 2000МГц дает общую пропускную способность в 111,9Гбит/с.

 

 

Видеокарты серии GeForce GTX260/280 имеют разделение частот на 2D и 3D режимы, в результате чего в простое достигается существенная экономия электроэнергии. Для 3D режима частоты видеокарты Gigabyte GeForce GTX260 896 MB равны 576(1242)/1998, а для 2D 399(798)/594 МГц.

Кроме использования раздельных частот для 2D/3D режимов на видеокарте применена еще одна технология энергосбережения - HybridPower. Ее использование пока возможно только на материнских платах для процессоров AMD основанных на чипсетах Nvidia 7 серии. Эти материнские платы имеют встроенное графическое ядро, на которое в 2D и ложится основная задача по выводу изображения, в то время как дискретная видеокарта, поддерживающая эту технологию, просто отключается, и этим самым достигается еще большая экономия электроэнергии.

 

На задней панели ТВ-выход и два DVI-выхода, которые также можно использовать через переходник как HDMI.

 

 

 

Видеокарта GeForce GTX260-216, как и ее предшественница GeForce GTX260-192, имеет два 6-pin разъема дополнительного питания.

 

 

 

Кулер, устанавливаемый на видеокарты GeForce GTX260, является дальнейшим развитием охладителей, используемых на видеокартах GeForce 8/9 серий. Воздух забирается внутри корпуса и, пройдя сквозь радиатор, пронизанный тепловыми трубками, выбрасывается наружу.

 

 

 

Сам кулер состоит из трех частей. Это: 1 - радиатор GPU с теплосьёмниками для памяти и некоторых элементов питания платы; 2 - пластиковый кожух-направляющая для создания воздушного потока и 3 - тонкая алюминиевая пластина на обратной стороне платы, предназначенная для отвода тепла с микросхем памяти.

 

 

Типоразмер вентилятора-турбины, используемого в референс кулере, еще больше увеличен относительно имеющихся на таких видеокартах как GeForce 8800/9800GTX. На номинальных частотах работы карты турбина раскручивается до 50% от максимума, с разгоном поднимается до 55%, а на 100% превращается в ревущего монстра, но это для энтузиастов.

 

В 2D температура GPU видеокарты Gigabyte GeForce GTX260-216 896 MB, работающей на номинальных частотах, составляет 53 градуса (турбина 40%), а в 3D поднимается до 78 градусов (турбина 50%).

 

 

В целом, система охлаждения видеокарты Gigabyte GeForce GTX260-216 896 MB вполне эффективно справляется со своими обязанностями, впрочем как и ее предшественницы GeForce GTX260-192 . За номинальные режимы работы карты не стоит беспокоиться, а для тех, кто этим не ограничится, кулер предоставляет определенный запас прочности.

 

Видеокарту Gigabyte GeForce GTX260-216 896 MB набортной памяти удалось разогнать по средствам утилит:

 

Riva Tuner 2.11 - утилита имеет полноценную поддержку видеокарт GeForce GTХ260/280 как в одиночной, так и в SLI конфигурации позволяя изменять частоты GPU(Shader)/Mem, мониторить температуру, управлять скоростью вращения кулера.

 

 

При помощи утилиты Riva Tuner 2.11 видеокарта Gigabyte GeForce GTX260-216 896MB была разогнана до частот 702(1458)/2520.

 

 

 

В разгоне GPU прогревался до 81 градуса с турбиной работающей в АВТО режиме на 56% от максимума.

 

 

 

В целом разгон видеокарты порадовал. "Новая" GeForce GTX260-216 погналась даже немного лучше, чем взятая для тестов "старая" GeForce GTX260-192. Это относится к шейдерным процессорам осилившим +54 мгц и памяти которая смогла прибавить +90 мгц.

 

Конфигурация системы

  • Intel Core 2 Quad Q9550 C1 2.83 @ 3.75 Ghz (8,5x442 mhz)
  • Arctic Cooling Freezer Xtreme 800-1500 rpm
  • 2x2 GB DDR2-800 @ 884 Apacer CL5-4-4-12
  • Gigabyte GA-EX38-DS4 BIOS F6a
  • 750 GB WD7500AAKS SATA-II 16 mb
  • BluRay Writer/HD-DVD Reader LG L20H SATA
  • DVD+/-RW LiteOn 165S6S SATA
  • Creative Audigy 2 ZS
  • ATX Miditower Chieftec LBX-01B-B-B
  • 750W Corsair TX750

 

[url=http://images.people.overclockers.ru/133371.jpg]24" DELL 2407WFP 1920x1200x60Hz[/url]

 

Программное обеспечение

- Windows Vista Home Premium x86 Eng SP1 + последние обновления

- Драйвер материнской платы Gigabyte GA-EX38-DS4 - Intel 9.0.0.1008

- Nvidia PhysX Driver от 29.10.2008 (ускорение физики для видеокарт Nvidia отключено)

 

- Версия DirectX за ноябрь 2008

 

Драйверы видеокарт

GeForce GTX260 - Nvidia GeForce Driver 180.43 Beta

Radeon HD4870 - AMD Catalyst 8.11hotfix2 (8.552)

 

Настройки драйверов - Default, все оптимизации включены! V-sync отключена.

 

Участники тестирования

Radeon HD4870-1GB - Club3D Radeon HD4870 1Gb 750/3600

 

Radeon HD4870-512MB- Club3D Radeon HD4870 512MB 750/3600

 

 

GeForce GTX260-216 896MB - Gigabyte GeForce GTX260 core 216 896MB 576(1242)/2000

 

GeForce GTX260-192 896MB - Gigabyte GeForce GTX260 896MB 576(1242)/2000

 

Для участия в тестах были взяты 4 видеокарты: две Nvidia и две AMD/ATI. Первоначально планировалось, что для каждой из видеокарт будут произведены тесты, как на дефолтных частотах, так и в разгоне. Но по ходу тестирования от тестов каждой видеокарты в разгоне решено было отказаться. Если видеокарта GeForce GTX260-216 смогла без проблем достать GeForce GTX260-192 и перегнать, то с видеокартами AMD не все так однозначно. Вариант видеокарты HD4870 с 512МБ памяти смог достаточно сильно обогнать вариант HD4870 с 1ГБ. Так что в разгоне, между этими двумя картами, можно было сравнивать скорее удачность, или неудачность, выбранной видеокарты, но не прирост производительности. Поэтому было принято волевое, осознанное решение тестировать как Radeon HD4870-512, так и GeForce GTX260-192, только на номинальных частотах.

Кроме того хочется написать и о том, что в статье могло появиться, но не появилось. В первую очередь здесь могли появиться результаты тестирования пары видеокарт Radeon HD4850 512МБ работающих в CrossFireX режиме. Но по объективным причинам это не было сделано. В местной рознице стоимость Radeon HD4850-512 достаточно низка, а стоимость HD4870 с 1Gb памяти неоправданно завышена. За пару HD4850-512 просят столько же сколько за одну HD4870 с 1Gb! В других районах мира этот разрыв гораздо ниже и стоимость одной HD4870-1GB всего лишь на 40-50% выше, чем на HD4850-512. Так что по тестам вышло бы следующее - тандем HD4850 CF выигрывал бы у HD4870, но стоил бы дороже на значительную сумму. Именно поэтому со стороны AMD/ATI решено было ограничиться видеокартами Radeon HD4870.

Ну а в компанию видеокарт Nvidia могла бы попасть Gigabyte GeForce GTX280 1GB. Но протестирована она была немного раньше видеокарт GeForce GTX260, не на последних имевшихся на тот момент драйверах версии 180.43beta, а на более поздних 177.83 WHQL. Это не позволило мне включить ее в тестирование. Кроме того, драйверы версии 180.43 в некоторых играх довольно сильно поднимают производительность. В паре приложений была ситуация когда работающая на более низких частотах и обладающая меньшим количеством шейдерных процессоров видеокарта GeForce GTX260-216 на равных боролась с GeForce GTX280. А разогнанная до частот GTX280 и вовсе обгоняла ее на 3-5%.

 

Синтетические тесты Futuremark

Видеокарты, используемые в тестировании, были протестированы пакетами 3Dmark 2001, 2003, 2005, 2006 в двух режимах:

3Dmark_Default - изначально установленные настройки и разрешение по умолчанию,

3Dmark_Hard_1920 - разрешение 1920х1200 при АА4х и AF16x

Кроме того, видеокарты были протестированы вышедшим недавно тестом 3Dmark Vantage в трех режимах:

Performance - разрешение 1280x1024 без АА и AF

High - разрешение 1680х1050 с AA2x и AF8x

Extreme - разрешение 1920х1200 с AA4x и AF16x

 

* Во всех трех режимах теста 3Dmark Vantage указан общий бал.

 

 

3Dmark Default

 

 

 

3Dmark Hard 1920x1200

 

 

 

3Dmark Vantage

 

 

 

Дополнительные 512МБ не дали Radeon HD4870 1GB, относительно Radeon HD4870 512MB, серьезного преимущества ни в одном из вышеприведенных тестов. А вот 24 потоковых процессора, добавленные видеокарте GeForce GTX260-216, не остались незамеченными. Здесь мы видим стабильное преимущество "новой" версии над "старой" GeForce GTX260-192. Также хочется отметить и серьезное увеличение производительности от разгона видеокарты GeForce GTX260-216.

 

Тестирование в играх

Все игры приведены при максимальной детализации, без, а также с использованием АА4х вкупе с AF16х. Игры прогонялись 3 раза, после чего высчитывался средний FPS по результатам десяти идентичных мест в игре, на которых снимались результаты, либо троекратным прогоном встроенного в приложение бенчмарка.

 

 

Игровые приложения:

Company of Heroes: Opposing Fronts V2.301 DX10

World in Conflict V1.009 DX10

Call Of Duty 4: Modern Warfare V1.5 DX9

Unreal Tournament 3 V1.3 DX9

Crysis V1.2.1 (GPU Benchmark - DX9 Medium, DX9 High, DX10 Very High)

Crysis: Warhead V1.1.1 (Frost DX10 - Mainstream, Gamer, Enthusiast)

FarCry 2 V1.0 DX10

Race Driver GRID V1.2 DX9

Call Of Juarez DX10 Benchmark 1.1.1.0

 

PT Boats: Knights of the Sea DX10 Benchmark 1.0

 

 

Company of Heroes: Opposing Fronts V2.301 DX10

 

 

В двое больший объем памяти, установленный на Radeon HD4870 1GB, относительно версии с 512 МБ, мало что дает. А вот добавка дополнительных шейдерных процессоров видеокарте GeForce GTX260-216 дает преимущество над GeForce GTX260-192 порядка 5%.

 

Кроме того, хочется констатировать, что видеокарты Nvidia, в этой игре, смотрятся намного лучше, чем продукты AMD/ATI.

 

 

World in Conflict V1.009 DX10

 

 

 

В этой игре, ни объем памяти, ни дополнительные шейдерные процессоры, не дали серьезного преимущества "новым" версиям видеокарт HD4870 и GTX260. Но в целом видеокарты Nvidia, в этой игре, оказываются предпочтительнее. За это стоит сказать спасибо новым драйверам версии 180 (в данном случае 180.43), которые на 5-10% опережают драйвера версии 170 (177.83).

 

 

Call Of Duty 4: Modern Warfare V1.5 DX9

 

 

По производительности, между решениями Nvidia и AMD/ATI, паритет. Удвоенный объем памяти дал небольшую прибавку в производительности

 

Radeon HD4870-1GB. Но все-таки эффект от добавки 24 процессоров на карте GeForce GTX260 выше. Если в первом случае больший объем памяти добавляет пару процентов в разрешении 1680 и выше, то во втором случае рост производительности заметен везде и достигает 5%.

 

 

Unreal Tournament 3 V1.3 DX9

 

 

 

Между Radeon HD4870 и GeForce GTX260 опять можно поставит паритет. Видеокарта Radeon HD4870-1GB во всех разрешениях немного опережает версию с 512МВ. "Новая" GeForce GTX260-216 имеет небольшое преимущество над "старой" GeForce GTX260-192.

 

 

Crysis V1.2.1 DX9 Medium

 

 

 

Crysis V1.2.1 DX9 High

 

 

 

Crysis V1.2.1 DX10 Very High

 

 

 

Увеличение объема памяти для Radeon HD4870 крайне положительно сказывается при настройках графики DX9 High и DX10 Very High в режимах с использованием AA4x и AF16x. В остальном никакой пользы от памяти нет. Увеличение количества потоковых процессоров для GeForce GTX260-216 крайне позитивно влияет на рост производительности во всех режимах.

 

 

Crysis: Warhead V1.1.1 DX10 Mainstream

 

 

 

Crysis: Warhead V1.1.1 DX10 Gamer

 

 

 

Crysis: Warhead V1.1.1 DX10 Enthusiast

 

 

 

Ситуация в этом продолжении наиболее технологичного "3D-шутера" последних лет напоминает кальку с предыдущего абзаца. Поэтому ограничусь следующим. Рост производительности от увеличения объема памяти на Radeon HD4870 заметен в высоких разрешениях для режимов DX10 Gamer и DX10 Enthusiast. Прирост от дополнительных потоковых процессоров на GeForce GTX260-216 - везде.

 

 

FarCry 2 V1.0 DX10

 

 

 

А вот и первая игра для которой наличие объема памяти видеокарты более чем в 512МВ вполне обосновано. В режимах с АА4х и AF16х Radeon HD4870-1Gb уверенно обходит HD4870-512. Но между тем лидером являются видеокарты Nvidia.

 

 

Race Driver GRID V1.2 DX9

 

 

Правопреемником очень популярной игры DiRT, которая, по сути, была отдушиной для большинства водил разочаровавшихся в неудачных Need For Speed: Carbon/Pro Street, является гоночный симулятор - Race Driver GRID.

По наследству от DiRT этому творению досталась и любовь к видеокартам Radeon. Графические решения производства AMD/ATI на голову обходят конкурентов из стана Nvidia.

 

Дополнительные 512МВ памяти установленный на Radeon HD4870-1Gb абсолютно не пригодились, в то время как инъекция 24 потоковых процессоров в GeForce GTX260 достаточно сильно подняло его уровень производительности относительно "старой" версии.

 

Call Of Juarez DX10 Benchmark 1.1.1.0

Low Quality

 

[IMG]http://images.people.overclockers.ru/140508.jpg[/IMG]

 

High Quality

 

[IMG]http://images.people.overclockers.ru/140510.jpg[/IMG]

 

 

 

Лидер - видеокарты AMD/ATI. Увеличенный объем памяти ничего не дает карте HD4870-1Gb. GeForce GTX260-216 опережает GeForce GTX260-192 на 5%, при этом демонстрируя отличнейший прирост производительности от разгона.

 

 

PT Boats: Knights of the Sea DX10 Benchmark 1.0

 

 

Лидер - видеокарты Nvidia. Новая версия карты GeForce GTX260-216 демонстрирует прирост производительности менее 5% относительно GeForce GTX260-192.

 

Для карты Radeon HD4870-1Gb настает второй звездный час за всё тестирование, когда отрыв от Radeon HD4870-512 весьма существенен. Как известно, игра крайне требовательна к объему памяти видеокарты и в режимах с АА4х и AF16х требуется гораздо больший ее объем, чем может предоставить HD4870-512. Именно по этому мы и видим преимущество в 80-280% достигаемое гигабайтной версией HD4870 над своей сестрицей с объемом памяти 512МВ.

 

Итого

Что можно сказать по результатам тестирования? Видеокарты Radeon HD4870-1Gb и GeForce GTX260-216 показали вполне ожидаемую производительность и ни в чем не уступили своим предшественникам. Другой вопрос - На сколько они смогли их превзойти? - требует более детального разбирательства.

Radeon HD4870-1GB смог существенно опередить предшественника Radeon HD4870-512 всего в двух приложениях - FarCry 2 и PT Boats: Knights of the Sea. Выйгрыш в этих приложениях был достигнут не на всем спектре разрешений, а в режимах с активацией функций улучшения картинки - АА4х и AF16х. В ряде приложений был заметен менее значительный рост производительности - Crysis, Crysis: Warhead и Unreal Tournament 3, который составил 5-10%. Во всех остальных играх - COH:OF, WIC, COD4:MW, Race Driver GRID, COJ, а также всех 3Dmark-ax, рост производительности от установки на видеокарту Radeon HD4870 целого гигабайта памяти, в сравнении с 512МВ версией, равен НУЛЮ!

Кроме того хочется сказать и о том что все виденные мною видеокарты Radeon HD4870-1GB референсного дизайна комплектуются только GDDR5 памятью Hynix, которая показывает не самые выдающиеся результаты разгона. Это говорит о том, что в большинстве игр, где Radeon HD4870-1GB имел 5-10% преимущество над HD4870-512, ничуть не хуже разгоняющаяся по GPU карта с меньшим объемом памяти, может компенсировать отставание её разгоном. Так что можно констатировать, что HD4870-1Gb имеет серьезное преимущество лишь в паре игр, а большая цена, по сравнению с HD4870-512, не делает его оптимальным выбором даже для 24 дюймового монитора с разрешением 1920х1200. Что уж говорить о более доступных 20/22 дюймовых моделях с разрешением 1680х1050.

Ситуация с GeForce GTX260-216, откровенно говоря, порадовала гораздо больше. Дополнительные 24 шейдерных процессора дали этой видеокарте прирост производительности относительно "старой" версии GeForce GTX260-192 во всех представленных приложениях. Правда, в большинстве из них он составил в лучшем случае 5%, но был заметен везде. Этим самым видеокарта смогла немного подправить положение в играх, где было достаточно сильное противостояние с продукцией AMD/ATI Radeon и укрепить преимущество, где оно уже было на стороне Nvidia.

Видеокарта от Gigabyte GeForce GTX260 Core 216 896MB показала весьма хороший разгонный потенциал. Обратите внимание, что разгон видеокарты практически везде приносит ей существенные дивиденды, достигая порой 20%. Это позволяло мне со всей серьезностью присудить пальму первенства в нашем сегодняшнем тестировании именно видеокарте GeForce GTX260 Core 216, если бы не одно "но".

А "но" заключается в том, что в январе 2009 года публике будут представлены видеокарты на обновленном GPU G200b, произведенном по 55 нм технологии. Данные видеокарты, а всего их будет три штуки:

GeForce GTX260 896MB (назовем ее Mark-II) - аналог GTX260-216 с такими же частотами 575(1242)/1998,

GeForce GTX285 1GB - аналог GTX280 с увеличенными частотами до 648(1476)/2480 и

DualGPU GeForce GTX295 2x896MB - c частотами GTX260 и процессором с активными блоками как у GTX280/285,

будут постепенно заменять нынешние поколение видеокарт на 65 нм GPU - GTX260, GTX260-216 и GTX280. А новая ценовая политика компании позволит быть "новым" видеокартам гораздо привлекательнее "стариков". Например, ожидаемая рекомендованная цена на версию GTX260-216, основанную на 55 нм GPU, составляет 199$, что гораздо ниже 260-280$ за нынешнюю 65 нм GTX260-216! За 299$ будет можно стать обладателем GTX285, в то время как цены GTX280 не опустились ниже 340-360$. А будущий двухголовый флагман Nvidia GTX295 получит рекомендованную цену в момент анонса 499$, в то время как его предшественник GTX280 первоначально получил 549$ ценник.

 

В связи с этим нынешний победитель GeForce GTX260-216 всего-то через пару недель уже не будет казаться выгодным приобретением, ведь на рынке появятся видеокарты, которые будут стоить дешевле, иметь меньшее энергопотребление и лучший (скорее всего) разгонный потенциал. Так что если и можно рекомендовать GTX260-216, впрочем, как и Radeon HD4870-1Gb, к покупке, то только "сейчас", да и то если у вас имеется серьезная потребность в производительной видеокарте. Всем остальным я бы порекомендовал набраться терпения и ждать скорого появления "новых" продуктов, если вы хотите купить карту Nvidia, или очередного снижения цен от AMD, если вы положили глаз на видеокарты этого производителя. В свою очередь мы обязуемся держать руку на пульсе и информировать вас о последних изменениях на рынке игрового высокопроизводительного железа.

 

 

За сим позволю откланяться. Ваш GadkY-Utk, ака Nasty-Duck.

 

BIOS Club3D Radeon HD4870 1Gb

BIOS Club3D Radeon HD4870 512MB

BIOS Gigabyte GeForce GTX260 896MB

BIOS Gigabyte GeForce GTX260 Core 216 896MB

www.modlabs.net

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

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

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

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

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

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

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

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

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

studfiles.net

Семейства видеокарт AMD(ATI) RADEON Справочная информация

Рекомендуемая цена

Архитектура R600/RV630/RV610

Архитектура R6xx сочетает в себе некоторые решения из предыдущих: R5xx и Xenos (видеочипа консоли Microsoft Xbox 360), дополняя их различными нововведениями: более мощным диспетчером потоков, суперскалярной архитектурой шейдерных процессоров с выделенными блоками ветвления, обновленной 512-битной шиной ring bus. Так выглядит архитектура топового чипа R600:

На схеме видно, что основной вычислительной мощью являются 64 суперскалярных потоковых процессора, каждый из которых содержит по 5 ALU и выделенному блоку выполнения ветвлений. AMD предпочитает указывать их количество в целом — как 320 потоковых процессора. Все мы знаем, как любят производители указывать большие цифры, и пиковую производительность они насчитали 475 GigaFLOPS для одиночного R600. Вряд ли эта цифра достижима в реальных алгоритмах.

Диспетчер потоков (Ultra-Threaded Dispatch Processor) управляет выполнением потоков на исполнительных блоках, именно он решает, какой работой будет заниматься тот или иной блок в зависимости от потребностей и приоритетов. Новый диспетчер потоков, реализованный в R6xx, способен обслуживать тысячи потоков одновременно. Это его подробная схема:

Из других изменений, по сравнению с предыдущими поколениями чипов, можно привести командный процессор (Command Processor), который служит для обработки команд видеодрайвера. Он выполняет микрокод, разгружая центральный процессор, увеличивая производительность в условиях большого количества вызовов функций отрисовки с малым количеством обрабатываемой геометрии (известная проблема small batch в Direct3D). Заявлено, что эффект от командного процессора есть в Direct3D 9 и Direct3D 10 приложениях. Теоретически, снижение потерь времени на разнообразные проверки может вызвать выигрыш до 30%, но реальные цифры ускорения, конечно, будут значительно меньшими.

Похоже, что новая архитектура хорошо масштабируется в обе стороны, что мы и видим на примере low-end и mid-end решений. Схемы чипов RV630 и RV610 выглядят так:

Хорошо видно, что RV630 отличается от R600 только количеством разнообразных блоков: ALU, ROP, TMU, во всем остальном он повторяет старшего брата. У RV610 отличий больше, они не только количественные (блоков ALU и TMU стало еще меньше), но и качественные: нет иерархического Z-буфера, нет второго уровня текстурного кэша, а единственный уровень совмещает кэширование вершинных и пиксельных данных. Основные количественные изменения: число шейдерных процессоров снижено до 24 (120 процессоров) у RV630 и до 8 (40 процессоров) у RV610, число блоков текстурирования до 8 и 4, соответственно, а блоков ROP у младших чипов по четыре у каждого. Естественно, всё это сделано в угоду меньшему числу транзисторов и скажется на производительности. Этот вопрос мы рассмотрим в будущем материале, посвященном новым решениям AMD среднего и нижнего уровней.

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

Шейдерные процессоры (ALU)

Уже в прошлом поколении своих чипов ATI сделала решение, отличающееся от того, что было общепринято ранее и использовалось компанией NVIDIA, в R580 реализовали 48 исполнительных шейдерных блоков и 16 блоков текстурирования, тогда как в G70 было 24 блоков TMU и пиксельных процессоров и 16 блоков ROP. Подобная разница в подходе стала очевидной еще со времени выхода чипов RV530 и RV560, в которых было подобное же соотношение TMU и шейдерных процессоров. NVIDIA традиционно уделяет чуть больше внимания текстурированию и скорости заполнения, а AMD(ATI) — операциям над пикселями и вершинами.

Итак, если в предыдущих решениях ATI шейдерные процессоры содержали векторные и скалярные исполнительные блоки, которые могли выполнять по две инструкции за такт над 3+1 или 4+1 компонентами, то теперь каждый процессор из 64 может выполнять по пять инструкций над пятью компонентами. Каждый потоковый процессор состоит из пяти независимых скалярных ALU, которые могут выполнить пять MAD (Multiply-Add) инструкций за такт, а один из пяти ALU способен выполнить более сложную инструкцию: SIN, COS, LOG, EXP и другие. Отдельным блоком в процессоре является блок ветвлений и условных переходов, освобождающий основные ALU от этих задач и нивелирующий потери от переходов на ветвящемся коде шейдера.

По функциональности ALU у R6xx стандартны для DirectX 10 решений, точность всех расчетов составляет FP32, есть поддержка вычислений в новых целочисленных форматах, при реализации соблюден стандарт IEEE 754, важный для научных, статистических, экономических и других вычислений.

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

Но слабая сторона такой архитектуры в том, что приложение и драйвер должны выдавать ей постоянно как можно больше независимых инструкций, чтобы блоки не простаивали и КПД был высоким. У скалярной архитектуры такого ограничения нет, она более гибкая, её КПД всегда будет выше, так как 3D-приложения используют разные комбинации команд, многие из которых зависят от выполнения предыдущих, и набирать по 4-5 независимых не так просто. Для повышения эффективности суперскалярной архитектуры нужен качественный оптимизирующий рекомпилятор шейдеров и оптимизации со стороны приложений. Ярким примером в данном случае является суперскалярная архитектура NV3x, которой рекомпилятор и оптимизации очень сильно помогали. Конечно, у R6xx нет таких явных узких мест, как у NV3x, но это не избавляет архитектуру от полезности оптимизаций.

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

Текстурные блоки (TMU)

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

Имеется четыре текстурных блока, каждый из которых состоит из: 8 блоков адресации (всего в чипе 32), 20 блоков выборки (всего в чипе 80), 4 блоков фильтрации (всего в чипе 16). Выборка вершин и текстур обычно выполняется отдельно, часть блоков адресации и выборки у TMU предназначена для вершин (на схеме они не соединены с блоками фильтрации) или для нефильтруемых текстур.

4 блока адресации и 4 блока выборки в каждом из TMU относятся к вершинным выборкам, которые не нуждаются в блоках фильтрации, а оставшиеся 4 блока адресации, 16 блоков выборки и 4 блока фильтрации — к текстурным, для которых и нужна фильтрация. То есть, 64 из 80 блоков выборки выбирают 16 пикселей для 16 блоков фильтрации, а оставшиеся 16 выбирают данные вершин (или текстур без фильтрации). Пользуясь тем, что TMU блоки у R6xx полностью отделены от ALU, за один такт они могут выбирать и вершины и пиксели.

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

Как видно на схеме, для текстурных выборок используется двухуровневая реализация кэш-памяти. Текстурные кэши второго уровня, указанные на диаграмме, имеют следующие размеры: 256 Кбайт у R600, 128 Кбайт у RV630, а на RV610 используется один уровень кэша, общий для вершинных и текстурных данных. Заявлено, что вершинный кэш R600 увеличен в восемь раз, по сравнению с применяемым в R580. Это решение обосновано тем, что производительность универсальных процессоров позволяет обрабатывать данные в несколько раз быстрее, по сравнению с выделенными блоками геометрических шейдеров в предыдущих архитектурах.

Текстурные блоки в чипах R6xx усовершенствованы, одно из главных достоинств в том, что они могут выбирать и билинейно фильтровать FP16 текстуры на той же скорости, что и 32-битные, а FP32 — на половинной, то есть, как и на G80. Поддерживаются новые 32-битные HDR форматы текстур, которые появились в DirectX 10, декларируется поддержка трилинейной и анизотропной фильтраций для всех поддерживаемых текстурных форматов. Максимальное разрешение текстур стало 8192x8192 (как и у G80), представители компании говорят об улучшенном качестве текстурной фильтрации, которое мы проверим в одной из следующих частей данной статьи. Кстати, в материалах AMD не говорится о бесплатной трилинейной фильтрации, так что, скорее всего, она снижает пиковую производительность TMU, как во всех чипах, кроме G80.

Текстурные блоки в RV630 и RV610 имеют такую же функциональность, что и блоки верхнего решения линейки (за исключением реализации кэша в RV610), но меньшее их количество. Как раз в количестве TMU видится и одна из потенциальных слабых сторон нового семейства чипов. Высокая вычислительная производительность - это очень хорошо, конечно, но ведь она сама по себе нужна разве что для неграфических расчетов. А для 3D-графики до сих пор очень важна скорость выборки из текстур и скорость их фильтрации. Современные игры используют не только сложные пиксельные и вершинные расчеты, они еще и накладывают по несколько текстур на пиксель: основные текстуры, specular текстуры, карты нормалей, карты высот, кубические карты отражений и преломлений и другие. И вполне возможно, что 16-ти текстурных блоков такому мощному чипу, как R600, будет недостаточно, чтобы раскрыть даже свой расчетный потенциал. Мы проверим это далее, в синтетических и игровых тестах.

Блоки записи в буфер кадра (ROP)

Блоки ROP в R6xx претерпели не так много изменений по сравнению с предыдущими чипами. В R600 их четыре, каждый из которых записывает по четыре пикселя, всего получается 16 обрабатываемых и записываемых пикселей в буфер кадра. У RV630 и RV610 — по одному блоку ROP, и всего по четыре записываемых пикселя. Блоками ROP поддерживается двойная производительность при записи данных без цвета, то есть 32 пикселя для R600 и 8 — для RV610/RV630, соответственно. Возможно использование до восьми MRT (буферов рендеринга) с поддержкой мультисэмплинга, это требование DirectX 10 и других цифр здесь ждать не приходится. Конечно, есть полноценная поддержка рендеринга в FP16 и FP32 форматы буфера кадров, включая антиалиасинг.

Из интересных нововведений в реализации блоков ROP отметим, что компанией AMD декларируются улучшения в сжатии Z и stencil буферов, до 16:1 против 8:1 у предыдущих решений, и до 128:1 при MSAA с количеством сэмплов 8x. Данные Z и stencil буферов сжимаются отдельно друг от друга, что должно увеличить эффективность компрессии. Также традиционно увеличен порог разрешения, при котором работает сжатие, если раньше значение было ограничено пятью мегапикселями, то теперь граница явно не указывается. Сделано и множество оптимизаций по работе с Z буфером, большая часть которых направлена на ускорение стенсильных теней в распространенных приложениях (DOOM 3, F.E.A.R., Unreal Engine 3 и другие), производительность R600 в которых мы проверим в нашей статье.

Новые режимы антиалиасинга

Чипами R6xx поддерживается мультисэмплинг с максимальным количеством выборок, равным восьми. Чтобы не отставать от конкурентов, которые сделали хитрый ход с CSAA, были введены новые режимы с количеством сэмплов до 24 штук, названные Custom Filter Anti-Aliasing (CFAA). Это специальные режимы постобработки, направленные на дальнейшее улучшение качества антиалиасинга, с программируемым расположением субпикселей, выборкой вне границ пикселей, и разными весами для выборок.

В зависимости от выбранного режима, методом CFAA выбирается от четырех до восьми соседних сэмплов вне пикселя. Несмотря на то, что вес этих выборок меньше, чем у внутренних, метод всё равно будет вызывать размытие всей картинки. И чем больше выборок вне пикселя, тем больше размоется изображение. Одним из основных преимуществ такого подхода является улучшение качества антиалиасинга при помощи обновлений драйвера. Кроме того, возможность управления мультисэмплингом появится у разработчиков приложений в следующих версиях DirectX. Естественно, что все ранее введенные возможности: адаптивный антиалиасинг, temporal antialiasing, гамма-коррекция для MSAA и другие также поддерживаются новыми чипами.

Самый главный недостаток подхода CFAA в том, что дополнительные выборки за границами пикселя могут снижать итоговое качество картинки. Вспомните специальный режим антиалиасинга у NVIDIA под названием Quincunx, он тоже использовал выборку вне пикселя и снижал четкость картинки, за что его не любила основная масса пользователей. У AMD подход, конечно, более гибкий, выборкам вне пикселя будет даваться меньший вес, чем внутренним, но размазывания картинки не избежать всё равно. Будет ли это помехой для притязательного глаза — мы рассмотрим в разделе статьи, посвященном качеству рендеринга.

С нашей точки зрения, гораздо более интересно еще одно нововведение в антиалиасинге R6xx, которое пока не доработано в текущих драйверах — антиалиасинг с применением адаптивного фильтра edge detect. При этом методе производится проход фильтра edge detection по отрендеренному изображению, для определенных фильтром пикселей с высокими частотами (границы полигонов и резкие переходы на некоторых текстурах, которые обычно и нуждаются в сглаживании) используется более качественный метод антиалиасинга с большим количеством сэмплов, а для остальных — с меньшим. Этот подход похож на тот, что применялся в методе антиалиасинга FAA видеокартой Matrox Parhelia и интересен тем, что теоретически должен показывать отличные результаты, как по качеству сглаживания, так и по производительности, ведь он работает больше именно там, где это нужно, снижает текстурный шум и вместе с тем не должен ухудшать детализацию. Но это теория, а практику мы рассмотрим в разделе качества.

512-битная шина памяти ring bus

Одним из несомненных преимуществ чипа R600 является 512-битная шина памяти ring bus, это первый видеочип с поддержкой 512-битного доступа к видеопамяти. Теперь шина ring bus включает восемь 64-битных каналов, соединенных внутренней 1024-битной шиной (два направления по 512-бит), центральный хаб отсутствует. Решение хорошо масштабируется и обеспечивает очень высокую эффективную пропускную способность. Для первых видеокарт на базе R600 она составляет более 100 Гбайт/с при условии обычной и не самой быстрой GDDR3 памяти. В будущих решениях это значение может вырасти ещё, ведь контроллер поддерживает быструю GDDR4 память.

Представители AMD уверяют, что в реализации ring bus были проведены изменения, направленные на дальнейшее увеличение её эффективности. Конечно, таких цифр можно добиться и с 384-битной шиной, что сделала NVIDIA в своей GeForce 8800 Ultra, но для этого нужна гораздо более дорогая и редкая память. С другой стороны, у 512-битности есть и недостаток — сложность PCB увеличивается, как и стоимость остальных производственных работ по сборке плат. Зато большая пропускная способность обязательно скажется в высоких разрешениях, при больших уровнях антиалиасинга и HDR-рендеринге. Именно в таких режимах можно ожидать большого преимущества от RADEON HD 2900 XT по сравнению с конкурирующими решениями NVIDIA.

Программируемый блок тесселяции

Наследственность R6xx в виде консольного чипа Xenos сказалась в том, что все решения серии RADEON HD 2000 содержат программируемый блок тесселяции, новый для ПК. Базовые теоретические данные по тесселяции вы можете прочитать в статьях:

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

Разбиение поверхностей (тесселяция) не имеет единственного алгоритма, оно может выполняться по нескольким правилам. Есть несколько типов поверхностей высокого уровня (higher order surfaces): Bezier, N-Patches, B-Spline, NURBs, subdivision surfaces, которые могут разбиваться на полигоны видеочипом. И, так как тесселятор в R6xx программируемый, его можно использовать для разных алгоритмов, что дает большую гибкость и контроль 3D-разработчикам. AMD дает такую схему работы конвейера:

Заявлено, что для использования тесселятора в R6xx не нужно новых типов шейдеров в API, что необходимый вершинный шейдер пишется самими разработчиками. Немного непонятно, каким образом в обычном вершинном шейдере выполнять тесселяцию, но главное, чтобы это знали игровые разработчики.

Преимущества, которые можно получить при использовании возможностей программируемого тесселятора, достаточно велики. Тесселяция поможет увеличить геометрическую детализацию сцены без большого увеличения нагрузки на шины и центральный процессор системы, тесселяция особенно эффективна в сочетании с displacement mapping. Но это всё в теории, практика обычно не такая радужная. Есть вопросы о том, каким образом можно использовать возможности тесселятора в разнообразных API (Direct3D 9, Direct3D 10, OpenGL), но самый важный вопрос - будут ли разработчиками использоваться возможности чипов одного из двух вендоров? Понятно, что портированным играм с Xbox 360, которые на родной платформе используют тесселяцию, это может быть полезно, но как быть с остальными видеокартами?

Улучшенная поддержка CrossFire

В описании особенностей новых решений компании AMD необходимо упомянуть и улучшенную поддержку CrossFire, все новые чипы не требуют использования специальных мастер-карт. Наконец-то, начиная с этой линейки, в чипах для всех ценовых диапазонов встроена «родная» поддержка CrossFire. Как и в случае с картами на базе чипов RV570, можно будет объединять обычные платы при помощи мостиков, похожих на те, что давно используются для NVIDIA SLI.

Новыми чипами поддерживаются все те же старые знакомые режимы рендеринга: Alternate Frame Rendering, SuperTile, Scissor, SuperAA. Максимально возможное разрешение в режимах CrossFire — 2560x2048 при частоте обновления 60 Гц. Самое любопытное в описании обновленного CrossFire в том, что там уже заявлена поддержка более чем двух чипов, одновременно работающих над рендерингом одной картинки. С удовольствием протестируем таковую, когда у нас появится подобная возможность.

ATI Avivo HD

Что касается мультимедийных возможностей новых видеочипов, то и здесь не обошлось без изменений в лучшую сторону. Все чипы серии R6xx содержат специализированные блоки: UVD (Universal Video Decoder — универсальный видеодекодер) и AVP (Advanced Video Processor — видеопроцессор). Технология ATI Avivo никуда не исчезла, как и PureVideo у основного конкурента, она развивается и расширяется, получив модную приставку — ATI Avivo HD.

Прошлое поколение видеочипов способно ускорять лишь часть этапов декодирования видео, оставляя самые затратные части для центрального процессора. В новом поколении чипов внедрен выделенный блок для декодирования видео (UVD), который выполняет всю основную работу: аппаратное статистическое декодирование VLC/CAVLC/CABAC, iDCT, компенсацию движения и деблокинг (удаление артефактов блочности), разгружая и CPU, и 3D-конвейер видеочипа. Последнее особенно важно для Windows Vista, которая использует 3D-возможности видеокарт для отрисовки интерфейса Aero.

Всё семейство новых чипов поддерживает обновленную технологию, они обеспечивают полностью аппаратное ускорение декодирования требовательных к ресурсам видео форматов H.264 и VC-1 с максимально высоким битрейтом, которые являются одними из основных для дисков форматов Blu-ray и HD-DVD. Поддержка аппаратного декодирования видео расширена при помощи указанных новых блоков, которые отличаются от предыдущих поколений Avivo аппаратным выполнением функций статистического декодирования, особенно важных для современных видеоформатов. Новая технология ATI Avivo HD позволяет декодировать все указанные форматы с разрешением до 1920x1080 и битрейтами до 30-40 Мбит/с, и всё необходимое для этого поддерживается всеми видеочипами линейки.

При сравнении возможностей своих чипов с конкурирующими, AMD приводит такую таблицу:

Утверждается, что в отличие от аналогичных блоков обработки видео в чипах NVIDIA G84 и G86, решениями AMD поддерживается аппаратное статистическое декодирование для формата VC-1. Компания приводит примерно такие же цифры загрузки процессора, что и NVIDIA ранее, по их данным, при декодировании HD DVD диска полностью программным методом, современный двухъядерный процессор будет загружен работой примерно на 80%, с аппаратным ускорением на чипах предыдущего поколения — на 60-70%, а полностью аппаратное решение с UVD обеспечивает загрузку CPU лишь чуть больше 10%, что позволяет воспроизводить все существующие диски даже на средних по мощности ПК. В соответствующих материалах мы постараемся проверить это, а пока остается поверить на слово.

Неграфические расчеты

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

Поэтому в последнее время всеми производителями GPU уделяется много внимания неграфическим расчетам на видеокартах. На базе чипов прошлого поколения ATI(AMD) выпустила специализированные карты на основе RADEON X1900 (Stream Processor) с чипом R580 и гигабайтом GDDR3 памяти. Новые чипы, конечно, обладают всем необходимым для создания таких продуктов, ещё большая мощь по расчетам с плавающей запятой которых может использоваться в большом количестве применений: физические расчеты в играх, обработка медиаданных (например, перекодирование из одного формата в другой, захват и кодирование видео высокого разрешения) и изображений, распознавание речи и изображений, медицинские задачи (виртуальная эндоскопия, интерактивная визуализация), метеорология, динамика жидкостей и газов и многое другое.

Вероятно, через некоторое время после анонса графических карт серии RADEON HD 2000, последует запуск новых продуктов категории «Stream Processor» на базе R600 с поддержкой вычислений с плавающей запятой и целочисленных вычислений, появившихся в новой архитектуре, которые будут использовать значительно увеличенную мощь 320 потоковых процессоров. Неполный список нововведений, появившихся в чипах серии R6xx, важных для неграфических расчетов: целочисленные операции, поддержка текстур размером до 8192x8192 пикселей, неограниченная длина шейдера, неограниченная память для регистров, специальный командный процессор для снижения потерь времени на проверку правильности вызовов и состояний.

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

Поддержка HDMI и других внешних интерфейсов

Одним из ожидаемых решений в серии HD 2000 стал встроенный аудиочип, нужный для поддержки передачи звука по HDMI. С применением решений на чипах R600, RV610 и RV630 необходимость во внешнем аудио и соответствующих соединительных кабелях отпадает, передавать аудиосигнал с интегрированной на системную плату или внешней звуковой карты не нужно. Да и сертификация Vista Premium требует, чтобы весь аудиотракт был интегрированным и HDCP-защищенным. Решение AMD поддерживает следующие 16-битные форматы PCM данных: 32 кГц, 44.1 кГц и 48 кГц, а также AC3 — сжатые потоки, такие как Dolby Digital и DTS.

Передача видео- и аудиосигнала по одному HDMI-разъему во многих случаях может быть удобным решением, нет нужды во множестве проводов, прекрасно заменяемых единственным. Интересно, что у карт серии HD 2000 нет установленных разъемов HDMI, только DVI. И для вывода HDMI-сигнала в комплекте с ними поставляется специальный DVI-to-HDMI переходник, который используется и для передачи аудиоданных (ведь формат цифровой, его полосы пропускания хватит и на видео и на звук одновременно), чего не могут предложить обычные переходники. В свою очередь, новые переходники совместимы и с обычными DVI-разъемами без вывода звука.

Эта новая возможность реально полезна, но не во всех случаях. Она, скорее, будет востребована для карт среднего и низшего уровней, которые можно устанавливать в маленькие и тихие баребоны, используемые в качестве медиацентров. Ведь нет смысла в покупке high-end видеокарты только лишь для просмотра видео на большом HDTV-экране. Вполне вероятно, что именно из-за встроенного аудио, видеокарты RADEON HD 2400 и HD 2600 будут иметь определенный успех среди сборщиков подобных систем — мультимедийных центров, так как эти решения предлагают отличные возможности по декодированию видео, а также передачу защищенных видео- и аудиоданных по одному HDMI-разъему.

В отличие от NVIDIA GeForce 8800, всеми новыми решениями AMD поддерживаются Dual-Link DVI выходы с одновременной поддержкой HDCP, аналогично GeForce 8600 GTS, которая стала первой видеокартой с подобными возможностями. На старших картах устанавливается по два DVI-выхода, к которым прилагаются соответствующие специальные DVI-to-HDMI переходники, а для младших используется консервативное решение — один D-Sub и один DVI-разъем.

Подробности: RV670, серия RADEON HD 3800

Спецификации RV670
  • Кодовое имя чипа RV670
  • Технология 55 нм
  • 666 миллионов транзисторов
  • Унифицированная архитектура с массивом общих процессоров для потоковой обработки вершин и пикселей, а также других видов данных
  • Аппаратная поддержка DirectX 10.1, в том числе и новой шейдерной модели — Shader Model 4.1, генерации геометрии и записи промежуточных данных из шейдеров (stream output)
  • 256-битная шина памяти: четыре контроллера шириной 64 бита, соединенных шиной ring bus
  • Частота ядра 670-775 МГц
  • 320 скалярных ALU с плавающей точкой (целочисленные и плавающие форматы, поддержка FP32 точности в рамках стандарта IEEE 754)
  • 4 укрупненных текстурных блока, с поддержкой FP16 и FP32 компонент в текстурах
  • 32 блоков текстурной адресации (см. подробности выше)
  • 80 блоков текстурной выборки (см. подробности выше)
  • 16 блоков билинейной фильтрации с возможностью фильтрации FP16 текстур на полной скорости и поддержкой трилинейной и анизотропной фильтрации для всех текстурных форматов
  • Возможность динамических ветвлений в пиксельных и вершинных шейдерах
  • 16 блоков ROP с поддержкой режимов антиалиасинга с возможностью программируемой выборки более чем 16 сэмплов на пиксель, в том числе при FP16 или FP32 формате буфера кадра. Пиковая производительность до 16 отсчетов за такт, в режиме без цвета (Z only) — 32 отсчета за такт
  • Запись результатов до 8 буферов кадра одновременно (MRT)
  • Интегрированная поддержка двух RAMDAC, двух портов Dual Link DVI, HDMI, HDTV
Спецификации карты RADEON HD 3870
  • Частота ядра 775 МГц
  • Количество универсальных процессоров 320
  • Количество текстурных блоков — 16, блоков блендинга — 16
  • Эффективная частота памяти 2250 МГц (2*1125 МГц)
  • Тип памяти GDDR4
  • Объем памяти 512 мегабайт
  • Пропускная способность памяти 72 гигабайта в c.
  • Теоретическая максимальная скорость закраски 12.4 гигапикселя в с.
  • Теоретическая скорость выборки текстур 12.4 гигатекселя в с.
  • Два CrossFireX разъема
  • Шина PCI Express 2.0 x16
  • Два DVI-I Dual Link разъема, поддерживается вывод в разрешениях до 2560х1600
  • TV-Out, HDTV-Out, поддержка HDCP, HDMI-адаптер
  • Энергопотребление до 105 Вт
  • Рекомендуемая цена $219
Спецификации карты RADEON HD 3850
  • Частота ядра 670 МГц
  • Количество универсальных процессоров 320
  • Количество текстурных блоков — 16, блоков блендинга — 16
  • Эффективная частота памяти 1660 МГц (2*830 МГц)
  • Тип памяти GDDR3
  • Объем памяти 256 мегабайт
  • Пропускная способность памяти 53 гигабайта в с.
  • Теоретическая максимальная скорость закраски 10.7 гигапикселя в с.
  • Теоретическая скорость выборки текстур 10.7 гигатекселя в с.
  • Два CrossFireX разъема
  • Шина PCI Express 2.0 x16
  • Два DVI-I Dual Link разъема, поддерживается вывод в разрешениях до 2560х1600
  • TV-Out, HDTV-Out, поддержка HDCP, HDMI-адаптер
  • Энергопотребление до 95 Вт
  • Рекомендуемая цена $179

Архитектура RV670

Подробное описание архитектурных особенностей семейства чипов R6xx компании AMD см. выше. В RV670 в наличии всё то же, что и в предыдущих решениях (320 универсальных блоков по обработке данных, 16 блоков текстурных выборок, 16 блоков растровых операций, программируемый тесселятор и т.п.), лишь с небольшими изменениями, предназначенными для поддержки возможностей Direct3D версии 10.1, о которых подробно написано далее.

Схема нового чипа RV670 абсолютно идентична схеме R600. По сути, RV670 не отличается от R600 ничем, количество всех блоков (ALU, ROP, TMU) у него такое же. Единственное ухудшающее характеристики отличие нового mid-end чипа в том, что у него нет поддержки 512-битной шины, она «всего лишь» 256-битная, но всё остальное, написанное в том материале, относится к нему полностью.

Конечно, AMD заявляет, что контроллер памяти в RV670 был оптимизирован для более эффективного использования полосы пропускания, что 256-битная шина снаружи является 512-битной внутри и т.п. На одном из слайдов презентации даже написана любопытная фраза о том, что HD 3870 обладает равной производительностью с RADEON HD 2900 при одинаковых тактовых частотах.

Поддержка Direct3D 10.1

Обновленная версия DirectX будет доступна только в первом полугодии 2008 года, вместе с обновлением для операционной системы MS Windows Vista. Service Pack 1 для неё, в состав которого и должен войти DirectX 10.1, появится не скоро, не говоря уже о том, когда обновленный API принесёт что-то новое в реальные игровые проекты. Основным изменением в этой версии стало улучшение некоторых возможностей: обновленная шейдерная модель Shader Model 4.1, независимые режимы блендинга для MRT, массивы кубических карт (cube map arrays), чтение и запись значений в буферы с MSAA, одновременная текстурная выборка нескольких значений Gather4 (ранее известная как FETCh5 у чипов ATI), обязательное требование блендинга целочисленных 16-битных форматов и фильтрации 32-битных форматов с плавающей запятой, а также поддержка MSAA как минимум с четырьмя выборками и другое.

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

  • Массивы кубических карт — чтение и запись нескольких кубических карт за один проход рендеринга. Упрощает эффективные техники глобального освещения в реальном времени для сложных сцен. Глобальное освещение включает в себя расчет отраженного (непрямого) освещения, мягких теней, преломлений, размытых отражений и переноса или перетекания цвета (color bleeding).
  • Независимые режимы блендинга для MRT — при выводе данных пиксельными шейдерами в несколько буферов сразу (MRT), каждый из них может использовать свой режим блендинга. Это улучшает эффективность и быстродействие алгоритмов отложенного затенения («deferred shading»), часто применяющихся в современных игровых проектах.
  • Увеличенное количество регистров для вершинных шейдеров — количество входных и выходных регистров вершинных шейдеров в DX 10.1 увеличено вдвое, с 16 до 32. Это позволит увеличить производительность сложных шейдеров и упростит их оптимизацию.
  • Поддержка текстурной выборки Gather4 — текстурная выборка 2x2 нефильтрованного пиксельного блока вместо одного билинейно отфильтрованного значения. Эта возможность была ранее известна как FETCh5, она используется в алгоритмах качественной фильтрации карт теней, также может быть полезна в процедурном текстурировании и неграфических расчетах на GPU.
  • Новая инструкция LOD — новая шейдерная инструкция, возвращающая уровень детализации для отфильтрованной текстурной выборки. Может использоваться в алгоритмах специфической текстурной фильтрации в шейдерах и в алгоритмах parallax occlusion mapping.
  • Улучшения антиалиасинга: маски покрытия пикселя (Pixel Coverage Masks) и чтение/запись мультисэмплового буфера — чтение и запись буфера позволяет читать и записывать данные цвета и глубины отдельных сэмплов в/из буфера из шейдеров, а pixel coverage masks позволяют использовать программируемый антиалиасинг из пиксельного шейдера. Это даёт возможность создания собственных edge detect фильтров для нахождения пикселей, требующих применения сглаживания, то есть быстрого и качественного адаптивного алгоритма антиалиасинга. Также новые возможности полезны для улучшения качества антиалиасинга буферов при HDR-рендеринге и отложенном затенении, и некоторых других эффектах.
  • Программируемые положения выборок при мультисэмплинге — возможность дает разработчикам приложений определять своё размещение субпиксельных выборок, что полезно при temporal и мультичиповом антиалиасинге, например.
  • Стандартные сетки расположения субпикселей при антиалиасинге — сетки с заранее заданным стандартным положением субпикселей для всех режимов антиалиасинга. Это гарантирует, что антиалиасинг будет выглядеть идентично на всех совместимых с DirectX 10.1 решениях.
  • Улучшенные фиксированные спецификации API — включают в себя обязательную поддержку фильтрации для 32-битных форматов с плавающей запятой и блендинг для 16-битных целочисленных, а также минимально необходимую поддержку MSAA с четырьмя сэмплами (4x MSAA). Для DirectX 10.1 видеочипов поддержка этих возможностей обязательна, а не опциональна, как в DX10. Хотя преимуществ это не даёт, но разработчикам не нужно будет задумываться, поддерживает ли та или иная карта такую фильтрацию и блендинг такого формата, или нет.
  • Увеличенная точность расчетов для операций с плавающей запятой — увеличенная точность расчетов для математических расчетов (сложение, вычитание, деление, умножение) и операций блендинга.

Как мы уже сказали выше, некоторые из новых возможностей DirectX 10.1 упрощают реализацию техник и алгоритмов, повышающих качество 3D-графики. Например, AMD в своих материалах приводит пример реализации глобального освещения (Global Illumination, GI) и ambient occlusion, подробнее о них написано в базовой статье по RV670. Преимущество DirectX 10.1 в расчете GI состоит в том, что разработчики могут использовать массивы кубических карт совместно с геометрическими шейдерами в эффективном алгоритме GI реального времени.

Также в DirectX 10.1 ввели возможность использования специализированных фильтров антиалиасинга из пиксельных шейдеров. Такие методы улучшают качество в случаях, когда у обычного алгоритма MSAA есть определенные проблемы, например, при использовании HDR-рендеринга или отложенного затенения. Подобные алгоритмы используют появившийся в DX 10.1 доступ ко всем экранным буферам из шейдеров, в то время как раньше можно было читать и писать данные только в мультисэмпловые буферы цвета. В Direct3D 10.1 стало возможно читать и писать информацию из буфера глубины для каждого сэмпла по отдельности, что позволяет 3D-разработчикам использовать продвинутые техники антиалиасинга по своим алгоритмам, и даже комбинации методов привычного антиалиасинга и «шейдерного».

Естественно, многие перечисленные нововведения в DirectX 10.1 полезны и удобны, но в оценке их значения не нужно забывать то, что сам обновленный API появится через полгода, распространение видеокарт с его поддержкой займет ещё какое-то время (кстати, у NVIDIA поддержка DirectX 10.1 запланирована для следующего поколения архитектуры GPU, представители которой появятся не раньше Service Pack 1 для Vista). Кроме того, первые видеокарты явно не дадут возможности использования всех новинок API с приемлемой производительностью для реальных применений.

PCI Express 2.0

Полноценным нововведением в RV670 стала поддержка шины PCI Express 2.0. Вторая версия PCI Express увеличивает стандартную пропускную способность в два раза, с 2.5 гигабит/с до 5 гигабит/с, в результате, по стандартному для видеокарт разъему x16 можно передавать данные на скорости до 8 ГБ/с в каждом направлении (в маркетинговых материалах любят суммировать цифры, указывая 16 ГБ/с), в отличие от 4 ГБ/с для версии 1.x. При этом PCI Express 2.0 совместим с PCI Express 1.1, старые видеокарты будут работать в новых системных платах, а новые видеокарты с поддержкой второй версии останутся работоспособными в платах без его поддержки. При условии достаточности внешнего питания и без увеличения пропускной способности интерфейса, естественно.

Реальное влияние большей пропускной способности шины PCI Express на производительность оценить непросто, нужны тесты в равных условиях, сделать которые довольно проблематично. Но большая пропускная способность точно не помешает, особенно для SLI/CrossFire систем, обменивающихся данными, в том числе и по PCI Express шине. И многие современные игры требуют большого объема быстрой памяти, и при недостатке локальной, будет использоваться системная, и тогда от PCI Express 2.0 обязательно будет толк.

Компания AMD приводит такие данные для RADEON HD 3850 с 256 мегабайтами памяти: разница в производительности между системами с PCI Express 1.x и 2.0 в играх Company of Heroes, Call of Juarez, Lost Planet и World In Conflict меняется от 5% до 25%, в среднем, составляя около 10%. Естественно, в высоких разрешениях, когда буфер кадра и сопутствующие буферы занимают большую часть локальной видеопамяти, а некоторые ресурсы хранятся в системной.

Для обеспечения обратной совместимости с существующими PCI Express 1.0 и 1.1 решениями, спецификация 2.0 поддерживает как 2.5 Гбит/с, так и 5 Гбит/с скорости передачи. Обратная совместимость PCI Express 2.0 позволяет использовать прошлые решения с 2.5 Гбит/с в 5.0 Гбит/с слотах, которые будут работать на меньшей скорости, а устройство, разработанное по спецификациям версии 2.0, может поддерживать и 2.5 Гбит/с и 5 Гбит/с скорости. Как обычно, абсолютно гладко бывает разве что на бумаге, и кто-нибудь сталкивается на практике с проблемами совместимости с некоторыми сочетаниями системных плат и карт расширения.

ATI PowerPlay

Ещё одним реальным улучшением, заметным пользователям, стала технология ATI PowerPlay — технология динамического управления питанием, пришедшая с видеочипов для ноутбуков. Суть технологии в том, что специальная управляющая схема в чипе отслеживает загрузку видеочипа работой (процент загрузки GPU, к слову, показывается на панели Overdrive в CATALYST Control Center) и определяет необходимый рабочий режим, управляя рабочей частотой чипа, памяти, напряжением питания и другими параметрами, оптимизируя энергопотребление и тепловыделение.

Иными словами, в 2D-режиме при невысокой загрузке, GPU напряжение и частоты будут максимально снижены, как и частота вращения вентилятора, охлаждающего радиатор видеокарты (в некоторых случаях теоретически возможно и полное выключение вентилятора). В режиме небольшой 3D-нагрузки все параметры установятся на средние значения, а при максимальной работе GPU и частоты с напряжением будут выставлены в наибольшее значение. В отличие от предыдущих решений AMD и NVIDIA, эти режимы управляются не драйвером, а аппаратно, самим чипом. То есть более эффективно, с меньшими задержками и без известных проблем, связанных с определением 2D/3D режимов, когда 3D-приложение, запущенное в оконном режиме, не считается драйверами 3D-приложением.

В своей презентации AMD сравнивает потребление HD 2900 XT и HD 3870, если в 2D и интенсивном 3D-режимах разница между потребляемой и выделяемой мощностью решений составляет привычные два раза, то в так называемом «легком игровом» режиме (честно говоря, не понятно, что за игры имеются в виду, видимо, игры многолетней давности и современные casual игры в 3D) разница достигает уже четырех крат, что весьма и весьма много.

Графический ускоритель RADEON HD 3870 X2

  • Кодовое имя чипа R680 (2 x RV670)
  • Технология 55 нм
  • 2 x 666 миллионов транзисторов
  • Унифицированная архитектура с массивом общих процессоров для потоковой обработки вершин и пикселей, а также других видов данных
  • Аппаратная поддержка DirectX 10.1, в том числе и новой шейдерной модели — Shader Model 4.1, генерации геометрии и записи промежуточных данных из шейдеров (stream output)
  • Двойная 256-битная шина памяти: по четыре контроллера шириной 64 бита, соединенных шиной ring bus
  • Частота ядра 825 МГц
  • 640 (2 x 320) скалярных ALU с плавающей точкой (целочисленные и плавающие форматы, поддержка FP32 точности в рамках стандарта IEEE 754)
  • 2 x 4 укрупненных текстурных блока, с поддержкой FP16 и FP32 компонент в текстурах
  • 2 x 32 блоков текстурной адресации (см. подробности в базовой статье)
  • 2 x 80 блоков текстурной выборки (см. подробности в базовой статье)
  • 2 x 16 блоков билинейной фильтрации с возможностью фильтрации FP16 текстур на полной скорости и поддержкой трилинейной и анизотропной фильтрации для всех текстурных форматов
  • Возможность динамических ветвлений в пиксельных и вершинных шейдерах
  • 2 x 16 блоков ROP с поддержкой режимов антиалиасинга с возможностью программируемой выборки более чем 16 сэмплов на пиксель, в том числе при FP16 или FP32 формате буфера кадра. Пиковая производительность до 16 отсчетов за такт, в режиме без цвета (Z only) — 32 отсчета за такт
  • Запись результатов до 8 буферов кадра одновременно (MRT)
  • Интегрированная поддержка двух RAMDAC, двух портов Dual Link DVI, HDMI, HDTV
Спецификации видеокарты RADEON HD 3870 X2
  • Частота ядра 825 МГц
  • Количество универсальных процессоров 640 (2 х 320)
  • Количество текстурных блоков — 2 x 16, блоков блендинга — 2 x 16
  • Эффективная частота памяти 1800 МГц (2*900 МГц)
  • Тип памяти GDDR3
  • Объем памяти 2 x 512 мегабайт
  • Пропускная способность памяти 2 x 57.6 гигабайта в с.
  • Теоретическая максимальная скорость закраски 2 x 13.2 гигапикселя в с.
  • Теоретическая скорость выборки текстур 2 x 13.2 гигатекселя в с.
  • Разъем CrossFireX
  • Шина PCI Express 1.1
  • Два DVI-I Dual Link разъема, поддерживается вывод в разрешениях до 2560х1600
  • TV-Out, HDTV-Out, поддержка HDCP, HDMI-адаптер
  • Рекомендуемая цена $449
Спецификации видеокарты RADEON HD 3850 X2
  • Частота ядра 670 МГц
  • Количество универсальных процессоров 640 (2 х 320)
  • Количество текстурных блоков — 2 x 16, блоков блендинга — 2 x 16
  • Эффективная частота памяти 1660 МГц (2*830 МГц)
  • Тип памяти GDDR3
  • Объем памяти 2 x 512 мегабайт
  • Пропускная способность памяти 2 x 53.1 гигабайта в с.
  • Теоретическая максимальная скорость закраски 2 x 10.7 гигапикселя в с.
  • Теоретическая скорость выборки текстур 2 x 10.7 гигатекселя в с.
  • Разъем CrossFireX
  • Шина PCI Express 1.1
  • Два DVI-I Dual Link разъема, поддерживается вывод в разрешениях до 2560х1600
  • TV-Out, HDTV-Out, поддержка HDCP, HDMI-адаптер

Архитектура

К ранее написанному ничего нового мы добавить не можем, чип RV670 остался неизменным, его архитектура была подробно описана нами в соответствующем материале. Вкратце повторим, что RV670 мало отличается от R600, количество всех блоков (ALU, ROP, TMU) у него такое же. Единственное значительное отличие более нового чипа состоит в том, что у него вместо 512-битной шины реализована 256-битная.

Естественно, RADEON HD 3870 X2, как и его одночиповый собрат, полностью поддерживает ещё не вышедший DirectX 10.1 API, новые и улучшенные возможности которого были описаны нами в предыдущем материале, посвященном выходу RADEON HD 3850 и 3870. Также AMD очень гордится тем, что их двухчиповое решение объединяет 640 потоковых процессоров, пиковая производительность которых на определенных операциях достигает 1 терафлопа, впервые для одиночной карты. Не  понятно, зачем этот терафлоп обычным пользователям, применяющим видеокарту по прямому назначению, особенно с учетом того, что CrossFire система обладает явными недостатками по сравнению с одночиповыми топовыми картами...

Любопытно, что с поддержкой второй версии шины PCI Express рассматриваемой двухчиповой картой дела обстоят непросто. Несмотря на то, что одним из важнейших нововведений в RV670 стала поддержка шины PCI Express 2.0, рассматриваемое сегодня решение не может похвастать улучшениями в плане увеличения пропускной способности. Для обеспечения работы двух чипов и их связи между собой в текущей версии RADEON HD 3870 X2 используется специальный PCI Express мост PLX PEX 8547, который поддерживает 48 линий PCI-E версии 1.1. Этот чип размером 37.5 x 37.5 мм потребляет примерно 5 Вт дополнительно к энергопотреблению двух комплектов GPU и памяти. К слову, в будущем AMD планирует интегрировать подобную логику PCI Express моста в следующие модели GPU, для упрощения разводки и снижения себестоимости.

Несмотря на отсутствие поддержки PCI Express 2.0, так как эта версия совместима с PCI Express 1.1, можно почти честно сказать, что новая видеокарта обладает его поддержкой, просто работать в режиме увеличенной пропускной способности она не будет. Впрочем, влияние этой большей пропускной способности шины на практике обычно малозаметно. С другой стороны, она могла бы помочь как раз CrossFire системам, видеочипы в которых обмениваются большим потоком данных по связывающей их шине. По возможности мы постараемся определить разницу в скорости между 2.0 и 1.1 версиями в наших исследованиях, но вряд ли она будет больше нескольких процентов...

Помимо того, что HD 3870 X2 сама по себе работает как двухчиповая система, новые возможности технологии ATI CrossFireX позволяют объединять две такие платы в одной системной плате. Ведь именно решения на основе RV670 в своё время были объявлены первыми видеокартами с поддержкой одновременной работы четырех карт или двух карт на основе двух чипов.

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

Радует то, что в HD 3870 X2 по-прежнему есть поддержка технологии ATI PowerPlay. Напомним, что это — технология динамического управления питанием, суть которой в специальной управляющей схеме в чипе, которая отслеживает загрузку видеочипа работой и определяет необходимый рабочий режим, изменяя рабочую частоту чипа и памяти, а также напряжением питания и другими параметрами, оптимизируя энергопотребление и тепловыделение видеокарты. Без подобной технологии в 2D-режиме двухчиповая карта потребляла бы много больше энергии.

Справочная информация о семействе видеокарт Radeon XСправочная информация о семействе видеокарт Radeon X1000Справочная информация о семействе видеокарт Radeon HD 2000Справочная информация о семействе видеокарт Radeon HD 4000Справочная информация о семействе видеокарт Radeon HD 5000Справочная информация о семействе видеокарт Radeon HD 6000Справочная информация о семействе видеокарт Radeon HD 7000Справочная информация о семействе видеокарт Radeon 200Справочная информация о семействе видеокарт Radeon 300

www.ixbt.com

Тема 8 Видеопамять, видеокарты, мониторы

1)Основные характеристики видеокарт

Современные графические процессоры содержат множество функциональных блоков, от количества и характеристик которых зависит и итоговая скорость рендеринга, влияющая на комфортность игры. По сравнительному количеству этих блоков в разных видеочипах можно примерно оценить, насколько быстр тот или иной 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 Мбайт (при прочих равных условиях). Ситуации, когда больший объем памяти приводит к видимому увеличению производительности, существуют, это очень требовательные игры в высоких разрешениях и при максимальных настройках. Но такие случаи весьма редки, поэтому, объем памяти учитывать нужно, но не забывая о том, что выше определенного объема производительность просто не растет, есть более важные параметры, такие как ширина шины памяти и ее рабочая частота. Подробнее о выборе объема видеопамяти читайте во второй части статьи.Ширина шины памятиШирина шины памяти является важнейшей характеристикой, влияющей на пропускную способность памяти (ПСП). Большая ширина позволяет передавать большее количество информации из видеопамяти в GPU и обратно в единицу времени, что положительно влияет на производительность в большинстве случаев. Теоретически, по 128-битной шине можно передать в два раза больше данных за такт, чем по 64-битной. На практике разница в скорости рендеринга хоть и не достигает двух раз, но весьма близка к этому во многих случаях с упором в пропускную способность видеопамяти.Современные видеокарты используют разную ширину шины: от 64 до 512 бит, в зависимости от ценового диапазона и времени выпуска конкретной модели GPU. Для low-end видеокарт чаще всего используется 64- и (значительно реже) 128-бит, для среднего уровня 128-бит и иногда 256-бит, ну а high-end видеокарты используют шины от 256 до 512 бит шириной.

Частота видеопамятиЕще одним параметром, влияющим на пропускную способность памяти, является её тактовая частота. А как мы поняли выше, повышение ПСП прямо влияет на производительность видеокарты в 3D приложениях. Частота шины памяти на современных видеокартах бывает от 500 МГц до 2000 МГц, то есть может отличаться в четыре раза. И так как ПСП зависит и от частоты памяти и от ширины ее шины, то память с 256-битной шиной, работающая на частоте 1000 МГц, будет иметь большую пропускную способность, по сравнению с 1400 МГц памятью с 128-битной шиной.Рассмотрим относительную производительность видеокарт с разной пропускной способностью на примере видеокарт 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 обеспечивает максимальную частоту и пропускную способность.2. Классификация разъемов на видеокартахПервое препятствие к повышению быстродействия видеосистемы — это интерфейс передачи данных, к которому подключён видеоадаптер. Как бы ни был быстр процессор видеоадаптера, большая часть его возможностей останется незадействованной, если не будут обеспечены соответствующие каналы обмена информацией между ним, центральным процессором, оперативной памятью компьютера и дополнительными видеоустройствами. Основным каналом передачи данных является, конечно, интерфейсная шина материнской платы, через которую обеспечивается обмен данными с центральным процессором и оперативной памятью. Самой первой шиной использовавшейся в IBM PC была XT-Bus, она имела разрядность 8 бит данных и 20 бит адреса и работала на частоте 4,77 МГц. Далее появилась шина ISA (Industry Standart Architecture — архитектура промышленного стандарта), соответственно она имела разрядность 16/24 бит и работала на частоте 8 МГц. Пиковая пропускная способность составляла чуть больше 5,5 МиБ/с. Этого более чем хватало для отображения текстовой информации и игр с шестнадцатицветной графикой. Дальнейшим рывком явилось появление шины MCA (Micro Channel Architecture) в новой серии компьютеров PS/2 фирмы IBM. Она уже имела разрядность 32/32 бит и пиковую пропускную способность 40 МиБ/с. Но то обстоятельство, что архитектура MCI являлась закрытой (собственностью IBM), побудило остальных производителей искать иные пути увеличения пропускной способности основного канала доступа к видеоадаптеру. И вот, с появлением процессоров серии 486, было предложено использовать для подключения периферийных устройств локальную шину самого процессора, в результате родилась VLB (VESA Local Bus — локальная шина стандарта VESA). Работая на внешней тактовой частоте процессора, которая составляла от 25 МГц до 50 МГц и имея разрядность 32 бит, шина VLB обеспечивала пиковую пропускную способность около 130 МиБ/с. Этого уже было более чем достаточно для всех существовавших приложений, помимо этого возможность использования её не только для видеоадаптеров, наличие трёх слотов подключения и обеспечение обратной совместимости с ISA (VLB представляет собой просто ещё один 116 контактный разъём за слотом ISA) гарантировали ей достаточно долгую жизнь и поддержку многими производителями чипсетов для материнских плат и периферийных устройств, даже несмотря на то, что при частотах 40 МГц и 50 МГц обеспечить работу даже двух устройств подключенных к ней представлялось проблематичным из-за чрезмерно высокой нагрузки на каскады центрального процессора (ведь большинство управляющих цепей шло с VLB на процессор напрямую, безо всякой буферизации). И всё-таки, с учётом того, что не только видеоадаптер стал требовать высокую скорость обмена информацией, и явной невозможности подключения к VLB всех устройств (и необходимостью наличия межплатформенного решения, не ограничивающегося только PC), была разработана шина PCI (Periferal Component Interconnect — объединение внешних компонентов) появившаяся, в первую очередь, на материнских платах для процессоров Pentium. С точки зрения производительности на платформе PC всё осталось по-прежнему — при тактовой частоте шины 33 МГц и разрядности 32/32 бит она обеспечивала пиковую пропускную способность 133 МиБ/с — столько же, сколько и VLB. Однако она была удобнее и, в конце концов, вытеснила шину VLB и на материнских платах для процессоров класса 486.С появлением процессоров Intel Pentium II и серьёзной заявкой PC на принадлежность к рынку высокопроизводительных рабочих станций, а также с появлением 3D-игр со сложной графикой стало ясно, что пропускной способности PCI в том виде, в каком она существовала на платформе PC (обычно частота 33 МГц и разрядность 32 бит), скоро не хватит на удовлетворение запросов системы. Поэтому фирма Intel решила сделать отдельную шину для графической подсистемы, несколько модернизировала шину PCI, обеспечила новой получившейся шине отдельный доступ к памяти с поддержкой некоторых специфических запросов видеоадаптеров и назвала этоAGP (Accelerated Graphics Port — ускоренный графический порт). Разрядность шины AGP составляет 32 бит, рабочая частота 66 МГц. Первая версия разъёма поддерживала режимы передачи данных 1x и 2x, вторая — 4x, третья — 8x. В этих режимах за один такт передаются соответственно одно, два, четыре или восемь 32-разрядных слов. Версии AGP не всегда были совместимы между собой в связи с использованием различных напряжений питания в разных версиях. Для предотвращения повреждения оборудования использовался ключ в разъёме. Пиковая пропускная способность в режиме 1x — 266 МиБ/с. Выпуск видеоадаптеров на базе шинах PCI и AGP на настоящий момент ничтожно мал, так как шина AGP перестала удовлетворять современным требованиям для мощности новых ПК, и, кроме того, не может обеспечить необходимую мощность питания. Для решения этих проблем создано расширение шины PCIE — PCI Express версий 1.0, 1.1 и 2.0. Это последовательный, в отличие от AGP, интерфейс, его пропускная способность может достигать нескольких десятков ГБ/с. На данный момент произошёл практически полный отказ от шины AGP в пользу PCI Express. Однако стоит отметить, что некоторые производители до сих предлагают достаточно современные по своей конструкции видеоплаты с интерфейсами PCI и AGP — во многих случаях это достаточно простой путь резко повысить производительность морально устаревшего ПК в некоторых графических задачах.

3. Назначение библиотеки DirectX и OpenGlМногие годы в программистском сообществе идет дискуссия о преимуществах использования того или иного интерфейса для создания графики в компьютерных играх (и не только). Главные соперники в этой области – библиотеки OpenGL и DirectX.

Индустрия до сих пор так и не сделала однозначный выбор в пользу того или иного API. Для тех, кто не знает: API – это Application Programming Interface, то есть интерфейс прикладного программирования. Фактически – набор функций для выполнения различных задач. В нашем случае задача – это программирование трехмерной графики.КАК ЭТО БЫЛОOpenGLСтандарт OpenGL (Open Graphics Library – открытая графическая библиотека) был создан и утвержден в 1992 году ведущими фирмами в области разработки программного обеспечения как эффективный аппаратно-независимый интерфейс, пригодный для реализации на различных платформах. Основой стандарта стала библиотека IRIS GL, изначально разработанная фирмой Silicon Graphics Inc (SGI). OpenGL была утверждена как открытый стандарт (не open source, как некоторые думают) и поэтому библиотека доступна на многих платформах.Библиотека не может быть разработана раз и навсегда – она должна развиваться, отражая последние тенденции в области компьютерной графики, особенно эволюцию специализированных устройств (видеокарт) с аппаратной поддержкой графических функций.Развитие стандарта OpenGL осуществляется специальной бюрократической структурой, известной как Architectural Review Board (ARB) – Комитет по пересмотру архитектуры. Комитет состоит из представителей основных компаний, заинтересованных в развитии и использовании библиотеки. В их числе 3D Labs, SGI, Apple, NVIDIA, ATI, Intel, id Software и, конечно, Microsoft.Кстати, Microsoft поставляет реализацию OpenGL вместе со своими операционными системами. Она соответствует одной из ранних версий OpenGL и не использует возможности аппаратного ускорения. Этот недостаток восполняют драйверы видеокарт, которые предоставляют быстрые реализации OpenGL.C начала 90-х годов прошлого века OpenGL используется в различных областях индустрии и науки. Архитектура библиотеки получилась настолько удачной, что уже на протяжении более десяти лет она остается стабильной и предсказуемой. OpenGL де-факто является стандартом в области программирования графики. Но в этом скрыт и ее недостаток. ARB работает довольно медленно – любое изменение стандарта требует множества согласований, документов и так далее.В силу этого OpenGL развивается очень вяло. Правда, до последнего времени с этим не было проблем, поскольку изначально библиотека предназначалась для быстрых рабочих станций профессионального уровня, которые обновляют не так уж часто. Однако сейчас даже дешевые видеокарты за $100 превзошли уровень профессиональных монстров пятилетней давности стоимостью в тысячи долларов.И при этом обновление их возможностей происходит в среднем раз в год. Фактически OpenGL не поспевает за индустрией, поэтому игровые разработчики вынуждены использовать так называемый механизм расширений (extensions), чтобы получить доступ к новейшим функциям видеокарт.На данный момент OpenGL прошла путь от версии 1.0 до версии 1.4 (и это за десять лет!). Версия 2.0, обещающая революционные изменения, находится в процессе стандартизации.DirectXК моменту выхода Windows 95 большинство игр по-прежнему делалось под MS-DOS. Windows в те времена не предоставляла возможностей для программирования игр. Многочисленные уровни абстракции (введенные в целях совместимости и универсальности) делали доступ к звуковому и видеооборудованию весьма медленным и неприменимым для игровых приложений. Поэтому было решено разработать библиотеку, предоставляющую возможность прямого доступа к аппаратуре. Это позволило бы играм работать на приемлемой скорости (и увеличило бы продажи Windows 95).Вместо создания собственного API Microsoft использовала разработку небольшой компании RenderMorphic. Говорят, что изначально API был выполнен авторами в рамках студенческого задания и в конечном итоге провалился на экзамене. Тем не менее Microsoft интегрировала эту библиотеку в свой Game SDK. Корпорация подавала это как идеальное решение для программирования игр.Однако то, что позже стало называться DirectX 1.0., не приобрело широкой популярности. Библиотека оказалась медленной, с большим количеством ошибок, с неудобной архитектурой и, кроме того, чрезмерно сложной.Разумеется, Microsoft не собиралась сдаваться и продолжила развитие библиотеки с учетом пожеланий разработчиков игр. Первой более или менее жизнеспособной версией была DirectX 3.0. Позже последовали версии 5, 6 и 7 (четвертой не было). Седьмая версия была воспринята разработчиками с интересом: она хорошо работала, ее интерфейсы были в меру разумны.Восьмая версия не заставила себя ждать и принесла интересные нововведения – вершинные и пиксельные шейдеры (специальные, обычно короткие программы, предназначенные для выполнения на графическом процессоре; используются для расчета освещения, создания тех или иных спецэффектов и так далее). Недавно вышедший DirectX 9 также развивает эти перспективные направления.Длительное время DirectX рассматривался как неудачная альтернатива OpenGL. Однако последние улучшения в API сделали эту библиотеку весьма мощной и стабильной. Поскольку она разрабатывается авторами ОС, можно быть уверенным, что скорость ее работы с графикой оптимальна. Многие считают, что именно DirectX, а не OpenGL, становится стандартом для программирования графики. Microsoft постоянно работает в тесном контакте с разработчиками «железа», обеспечивая поддержку новых возможностей аппаратуры. Более того, DirectX иногда предлагает различные возможности раньше, чем на рынке появляются видеокарты с их аппаратной реализацией.Мы рассматриваем только графическую часть DirectX, но кроме графики DirectX также предлагает интерфейсы для работы со звуком, источникам ввода, мультимедиа и так далее. У OpenGL таких функций нет – это чисто графическая библиотека.АРХИТЕКТУРАКлючевая особенность OpenGL – простота. Ядро OpenGL контролирует процесс обработки примитивов (то есть треугольников). Для передачи данных используется процедурная модель, фактически – вызовы функций. В каждый момент времени состояние OpenGL определяется через набор переменных, задающих параметры обработки (например, накладывать текстуру или не накладывать).Каждый новый переданный треугольник проходит обработку в соответствии с текущим состоянием. Такой механизм весьма эффективен, а код обычно короток и прост. Хотя ядро OpenGL процедурное, в использовании OpenGL совместно с объектно-ориентированными технологиями сложностей обычно не возникает: все зависит от выбора программиста.Структура DirectX очень сильно отличается от OpenGL. DirectX основан на модели COM (Component Object Model). Тем, кто знает, что это такое, сама аббревиатура уже скажет многое. Для остальных заметим лишь, что в отличие от простого вызова функций эта модель предполагает выполнение некоторых дополнительных действий, связанных с компонентной архитектурой DirectX.Такая архитектура имеет как достоинства, так и недостатки. В частности, код, в котором используются вызовы DirectX, обычно не является идеалом легко читаемого и понимаемого. Поэтому даже рисование простого треугольника требует огромного объема кода. Разработчики Microsoft, конечно, понимают это, поэтому для упрощения программирования ими создана отдельная библиотека DirectX Common Files, которая скрывает часто используемый код.Хотя принципиально архитектура DirectX сильно отличается от OpenGL, в их развитии все более заметны тенденции к сближению. Такая ситуация возникает прежде всего потому, что обе библиотеки предназначены для эффективной работы с аппаратурой, и чем ближе их структура будет к «железу», тем меньше времени будет уходить на преобразование команд пользователя в команды аппаратуры.ПРОИЗВОДИТЕЛЬНОСТЬВопрос производительности настолько же важен, насколько запутан и неясен. Дебаты на тему «Что быстрее – OpenGL или DirectX?» не утихают. При этом, как ни парадоксально, cкорость обоих библиотек одинакова.Иначе и быть не может, потому что сейчас большинство функций реализованы напрямую через аппаратные ускорители. Естественно, производительность может различаться в зависимости от степени оптимизации программного кода и используемой для тестирования аппаратной платформы.Оптимизация аппаратных драйверов тоже может внести свой вклад в преимущество той или иной библиотеки. Такие вещи достаточно тяжело предвидеть, поэтому хорошие игровые «движки» часто имеют две версии: под OpenGL и под DirectX. Это не очень-то хорошо как для производителя, так и для пользователя (возрастает стоимость разработки игр, появляются ошибки и т.п.), но таковы реалии современного рынка видеоигр.Пример: считается, что драйверы от фирмы ATI для серии видеокарт ATI Radeon хорошо оптимизированы под DirectX и значительно слабее поддерживают OpenGL. Однако специально написанные тесты не выявили значительной разницы в скорости работы программ. Кроме того, на недавней Конференции разработчиков игр (КРИ, www.kriconf.ru) автору довелось побеседовать на эту тему с представителем ATI. Точка зрения последнего такова: если драйверы OpenGL у ATI и хуже, чем у NVIDIA, то это лишь вопрос времени – ATI обязательно будет в поддерживать OpenGL в полном объеме.СРАВНЕНИЕВ чем же, если не в производительности, различие между библиотеками? Прежде всего – в удобстве интерфейса, функциях, гибкости, перспективах развития и области применения. Начнем с функций. Неоднократно приходилось слышать заявления типа: «DirectX 9 поддерживает пиксельные шейдеры, а OpenGL не поддерживает, поэтому все игры должны быть написаны под DirectX!» Такое мнение неверно только отчасти. Действительно, если посмотреть на стандарт OpenGL последней версии (1.4), в нем ни слова о шейдерах.Изображение, получаемое в реальном времени на современном аппаратном ускорителе. Качество и скорость рисования не зависят от применяемой библиотеки: DirectX и OpenGL обладают схожими возможностями.Много лет назад OpenGL разрабатывалась как библиотека, которая оставалась бы актуальной в далеком будущем. К сожалению, это будущее пришло и благополучно ушло в прошлое. При этом ARB остается весьма неповоротливым, и надеяться на оперативное включение новых опций не позволяет. Для решения этой проблемы в OpenGL существует механизм расширений, с помощью которого можно использовать различные функции, не входящие в базовую спецификацию, а поддерживаемые только реализацией OpenGL для конкретной видеокарты.Этот процесс выглядит следующим образом: как только производитель выпускает видеокарту с поддержкой определенной полезной функции, он включает ее в свою реализацию OpenGL (которая обычно входит в поставку драйвера). Для программиста эта возможность становится доступной, если он специальным образом запросит данное расширение. Конечно, такой путь не универсален: на другой видеокарте сделать это не получится из-за различий в интерфейсе. Поэтому существуют расширения, одобренные ARB, – при их использовании можно надеяться, что они будут работать на видеокартах различных производителей. Такие расширения являются кандидатами на включение в последующие версии OpenGL.Данный механизм выглядит (и на самом деле является) неудобным. В DirectX все проще: функциональность либо поддерживается данной версией библиотеки, либо не поддерживается. Если нет – придется надеяться и ждать следующей версии. Однако случаи, когда аппаратные функции не используются из-за того, что не были включены в версию DirectX, довольно редки – как уже говорилось, Microsoft тесно работает с производителями игрового (и не только) «железа». С другой стороны, ждать версий DirectX приходится около года, а в это время новые функции уже доступны через расширения OpenGL.Таким образом, по поддержке аппаратных функций OpenGL и DirectX , в общем, эквиваленты. OpenGL новые функции доступны через механизм расширений, а в DirectX они появляются только в новых версиях.DirectX очень удобен для любителей объектно-ориентированного программирования и COM в частности.COM в DirectX используется для внесения изменений в библиотеку (в новых версиях) без изменения существующего кода. В OpenGL такого нет, но это вряд ли можно назвать серьезным недостатком.Объем кода, необходимого для написания простой программы на DirectX, весьма велик (варьируется от 200 до 800 строк). Microsoft активно пытается уменьшить этот показатель, но он, тем не менее, достаточно велик. В OpenGL все существенно проще – для решения такой же задачи необходимо менее 50 строк кода.OpenGL идеален для визуализации результатов научных исследований.Серьезным достоинством OpenGL является прежде всего то, что это «открытый стандарт». Любая компания, имеющая аппаратную платформу, может купить лицензию у SGI и затем сделать собственную реализацию OpenGL. Изменения в OpenGL предлагаются, обсуждаются и утверждаются представителями различных компаний. Что касается DirectX, то здесь ситуация прямо противоположная. Только Microsoft может вносить какие-либо изменения в библиотеку. Иначе говоря, именно Microsoft в конечном итоге определяет все пути развития библиотеки, и если путь был выбран неверно, это может быть исправлено только в новой версии.Итак, достоинства библиотек становятся наиболее очевидны при их использовании в разных (но в то же время пересекающихся) прикладных областях. DirectX идеален для профессиональной разработки игр и мультимедийных приложений на платформе Windows. OpenGL используется на высокопроизводительных рабочих станциях, в научной сфере, в образовании, а также в любых проектах, где требуется переносимость. Кроме того, OpenGL применяется и для написания игровых «движков», правда, в последнее время на этом поприще его теснит DirectX.ЧТО ДАЛЬШЕ?Появление графических процессоров (GPU – Graphics Processing Unit) нового поколения, позволяющих создавать доселе немыслимые спецэффекты в реальном времени, всколыхнуло индустрию, и вскоре стало ясно, что за ними будущее. Очевидно, что графические библиотеки должны соответствовать этой тенденции.Начиная с восьмой версии, DirectX имеет встроенную поддержку программируемых шейдеров. В девятой версии эта поддержка была значительно улучшена и расширена. И в дальнейшем развитие DirectX наверняка будет связано с постепенным улучшением гибкости и удобства использования программируемого «железа». Каких-либо радикальных перемен пока не ожидается. Например, вряд ли стоит надеяться, что Microsoft сделает реализации DirectX на других платформах.В OpenGL поддержка программируемой графической аппаратуры была добавлена на уровне расширений. Однако архитектура библиотеки изначально не была рассчитана на использование подобных конструкций, поэтому эти расширения выглядят инородно.Игровые приложения чаще используют DirectX. Эта библиотека предоставляет больше возможностей для тонкой оптимизации и управления аппаратурой, а также, в отличие от OpenGL, содержит компоненты для работы с видео, звуком и устройствами ввода.В то же время близится к завершению разработка нового стандарта библиотеки – OpenGL 2.0. Развитие графической аппаратуры вышло за пред

Похожие статьи:

poznayka.org


Смотрите также

 

..:::Новинки:::..

Windows Commander 5.11 Свежая версия.

Новая версия
IrfanView 3.75 (рус)

Обновление текстового редактора TextEd, уже 1.75a

System mechanic 3.7f
Новая версия

Обновление плагинов для WC, смотрим :-)

Весь Winamp
Посетите новый сайт.

WinRaR 3.00
Релиз уже здесь

PowerDesk 4.0 free
Просто - напросто сильный upgrade проводника.

..:::Счетчики:::..