Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Графические процессоры общего - Павлив.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
411.14 Кб
Скачать

1.3 Совершенствование графических конвейеров

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

Следует отметить, что в графическом процессоре используется не один, а несколько конвейеров, работающих параллельно; чем больше в графическом процессоре таких конвейеров, тем она производительнее. Действительно, если, к примеру, в графическом процессоре реализовано 16 конвейеров, то первый из них обрабатывает 1-й, затем 17-й, потом 33-й пикселы и т.д.; второй — 2-й, 18-й и 34-й соответственно. В графическом процессоре используются разные конвейеры, которые выполняют отличающиеся друг от друга функции. В этом смысле более правильно говорить о вершинных или пиксельных конвейерах, но не о конвейерах вообще [1]. Проблема выбора количества конвейеров разных видов долгое время оставалась довольно острой. Предположим, что в воображаемом графическом процессоре с классической архитектурой присутствуют четыре вершинных и восемь пиксельных процессоров (рисунок 3). Если, к примеру, в игре используются преимущественно вершинные шейдеры (трехмерные модели с насыщенной геометрией), то может возникнуть ситуация, что будут заняты все четыре вершинных процессора и только один пиксельный процессор, а оставшиеся семь пиксельных процессоров будут бездействовать. В этом случае производительность всего графического процессора определяется производительностью и количеством вершинных процессоров. В случае если в игре используются преимущественно пиксельные шейдеры (трехмерные модели с насыщенными пиксельными эффектами), то может возникнуть обратная ситуация, когда будут заняты только один вершинный процессор и все семь пиксельных процессоров. В этом случае производительность всего графического процессора определяется производительностью и количеством пиксельных процессоров.

Вершинные процессоры

Пиксельные процессоры

Вершинные процессоры

Пиксельные процессоры

Рисунок 3 - Проблема сбалансированной нагрузки при использовании

Данной проблемы можно избежать, если вместо четырех вершинных и восьми пиксельных процессоров (в сумме 12) использовать 12 унифицированных процессоров, которые могли бы выполнять как вершинные, так и пиксельные шейдеры (рисунок 4). Такой подход был впервые применен в архитектуре графического процессора nVidia GeForce 8800. [1]

Унифицированные процессоры. Случай 1

V

E

R

T

E

X

Pixel

Унифицированные процессоры. Случай 2

P

I

X

E

L

Vertex

Рисунок 4 - Решение проблемы сбалансированной нагрузки