Графический ускоритель что такое: Графический ускоритель — это… Что такое Графический ускоритель? – Графический ускоритель Википедия

Графический ускоритель — это… Что такое Графический ускоритель?

  • графический ускоритель — Плата видеодисплея с собственным графическим сопроцессором и быстродействующим ОЗУ, предназначенная для выполнения графических операций (таких как заливка областей) с высокой скоростью. Часто используется для ускорения вывода графического… …   Справочник технического переводчика

  • Графический акселератор — Видеокарта семейства GeForce 4, с кулером Видеокарта (известна также как графическая плата, графическая карта, видеоадаптер) (англ. videocard) устройство, преобразующее изображение, находящееся в памяти компьютера, в видеосигнал для монитора.… …   Википедия

  • Графический адаптер — Видеокарта семейства GeForce 4, с кулером Видеокарта (известна также как графическая плата, графическая карта, видеоадаптер) (англ. videocard) устройство, преобразующее изображение, находящееся в памяти компьютера, в видеосигнал для монитора.… …   Википедия

  • Графический конвейер — Графический конвейер  аппаратно программный комплекс визуализации трёхмерной графики. Содержание 1 Элементы трехмерной сцены 1.1 Аппаратные средства 1.2 Программные интерфейсы …   Википедия

  • Ускоритель — заряженных частиц установка для получения частиц высоких энергий в физике и технике Ускоритель (в ракетной технике) движитель ракеты Ускоритель (графический) устройство для ускорения работы видеоадаптера в компьютере Ускоритель (клавиатурный)… …   Википедия

  • Ускоритель физики — Физический процессор (англ. Physics Processing Unit  англ. PPU, «физический ускоритель», «ускоритель физики»)  устройство, чип, выделенный специализированный процессор, предназначенный для обработки физических вычислений преимущественно в… …   Википедия

  • Физический ускоритель — Физический процессор (англ. Physics Processing Unit  англ. PPU, «физический ускоритель», «ускоритель физики»)  устройство, чип, выделенный специализированный процессор, предназначенный для обработки физических вычислений преимущественно в… …   Википедия

  • Видеокарта — семейства GeForce 4, с радиатором и вентилятором Видеокарта (также видеоадаптер, графический адаптер, графическая плата, графическая карта, графический ускоритель)   …   Википедия

  • Apple Ax — Компания Apple разработала серию систем на кристалле (SoC, СнК) Ax для собственных мобильных устройств iPod, iPad, iPhone и телевизионной приставки Apple TV. В этих системах используются микропроцессорные ядра с архитектурой ARM. Содержание 1… …   Википедия

  • Графическая плата — Видеокарта семейства GeForce 4, с кулером Видеокарта (известна также как графическая плата, графическая карта, видеоадаптер) (англ. videocard) устройство, преобразующее изображение, находящееся в памяти компьютера, в видеосигнал для монитора.… …   Википедия

  • Графические процессоры NVIDIA для виртуализации

    ЗАДАЧИ, ВЫПОЛНЯЕМЫЕ В ВИРТУАЛЬНОЙ СРЕДЕ

    Сложные задачи рендеринга, моделирования и 3D-проектирования с NVIDIA Quadro® Virtual Data Center Workstation (vDWS). ИИ, глубокое обучение и анализ данных с NVIDIA vComputeServer. Оптимальное решение для обновления систем на базе P100.

    Сложные задачи рендеринга, 3D-проектирования и работы с графикой и видео с Quadro vDWS.

    Задачи рендеринга, 3D-проектирования и работы с графикой и видео высокой и средней сложности с Quadro vDWS.

    Задачи рендеринга, 3D-проектирования и инженерные задачи различной сложности с Quadro vDWS.

    Задачи 3D-проектирования и инженерные задачи от начального до сложного уровня с Quadro vDWS. Ускорение GPU, высокая плотность и энергоэффективность для офисных работников с ПО NVIDIA GRID. Задачи ИИ, искусственного интеллекта и анализа данных с vComputeServer.

    Для работы в офисных приложениях на Windows 10, обеспечения высокой плотности пользователей и доступной совокупной стоимости владения (TCO). Поддержка нескольких мониторов с NVIDIA GRID vPC и vApps.

    Для пользователей, которым необходим GPU в форм-факторе блейд-сервера. Оптимальное решение для обновления систем на базе M6.

    ПОДДЕРЖКА ПО vGPU

    Quadro vDWS, NVIDIA GRID® Virtual PC (vPC),

    GRID Virtual Applications (vApps), vComputeServer

    Quadro vDWS,

    vComputeServer

    Quadro vDWS,

    vComputeServer

    Quadro vDWS,

    GRID vPC,

    GRID vApps,

    vComputeServer

    Quadro vDWS,

    GRID vPC,

    GRID vApps,

    vComputeServer

    Quadro vDWS,

    GRID vPC,

    GRID vApps

    Quadro vDWS,

    GRID vPC,

    GRID vApps,

    vComputeServer

    13.3 Понятие о графических ускорителях » СтудИзба

    13.3. Понятие о графических ускорителях

    Ускоpитель (accelerator) — набоp аппаpатных возможностей адаптеpа, пpедназначенный для пеpекладывания части типовых опеpаций по pаботе с изобpажением на встpоенный пpоцессоp адаптеpа. Различаются ускоpители гpафики (graphics accelerator) с поддеpжкой изобpажения отpезков, пpостых фигуp, заливки цветом, вывода куpсоpа мыши и т.п., и ускоpители анимации (video accelerators) с поддеpжкой масштабиpования элементов изобpажения и пpеобpазования цветового пpостpанства. Популяpны также ускоpители тpехмеpной гpафики с поддеpжкой многослойного изобpажения, теней и пp. После достижения и превышения разрешающей способности экрана в 640×480 объем данных, необходимых для формирования одного экранного изображения существенно возрос. Рассмотрим одно экранное изображение с параметрами 640x480x256. Количество пикселов (элементов изображения) в нем равно 307200 (640×480). Поскольку существует еще 256 цветов, то необходимо 8 бит для обозначения цвета каждого пиксела. Это означает, что для построения каждого кадра необходимо 307200 байт. При частоте обновления кадра 10 раз в секунду по шине (РСI или ISA) необходимо передавать 3072000 (307200×10) байт в секунду (~3 Мбайт в секунду). При использовании режима с 65356 цветами необходимо 2 байта для каждого пиксела, т.е. для построения кадра необходимо 614400 байт (307200×2). При частоте обновления 10 кадров в секунду по шине необходимо передавать 6144000 (614400×10) байт в секунду (~6 Мбайт в секунду). Это касается только видеоинформации, а ведь шина выполняет и другие операции, такие как регенерация памяти, управление клавиатурой и мышью, доступ к накопителям и другие операции обработки данных. Когда такой объем информации требуется передавать по шине ISA, работающей на тактовой частоте 8,33 МГц, то здесь возникает узкое место в процессе передачи данных. Даже шина РСI может не справляться с обеспечением видсорежимов высокого разрешения (хотя широкополосный канал данных, обеспечиваемый шиной AGP, расширяет это узкое место). Существование таких “узких мест” в деле передачи видеоданных приводят к очень низкой частоте обновления экрана — особенно при работе в среде операционной системы Windows, которая требует частой смены картинки.

    Разработчики видео интерфейса искали пути преодоления ограничений обычных видеоадаптеров путем встраивания вычислительной мощности в саму видеокарту с тем, что бы не занимать центральный процессор компьютера обработкой графической информации. Путем разгрузки центрального процессора и переноса обработки графической информации на вычислительные схемы видеоадаптера, удалось увеличить графическую производительность компьютера в три и более число раз. Существуют несколько способов ускорения обработки графической информации, использование каждого из которых зависит от сложности видеокарты. Перенос выполнения некоторых часто требующихся функций на графический адаптер (ускорители с фиксированными функциями) с центрального процессора освобождает последний для других задач. Ускорители с фиксированными функциями были улучшением технологии кадровых буферов, но они не достигали производительности более сложных ускорителей. Графический ускоритель использует специализированную интегральную схему ASIC (Applications Specific Integrated Circuit), которая получает графические данные и обрабатывает их без вмешательства центрального процессора компьютера. Графические ускорители, возможно, являются наиболее рентабельным типом ускорителя. Графические сопроцессорыэто наиболее сложный тип ускорителя. Сопроцессор работает как центральный процессор, но предназначен для обработки видеоинформации. В высококачественных ускорителях широко используется графические сопроцессоры TMS2401 и TMS34020, основанные на графической архитектуре компании Texas Instruments — TIGA (Texas Instruments Graphical Architecture). К сожалению, не все графические сопроцессоры обеспечивают возрастание производительности видеосистемы, оправдывающее их высокую стоимость.

    Ядром ускорителя является графическая микросхема контроллера (или комплект микросхем). Контроллер соединен напрямую с шиной расширения компьютера (PCI или AGP). Графические команды и данные преобразуются в пикселные данные и записываются в видеопамять. Высокопроизводительная видеопамять имеет вторую шину данных, которая непосредственно подключается к RAMDAC (RAMDAC (Random Access Memory DigitaltoAnalog Converter) — ЦАП с ОЗУ (цифро-аналоговый преобразователь с оперативной памятью). В видеокартах используется для преобразования кода цвета в три сигнала основных цветов RGB). Графическая микросхема управляет работой RAMDAC и обеспечивает доступ к данным видеопамяти. Микросхема RAMDAC переводит видеоданные в аналоговые сигналы красного, зеленого и синего цветя, а также вырабатывает импульсы горизонтальной и вертикальной синхронизации. Выходные сигналы, вырабатываемые RAMDAC, управляют монитором. Такая архитектура выглядит простой, но это впечатление возникает из-за чрезвычайно высокой степени интеграции, обеспечиваемой используемыми комплектами микросхем.

    Общая производительность платы графического ускорителя зависит от сочетания пяти главных факторов: микросхемы или комплекта микросхем ускорителя, видеопамяти, видеодрайверов и BIOS, RAMDAC и архитектуры шины расширения. Понимание влияния этих факторов на производительность видеосистемы, позволит выработать правильные решение по модернизации компьютера или замене плат. Главным элементом платы видео ускорителя является сама микросхема (или комплект микросхем). Тип микросхемы (с фиксированной функцией, графический ускоритель или графический сопроцессор) определяет возможности платы видеоускорителя. При прочих равных условиях плата с графическим ускорителем, безусловно, покажет более высокую производительность, чем плата с микросхемой фиксированной функции. Такие компании как 3dfx, ATI, Advance Logic, Chips&Technologies, Matrox, NVIDIA, S3 и Oak Technology создали целую гамму современных микросхем для видеоускорителей. Многие старые микросхемы имеют 32 х разрядную шину данных (новые работают с 64 х и 128 ми разрядными шинами данных) и поддерживают очень большую скорость передачи данных; но узкое место при передаче данных в виде 16 ти разрядной шины расширения (ISA) может серьезно ухудшить эффективность работы микросхемы. Следовательно, следует учитывать рекомендации производителя платы по ее использованию — применение самого современного графического ускорителя в компьютере с процессором I 286 не заставит его “летать”.

    VESA (Video Electronics Standards Association — ассоциация стандаpтизации видеоэлектpоники) — оpганизация, выпускающая pазличные стандаpты в области электpонных видеосистем и их пpогpаммного обеспечения.

    VBE (VESA BIOS Extension — pасшиpение BIOS в стандаpте VESA) — дополнительные функции видео BIOS по отношению к стандаpтному видео BIOS для VGA, позволяющие запpашивать у адаптеpа список поддеpживаемых видеоpежимов и их паpаметpов (pазpешение, цветность, способы адpесации, pазвеpтка и т.п.) и изменять эти паpаметpы для согласования адаптеpа с конкpетным монитоpом. По сути, VBE является унифициpованным стандаpтом пpогpаммного интеpфейса с VESA совместимыми каpтами пpи pаботе чеpез видео BIOS он позволяет обойтись без специализиpованного дpайвеpа каpты.

    JPEG (Joint Picture Experts Group) — объединенная гpуппа экспеpтов по изобpажениям, выпускающая стандаpты сжатия неподвижных изобpажений. Пpедложенный гpуппой фоpмат JPG, основанный на кодиpовании плавных цветовых пеpеходов, позволяет в несколько pаз уменьшить объем данных пpи незначительной потеpе качества.

    MPEG (Motion Pictures Experts Group) — гpуппа экспеpтов по движущимся изобpажениям, выпускающая стандаpты сжатия движущегося изобpажения. Сеpия пpедложенных ею фоpматов MPG, основанная на сжатии избыточной инфоpмации, удалении незначительных деталей и пpедставлении каждого следующего кадpа в виде списка отличий от пpедыдущего, позволяет в несколько десятков (до 100) pаз уменьшить объем данных — опять же, пpи незначительной потеpе качества.

    Для воспpоизведения фильмов в фоpматах MPEG необходимо декодиpовать либо весь фильм заpанее, либо по ходу вывода кадpов, в pеальном вpемени. Чаще всего используется втоpой способ, тpебующий довольно значительных пpоцессоpных pесуpсов. Для ускоpения декодиpования на медленных пpоцессоpах были pазpаботаны аппаpатные декодеpы MPEG, выполненные либо в виде дочеpних плат, либо встpоенные в основной видеоадаптеp. Однако быстpые пpоцессоpы (Pentium-133 и выше) выполняют декодиpование быстpее обычных аппаpатных декодеpов, поэтому пpи пpогpаммном декодиpовании они позволяют получить более высокую скоpость вывода пpи том же фоpмате изобpажения.

    Ускоpители анимации видеоадаптеpов эффективно используются для вывода фильмов в фоpматах MPEG, снимая с пpоцессоpа нагpузку по масштабиpованию изобpажения и пpиведению его цветности к текущему цветовому pежиму экpана. Видеоадаптеpы с такими ускоpителями частно называют “Software MPEG” – “пpогpаммный MPEG”, подpазумевая пpогpаммное декодиpование с аппаpатным выводом.

    Какие типы видеопамяти используются в видеоадаптеpах?

    FPM DRAM (Fast Page Mode Dynamic RAM — динамическое ОЗУ с быстpым стpаничным доступом) — основной тип видеопамяти, идентичный используемой в системных платах. Использует асинхpонный доступ, пpи котоpом упpавляющие сигналы жестко не пpивязаны к тактовой частоте системы. Активно пpименялся пpимеpно до 1996 г.. Hаиболее pаспpостpаненные микpосхемы FPM DRAM — 4-pазpядные DIP и SOJ, а также — 16-pазpядные SOJ.

    VRAM (Video RAM — видео-ОЗУ) — так называемая двухпоpтовая DRAM с поддеpжкой одновpеменного доступа со стоpоны видеопpоцессоpа и центpального пpоцессоpа компьютеpа. Позволяет совмещать во вpемени вывод изобpажения на экpан и его обpаботку в видеопамяти, что сокpащает задеpжки и увеличивает скоpость pаботы.

    EDO DRAM (Extended Data Out DRAM — динамическое ОЗУ с pасшиpенным вpеменем удеpжания данных на выходе) — тип памяти с элементами конвейеpизации, позволяющий несколько ускоpить обмен блоками данных с видеопамятью.

    SGRAM (Synchronous Graphics RAM — синхpонное гpафическое ОЗУ) — ваpиант DRAM с синхpонным доступом, когда все упpавляющие сигналы изменяются только одновpеменно с системным тактовым синхpосигналом, что позволяет уменьшить вpеменнЫе задеpжки за счет “выpавнивания” сигналов.

    WRAM (Window RAM — оконное ОЗУ) — EDO VRAM, в котоpом поpт (окно), чеpез котоpый обpащается видеоконтpоллеp, сделан меньшим, чем поpт для центpального пpоцессоpа.

    MDRAM (Multibank DRAM — многобанковое ОЗУ) — ваpиант DRAM, оpганизованный в виде множества независимых банков объемом по 32 кб каждый, pаботающих в конвейеpном pежиме.

     

    Как выбрать смартфон или планшет? Часть 10 – Графический ускоритель


    выбор смартфона 10выбор смартфона 10

    Автор: adminkost2 / Опубликовано:26.06.2017 / Последнее обновление: 10.01.2020


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

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

    Разновидность видеопроцессоров. Основные достоинства и недостатки

    Условно GPU делятся на два типа: сторонней или собственной разработки.

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

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

    Выделяют четыре типа графических ускорителей: Imagination PowerVR, Arm Mali, Qualcomm Adreno и Intel Hd Graphics.

    PowerVR специализируется на производстве GPU для других компаний: MediaTek, Allwinner или Intel. Ускорители обладают хорошей производительностью и работают на частотах до 700 МГц, что благоприятно сказывается на автономности. При этом низкая распространенность, вынуждает разработчиков игр учитывать GPU PowerVR в последнюю очередь.

    Видеопроцессор Mali так же разрабатывается для сторонних компаний. Главные покупатели: Samsung, Huawei, MediaTek и Xiaomi. Благодаря этому по распространенности Mali занимает первое место, что стимулирует разработчиков лучше оптимизировать софт. Не высокая мощность компенсируется повышенными до 900-920 МГц частотами. Из-за этого падает автономность и растет тепловыделение.

    Ускорители Adreno используется только в SoC Snapdragon, и демонстрируют лучшие показатели производительности среди конкурентов. Работают на частоте 450-650 МГц, что способствует низкому тепловыделению и потреблению энергии. По распространенности уступают только Mali, но разработчики охотно оптимизируют софт и игры под Adreno. Кроме того у GPU имеется запас мощности, что позволяет компенсировать нехватку оптимизации.

    Hd Graphics применяется только в чипах Intel. Мощность сопоставима с PowerVR при одинаковых частотах. Распространенность и оптимизация низкая, из-за чего SoC не используют больше в смартфонах, а только в планшетах.

    Мощность графических ускорителей

    Производительность GPU измеряется в GFlops – количество выполняемых операций с плавающей запятой в секунду. Чем цифра выше, тем лучше.

    В таблице ниже, выборка некоторых актуальных SoC:

    GPU

    SoC

    Позиционирование

    Частота, МГц

    GFlops

    Adreno 530

    Snapdragon 821

    Флагманский

    650

    519.2

    Adreno 506

    Snapdragon 626

    Средний

    650

    130

    Adreno 505

    Snapdragon 435

    Бюджетный

    450

    48.6

    Mali-T880 MP4

    Helio X27 (MT6797X)

    Топовый

    875

    119

    Kirin 955

    Топовый

    900

    122.4

    Mali-T860 MP2

    Helio P15 (MT6755T)

    Средний

    800

    54.4

    HD Graphics 400

    Atom x5-Z8300

    Средний

    700

    134.4

    PowerVR G6430 MP4

    Atom Z3590

    Средний

    640

    163.8

    Стоит отметить, на производительность GPU влияет не только тактовая частота, но и количество шейдерных ядер. Эти блоки главные составные части современных графических ускорителей, которые занимаются вычислением и обработкой данных. Например, в Adreno 405 – 48 блоков, а в Adreno 418 – 128.

    При выборе мобильного устройства, учитывать тактовую частоту или количество блоков не стоит. Достаточно взглянуть на количество GFlops из таблицы, что бы представить ориентировочную мощность. В таблице ниже перечислены популярные задачи и ориентировочное количество GFlops для оптимальной работы.

    GFlops Задачи
    25-35 Общение в соцсетях, интернет, YouTube, видео 1080р
    45-60 Игры с низкими настройками графики
    80-130 Запись и просмотр 4К видео, игры на средних настройках
    180-240 Игры на высоких установках, трансляция 4К видео
    320+ Игры на максимальных графических настройках

    Драйвера

    Для обработки графики пользовательского интерфейса, игр, видео и т.д., производители закладывают ряд драйверов, инструментов и библиотек: OpenGL ES, OpenCL, Vulkan и DirectX. Чем новее SoC, тем современнее драйвера, а устройство демонстрирует лучшие показатели производительности или возможностей, при выполнении привычных задач.

    Традиционно лучшие наработки получают мобильные платформы топового и флагманского сегмента. Жизненный цикл, поддержка и обновление таких чипов в приоритете. Тогда как средний или бюджетный сегмент обновляется в последнюю очередь, либо не получает обновы вообще. Поддержка Qualcomm в среднем 2-3 года; MediaTek 1-1.5 года, нижний сегмент обновляется только с выходом новых чипов.

    Учитывать версии драйверов стоит в том случае, если смартфон или планшет покупается с запасом на будущее. Тогда лучший выбор – свежий SoC, топового или флагманского сегмента.

    Вывод

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

    Наилучший вариант – связка Snapdragon-Adreno. Ускоритель не так распространен, как Mali, но поддержка производителя в 2 раза дольше конкурентов. Кроме того имеется запас мощности, что легко компенсирует недостаток оптимизации.

    Не рекомендуется рассматривать ускоритель Mali в чипах MediaTek. Это гарантия отсутствия будущих обновлений ОС Android. Так же производительность сопоставимая с ускорителями Adreno 2-4 летней давности.

    Кроме того стоит учесть ежегодное увеличение требований системы и недостаток оптимизации. Поэтому важно иметь запас в 20-40 GFlops, для компенсации через 1-2 года эксплуатации.

    выбор смартфона 10 Загрузка…


    Поделиться:[addtoany]



    Графический акселератор — это… Что такое Графический акселератор?

  • ГРАФИЧЕСКИЙ ПРОЦЕССОР — (Graphics Processing Unit, GPU) микропроцессор (см. МИКРОПРОЦЕССОР), специализированный для обработки графической информации. Он берет на себя часть функций по формированию трехмерного (3D) изображения и позволяет разгрузить центральный… …   Энциклопедический словарь

  • Nexus (торговая марка) — Эта статья предлагается к удалению. Пояснение причин и соответствующее обсуждение вы можете найти на странице Википедия:К удалению/23 ноября 2012. Пока процесс обсуждени …   Википедия

  • 8514 (display standard) — IBM 8514  это стандарт разрешения компьютерных дисплеев, одноимённый монитор (19 диагональ) и графический акселератор 8514/A, разработанный компанией IBM. Был представлен в 1987 году, одновременно с стандартом PGC. Предлагал квадратный пиксель и… …   Википедия

  • Tapwave Zodiac — У этого термина существуют и другие значения, см. Зодиак (значения). Tapwave Zodiac Производитель …   Википедия

  • От винта! (телепередача) — Стиль этой статьи неэнциклопедичен или нарушает нормы русского языка. Статью следует исправить согласно стилистическим правилам Википедии. У этого термина существуют и другие значения, см. От винта! …   Википедия

  • ATI Rage — Для термина «Rage» см. другие значения. ATI RAGE  серия графических чипсетов производства компании ATI Technologies, с ускорением 2D, 3D графики и видео. RAGE является преемником Mach, серии 2D ускорителей. Содержание 1 3D RAGE (I) 2 3D RAGE …   Википедия

  • S3 ViRGE — Для улучшения этой статьи желательно?: Дополнить статью (статья слишком короткая либо содержит лишь словарное определение). Найти и оформить в виде сносок ссылки на авторитетные источники, подтверждаю …   Википедия

  • Лердорф, Расмус — Расмус Лердорф Rasmus Lerdorf Расмус Лердорф (англ.  …   Википедия

  • От Винта! — Поздняя заставка программы «От винта!»  телевизионная программа, выходившая на российском телевидении в период с 1995 по ноябрь 1998 года, полностью посвящённая компьютерным играм для персональных компьютеров. Всего на экран вышло 136 выпусков… …   Википедия

  • От винта! (телевизионная программа) — Поздняя заставка программы «От винта!»  телевизионная программа, выходившая на российском телевидении в период с 1995 по ноябрь 1998 года, полностью посвящённая компьютерным играм для персональных компьютеров. Всего на экран вышло 136 выпусков… …   Википедия

  • Секреты невозможных вычислений на GPU / ComBox Technology corporate blog / Habr

    Наш опыт использования вычислительного кластера из 480 GPU AMD RX 480 при решении математических задач. В качестве задачи мы взяли доказательство теоремы из статьи профессора Чуднова А.М. “Циклические разложения множеств, разделяющие орграфы и циклические классы игр с гарантированным выигрышем“. Задача заключается в поиске минимального числа участников одной коалиции в коалиционных играх Ним-типа, гарантирующее выигрыш одной из сторон.

    Развитие CPU

    Первый процессор, получивший действительно массовое распространение – это 8086 от компании Intel, разработанный в 1978 году. Тактовая частота работы 8086 составляла всего 8 МГц. Спустя несколько лет появились первые процессоры внутри которых было 2, 4 и даже 8 ядер. Каждое ядро позволяло выполнять свой код независимо от других. Для сравнения — современный процессор Intel Core i9-7980XE работает на частоте 2,6 ГГц и содержит 18 ядер. Как видите — прогресс не стоит на месте!

    Развитие GPU

    Одновременно с развитием центральных процессоров развивались и видеокарты. В основном их характеристики важны для компьютерных игр, там новые технологии проявляются особенно красочно и рендеринг 3D картинки постепенно приближается к фотографическому качеству. В начале развития компьютерных игр расчет картинки выполнялся на CPU, но вскоре был достигнут предел изобретательности разработчиков 3D-графики, ухитрявшихся оптимизировать даже очевидные вещи (хороший пример тому — InvSqrt()). Так, в видеокартах стали появляться сопроцессоры со специальным набором команд для выполнения 3D вычислений. Со временем число таких команд росло, что, с одной стороны, позволяло гибче и эффективнее работать с изображением, а с другой — усложнило процесс разработки.

    С 1996 года начали выпускаться графические ускорители S3 ViRGE, 3dfx Voodoo, Diamond Monster и другие. В 1999 году nVidia выпустила процессор GeForce 256, введя в обиход термин GPU — графический процессор. Он уже универсальный, может заниматься геометрическими расчетами, преобразованием координат, расстановкой точек освещения и работой с полигонами. Отличие GPU от других графических чипов заключалось в том, что внутри, кроме специализированных команд, был набор стандартных команд, с помощью которых можно было реализовать свой алгоритм рендеринга. Это дало значительное преимущество, так как позволило добавлять любые спецэффекты, а не только те, которые уже запрограммированы в видеокарту. Начиная с GeForce 8000/9000 в GPU появились потоковые процессоры — уже полноценные вычислители. Их число варьировалось в зависимости от модели от 16 до 128. В современной терминологии они называются унифицированные шейдерные блоки, или просто шейдерные блоки. В производимых сегодня GPU AMD Vega 64 содержится 4096 шейдерных блока, а тактовая частота может достигать 1536 МГц!

    Что содержит в себе GPU

    Архитектура GPU отличается от CPU большим количеством ядер и минималистичным набором команд, направленных в основном на векторные вычисления. На уровне архитектуры решены вопросы параллельной работы большого числа ядер и одновременного доступа к памяти. Современные GPU содержат от 2-х до 4-х тысяч шейдерных блоков, которые объединены в вычислительные юниты (Compute Unit). При параллельных вычислениях особенно остро стоит проблема одновременного доступа к памяти. Если каждый из потоковых процессоров попытается выполнить запись в ячейку памяти то эти команду упрутся в блокировку и их необходимо будет поставить в очередь, что сильно снизит производительность. Поэтому потоковые процессоры выполняют команды небольшими группами: пока одна группа производит вычисления, другая загружает регистры и т.д. Также можно объединить ядра в рабочие группы, обладающие общей памятью и внутренними механизмами синхронизации.

    Еще одной важной особенностью GPU является наличие векторных регистров и векторных АЛУ, которые могут выполнять операции одновременно для нескольких компонентов вектора. Это в первую очередь нужно для 3D графики, но поскольку наш мир трехмерный, ничто не мешает использовать это для многих физических вычислений. При наличии свободных векторных АЛУ их можно использовать и для вычисления скалярных величин.

    Они такие разные, CPU и GPU

    Для полноценной работы вычислительной системы важны оба типа устройств. К примеру, мы выполняем пошаговую программу, некий последовательный алгоритм. Там нет возможности выполнить пятый шаг алгоритма, так данные для него рассчитываются на шаге четыре. В таком случае эффективнее использовать CPU с большим кэшем и высокой тактовой частотой. Но есть целые классы задач, хорошо поддающихся распараллеливанию. В таком случае эффективность GPU очевидна. Самый частый пример — вычисление пикселей отрендеренного изображения. Процедура для каждого пикселя почти одинаковая, данные о 3D объектах и текстурах находятся в ОЗУ видеокарты и каждый потоковый процессор может независимо от других посчитать свою часть изображения.

    Вот пример современной задачи — обучение нейронной сети. Большое количество одинаковых нейронов необходимо обучить, то есть поменять весовые коэффициенты каждого нейрона. После таких изменений нужно пропустить через нейросеть тестовые последовательности для обучения и получить вектора ошибок. Такие вычисления хорошо подходят для GPU. Каждый потоковый процессор может вести себя как нейрон и при вычислении не придется выстраивать решение последовательным образом, все наши вычисления будут происходить одновременно. Другой пример — расчет аэродинамических потоков. Необходимо выяснить возможное поведение проектируемого моста под воздействием ветра, смоделировать его аэродинамическую устойчивость, найти оптимальные места установки обтекателей для корректировки воздушных потоков или рассчитать устойчивость к ветровому резонансу. Помните знаменитый “танцующий мост” в Волгограде? Думаю, что никто не хотел бы оказаться в тот момент на мосту…

    Поведение воздушного потока в каждой точке можно описать одинаковыми математическими уравнениями и решать эти уравнения параллельно на большом количестве ядер.

    GPU в руках программистов

    Для выполнения вычислений на GPU используется специальный язык и компилятор. Существует несколько фреймворков для выполнения общих вычислений на GPU: OpenCL, CUDA, С++AMP, OpenACC. Широкое распространение получили первые два, но использование CUDA ограничено только GPU от компании nVidia.

    OpenCL был выпущен в 2009 году компанией Apple. Позднее корпорации Intel, IBM, AMD, Google и nVidia присоединились к консорциуму Khronos Group и заявили о поддержке общего стандарта. С тех пор новая версия стандарта появляется каждые полтора-два года и каждый привносит все более серьезные улучшения.

    На сегодняшний день язык OpenCL C++ версии 2.2 соответствует стандарту C++14, поддерживает одновременное выполнение нескольких программ внутри устройства, взаимодействие между ними через внутренние очереди и конвейеры, позволяет гибко управлять буферами и виртуальной памятью.

    Реальные задачи

    Интересная задача из теории игр, в решении которой мы принимали участие — доказательство теоремы из статьи профессора Чуднова А.М. “Циклические разложения множеств, разделяющие орграфы и циклические классы игр с гарантированным выигрышем“. Задача заключается в поиске минимального числа участников одной коалиции в коалиционных играх Ним-типа, гарантирующее выигрыш одной из сторон.

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

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

    Сложность решения этой задачи в переборе огромного числа вариантов. Например, если мы ищем решение для n=25, то это 25 бит, а если n=100, то это уже 100 бит. Если взять количество всех возможных комбинаций, то для n=25 это 2^25=33 554 432, а для n=100 это уже 2^100=1 267 650 600 228 229 401 496 703 205 376 комбинаций. Возрастание сложности просто колоссальное!

    Такая задача хорошо распараллеливается, а значит она идеально подходит для нашего GPU кластера.

    Программисты vs математики

    Изначально математики решали эту задачу на Visual Basic в Excel, так удалось получить первичные решения, но невысокая производительность скриптовых языков не позволила продвинуться далеко вперед. Решение до n=80 заняло полтора месяца… Склоняем голову перед этими терпеливыми людьми.

    Первым этапом мы реализовали алгоритм задачи на языке Си и запустили на CPU. В процессе выяснилось, что при работе с битовыми последовательностями многое можно оптимизировать.

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

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

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

    Вот и наступил этап подготовки программы для решения на GPU и код был модифицирован для работы в несколько потоков. Управляющая программа теперь занималась диспетчеризацией задач между потоками. В многопоточной среде скорость вычисления увеличилась в 5 раз! Этого удалось добиться за счет одновременной работы 4 потоков и объединения функций.

    На этом этапе решение производило верные расчеты до n=80 за 10 минут, тогда как в Exсel’e эти расчеты занимали полтора месяца! Маленькая победа!

    GPU и OpenCL

    Было принято решение использовать OpenCL версии 1.2, чтобы обеспечить максимальную совместимость между различными платформами. Первичная отладка производилась на CPU от Intel, потом на GPU от Intel. Уже потом перешли на GPU от AMD.

    В версии стандарта OpenCL 1.2 поддерживаются целочисленные переменные размерностью 64 бита. Размерность в 128 бит ограничено поддерживается AMD, но компилируется в два 64-х битных числа. Из соображений совместимости и для оптимизации производительности было решено представлять число размерностью 256 бит как группу 32-х битных чисел, логические побитовые операции над которыми производятся на внутреннем АЛУ GPU максимально быстро.

    Программа на OpenCL содержит ядро — функцию, которая является точкой входа программы. Данные для обработки загружаются с CPU в ОЗУ видеокарты и передаются в ядро в виде буферов — указателей на массив входных и выходных данных. Почему массив? Мы же выполняем высокопроизводительные вычисления, нам нужно много задач, выполняемых одновременно. Ядро запускается на устройстве во множестве экземпляров. Каждое ядро знает свой идентификатор и берет именно свой кусочек входных данных из общего буфера. Тот случай, когда самое простое решение — самое эффективное. OpenCL — это не только язык, но и всеобъемлющий фреймворк, в котором досконально продуманы все мелочи научных и игровых вычислений. Это здорово облегчает жизнь разработчику. Например, можно запустить много потоков, диспетчер задач разместит их на устройстве сам. Те задачи, которые не встали на немедленное исполнение, будут поставлены в очередь ожидания и запущены по мере освобождения вычислительных блоков. У каждого экземпляра ядра есть свое пространство в выходном буфере, куда он и помещает ответ по завершению работы.

    Основная задача диспетчера OpenCL — обеспечить параллельное выполнение нескольких экземпляров ядра. Здесь применён накопленный десятилетиями научный и практический опыт. Пока часть ядер загружает данные в регистры, другая часть в это время работает с памятью или выполняет вычисления — в результате ядро GPU всегда полностью загружено.

    Компилятор OpenCL хорошо справляется с оптимизацией, но разработчику влиять на быстродействие проще. Оптимизация под GPU идет в двух направлениях — ускорение выполнения кода и возможность его распараллеливания. Насколько хорошо распараллеливается код компилятором зависит от нескольких вещей: количество занимаемых scratch регистров (которые располагаются в самой медленной памяти GPU — глобальной), размер скомпилированного кода (надо поместиться в 32 кб кэша), количество используемых векторных и скалярных регистров.

    ComBox A-480 GPU или один миллион ядер

    Эта самая интересная часть проекта, когда от Excel мы перешли на вычислительный кластер состоящий из 480 видеокарт AMD RX 480. Большого, быстрого, эффективного. Полностью готового к выполнению поставленной задачи и получению тех результатов, которых мир еще никогда не видел.

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

    Запуск на кластере подтвердил наши предположения по скорости решений: поиск последовательностей для n>100 занимал около часа. Было удивительно видеть как на кластере ComBox A-480 новые решения находились за минуты, в то время как на CPU это занимало многие часы.

    Всего через два часа работы вычислительного кластера мы получили все решения до n=127. Проверка решений показала, что полученные ответы достоверны и соответствуют изложенным в статье теоремам профессора Чуднова А.М.

    Эволюция скорости

    Если посмотреть прирост производительности в ходе решения задачи, то результаты были примерно такими:

    • полтора месяца до n=80 в Excel;
    • час до n=80 на Core i5 с оптимизированной программой на С++;
    • 10 минут до n=80 на Core i5 с использованием многопоточности;
    • 10 минут до n=100 на одном GPU AMD RX 480;
    • 120 минут до n=127 на ComBox A-480.

    Перспективы и будущее

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

    Возможные области применения параллельных вычислений:

    • задачи автоматического управления транспортными средствами и дронами;
    • расчеты аэродинамических и гидродинамических характеристик;
    • распознавание речи и визуальных образов;
    • обучение нейронных сетей;
    • задачи астрономии и космонавтики;
    • статистический и корреляционный анализ данных;
    • фолдинг белок-белковых соединений;
    • ранняя диагностика заболеваний с применением ИИ.

    Отдельное направление — облачные вычисления на GPU. Например, такие гиганты как Amazon, IBM и Google сдают свои вычислительные мощности на GPU в аренду. Сегодня с уверенностью можно сказать что будущее высокопроизводительных параллельных вычислений будет принадлежать GPU кластерам.

    Понятие о графических ускорителях

    Назначение видеоадаптера можно
    сформулировать несколькими словами:
    освободить основной процессор от
    управления выводом изображения на
    экран, а основную память от необходимости
    эти изображения хранить. Фактически
    видеоадаптер можно рассматривать как
    видеопроцессор, оптимизированный для
    выполнения операций ввода/вывода, и
    видеопамять для хранения видео-изображений,
    оптимизированную по параметру изображений.
    Вместе с тем, в современных видеоадаптерах
    широко применяется практика исполнения
    дополнительных функций, связанных не
    только с вводом-выводом и хранением
    изображений, но и с операциями по их
    автоматической обра­ботке.Такие
    видеоадаптеры называютграфическими
    ускорителями.
    Вопрос автоматизации
    обработки видео-изображений достаточно
    тонкий. Для того чтобы электроника
    работала эффективно, должны быть
    формальные признаки, по которым
    видеопроцессор может определить, что
    и как нужно обрабатывать перед выводом
    на экран. И такие признаки есть.

    Ускорители двумерной графики

    Большинство компьютеров IBMPCработают в операционных
    системахWindows
    98 Windows 2000.Эти системы отличаются, во-первых, тем,
    что являются графическими, то есть,
    требуют большого объема операций с
    графикой и, во-вторых, тем, что оформление
    как самой операционной системы, так и
    всех приложений, выполнено стереотипно.
    Основными объектами операционной мыWindows9xявляютсяокна.Это стандартные
    элементы оформления, содержащие элементы
    управления и объекты. Значительную долю
    времени работы с ПК составляют стандартные
    операции с окнами. Окна открывают и
    закрывают, их перемещают с места на
    место, изменяют размер и т.д.

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

    Ускорители трехмерной графики

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

    Вопрос обработки произвольныхизображений аппаратными средствами
    видео­адаптера решается сложнее, чем
    вопрос обработки стандартных объектовWindows. Тем не менее, и в
    данном случае можно выделить ряд
    достаточно стереотипных операций,
    выполняемых наиболее часто. Прежде
    всего, эти опера­ции относятся к
    обработке трехмерной графикиD-графики).Соответствен­но, видеоадаптеры,
    оптимизированные для таких операций,
    получили названиеЗD-акселераторовилиускорителей 3D.

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

    2D-акселерация.

            Рассмотрим
    аппаратные методы увеличения скорости
    вывода графических карт SVGA. Архитектура
    стандартной карты SVGA оказалась не в
    состоянии обеспечить необходи-мую для
    мультимедиа систем производительность
    графической подсистемы. Для решения
    этой проблемы рядом фирм были разработаны
    различные дополнительные аппаратные
    средства акселерации карт SVGA, по-зволившие
    разгрузить центральный процессор и
    увеличить скорость передачи данных:

           
    GUI
    Accelerator (Graphics User Interface Accelerator) — ускоритель
    графического интерфейса пользователя.
    Это устройство представляет собой
    совокупность блоков, рассредоточенных
    по всей графической карте, служащих
    одной цели — перераспределить операции
    доступа к видеопамяти между всеми
    блоками графической карты и центральным
    процессором таким образом, чтобы
    минимизировать число конфликтов.

           
    CPU
    Write Buffer — буфер записи центрального
    про-цессора. Это блок, буферизующий
    операции записи данных центральным
    процессором в видеопамять графической
    карты. Если в момент доступа центрального
    процессора видеопамять занята каким-либо
    другим блоком карты, этот запрос
    помещается в буфер и выпол-няется позже.
    Таким образом минимизируется время
    ожидания ресурсов центральным процессором.
    Этот блок осуществляет кэширование
    видеопамяти подобно тому, как это делает
    кэш центрального процессора по отношению
    к основной оперативной памяти компьютера.
    Оттого, насколько удачно выбрана схема
    кэширова-ния, в большой степени зависит
    эффективность работы этого блока. При
    наиболее удачных стечениях обстоя-тельств
    выигрыш по скорости записи в видеопамять
    (по экспериментальным данным) может
    составлять 2-3 раза.

           
    FIFO
    (First Input First Output) — буфер «первым-вошел-первым-вышел».
    Этот буфер подобен CPU Write Buffer. Он занимается
    буферизацией операций передачи данных
    между блоками Sequencer и Attribute Controller, что
    позволяет последнему считывать с помощью
    Se-quencer из видеопамяти не байт, а строку
    или часть стро-ки пикселей за один цикл
    обращения, используя режим быстрой
    страничной пересылки данных (Fast Page
    Mo-de). Это значительно снижает количество
    обращений к видеопамяти, которые в
    обычном случае определяются частотой
    циклов обновления экрана.

           
    Cursor
    — графический курсор. Отвечает за
    аппаратную функцию графического курсора.
    Эта функция — неотъемлемая часть любого
    графического интерфейса, в котором
    применяется курсор, управляемыми такими
    манипуляторами как «мышь», «Track
    Ball», «Joystick» и т.п. Будучи реализована
    программно, она всегда была сопряжена
    с большим объемом вычислений и пересылок
    данных при обработке прерываний,
    приходящих от управляющего курсором
    манипулятора. Аппаратная же реализация
    во много раз сократила объемы пересылок
    и время обработки этих прерываний.

           
    Bit
    BLT (Bit Block Transfer) — копирование битовых
    блоков. Данный блок аппаратно реализует
    функцию копирования участков изображения
    прямоугольной формы. Как правило,
    поддерживаются расширенные варианты
    данной функции, способные совершать
    логические функции над содержимым
    копируемой области. Это одна из самых
    распространенных и самых емких по
    времени экранных функций в системах с
    графическим интерфейсом пользователя.
    Таким образом, был сделан серьезный шаг
    по разгрузке центрального процессора
    oi большой части взаимодействий с
    видеопамятью. В сочетании с остальными
    блоками «GUI Accelerator» этот блок
    позволяет осуществлять операции
    копирования типа видеопамять-видеопамять
    приблизительно в 20 раз быстрее, чем
    программно, а память-видеопамять —
    приблизительно в 10 раз.

           
    Line
    Draw — рисование линий. В блоке аппаратно
    реализуется функция рисования прямых
    линий. Он достаточно редко встречается
    в графических картах, обладающих только
    функциями «GUI Accelerator», а чаще
    реализуется как одна из функций «Graphics
    Co-Processor», о котором пойдет речь ниже.

           
    Graphics
    Co-Processor — графический сопроцессор.
    Исполняющее устройство выступает в
    качестве специализированного сопроцессора,
    с которым можно общаться через особые
    порты ввода/вывода, принадле-жащие
    регистрам блока регистров. Этот
    сопроцессор является вторым устройством
    после Graphics Controller, с помощью которого
    можно записывать информацию в видеопамять,
    но он обеспечивает более высокоуровневый
    интерфейс. Если с по-мощью блока Graphics
    Controller операциями записи центрального
    процессора можно было записывать в
    видеопамять байты, предварительно
    установив в соот-ветствующих регистрах
    специальных портов ввода/вывода режим
    записи, логическую функцию, битовую
    маску и т.п.,то с помощью Graphics Co-Processor
    можно сразу «рисовать» в видеопамяти
    простейшие графичес-кие примитивы:
    линии, дуги, закрашенные прямоуголь-ники
    и т.п. Таким образом, практически все
    векторные примитивы, являющиеся обычно
    основой любой графической библиотеки,
    не только исполняются отдельным
    процессором, освобождая центральный
    процессор компьютера, но и содержатся
    не в главной оперативной памяти, а в
    микрокоде Graphics Co-Processor, освобож-дая
    пространство оперативной памяти.
    3D-акселерация.

           
    Когда
    в роли двигателя прогресса выступили
    компьютерные игры, 2D-ускорители почти
    исчерпали свои возможности, и эволюция
    видеокарт пошла по пути наделения их
    все более мощными средствами ускорения
    трехмерной машинной графики. Видеоадаптеры,
    способные ускорять операции трехмерной
    графики,  получили название
    3D-ускорителей (синонимом является
    3D-акселератор, а также часто встречаемое
    жаргонное «3Dfx» для обозначения
    всех 3D-ускорителей, а не только
    произведенных компанией 3Dfx Interactive).

           
    Какие
    же действия ускоряет 3D-акселератор? В
    компьютере трехмерные объекты
    представляются с помощью геометрических
    моделей, состоящих из сотен и тысяч
    элементарных геометрических фигур,
    обычно треугольников. Задаются также
    пространственное положение источников
    света, отражательные свойства материала
    поверхности объекта, степень его
    прозрачности и т. п. При этом некоторые
    объекты могут частично загораживать
    друг друга, между ними может переотражаться
    свет; пространство может быть не абсолютно
    прозрачным, а затянутым туманом или
    дымкой. Для большего реализма необходимо
    учесть и эффект перспективы. Чтобы
    поверхность смоделированного объекта
    не выглядела искусственной, на нее
    наносится текстура — двухмерная картинка
    небольшого размера, передающая цвет и
    фактуру поверхности. Все перечисленные
    трехмерные объекты с учетом примененных
    к ним эффектов должны в конечном итоге
    быть преобразованы в плоское изображение.
    Эту операцию, называемую рендерингом,
    и выполняет 3D-ускоритель.

    Видеосистема
    – комбинация видеокарта-монитор

    Итак,
    какие же аспекты комбинации
    видеокарта-монитор наиболее интересны?

    • Качество изображения. Чтобы Ваши
      глаза не болели, когда Вы смотрите на
      экран, качество изображения должно
      быть хорошим. На качество изображения
      влияют следующие факторы:

    • Быстродействие видеоустройства.
      Когда мы работаем на компьютере,
      изображение очень часто меняется, и
      эти изменения должны происходить как
      можно скорее. Частота изменений зависит
      от работы, которую мы выполняем; по
      этому признаку можно выделить несколько
      категорий производительности
      видеорежима:

      • Быстродействие в 2D-режиме, называемом
        также GUI, или Windows — ориентированным
        режимом, поскольку Windows являются
        наиболее популярной операционной
        системой, использующей GUI. В настоящее
        время это быстродействие является
        наиболее значимым; от него зависит,
        насколько быстро можно просматривать
        текст и графику, открывать и закрывать
        новые окна. Время стандарта быстродействия
        графических карт в 2D-режиме Matrox
        Millennium близится к концу, последние
        версии графических карт не очень
        различаются по быстродействию в режиме
        2D; большинство из них превосходит
        старый стандарт Matrox Millennium.

      • Быстродействие в 3D-режиме — это основной
        критерий, позволяющий проводить
        различие между современными графическими
        картами. Карты, не имеющие 3D-ускорения,
        скоро исчезнут с рынка; компании Matrox
        пришлось осознать это на собственном
        горьком опыте, когда она выпустила
        Millennium II без каких-либо функций 3D. Эта
        компания потеряла свое положение
        лидера рынка в одно мгновение. Компания
        S3 играла важную роль на рынке графических
        микросхем, но посредственные
        3D-характеристики их продукции привели
        к почти полному их уходу с рынка. То же
        самое, видимо, происходит с Cirrus Logic и
        другими компаниями.

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

      • Быстродействие в режиме видеодисплея, 
        для большинства из нас не является
        особенно важным, однако, если пользователь
        собирается просматривать и обрабатывать
        видеоизображения на своем компьютере,
        то ему следует приобрести карту,
        обеспечивающую быструю обработку
        видеоизображений. Значительные
        изменения в этой области, вероятно,
        будут связаны с DVD.

       
    Роль
    элементов системы видеокарта-монитор
    для каждого из этих видов деятельности.

    • Монитор играет основную роль во всем,
      что касается четкости, яркости,
      устойчивости и максимального разрешения
      экрана. Если Вам нужно изображение
      хорошего качества, ищите высококачественный
      монитор с экраном не менее 17 дюймов. Со
      стороны видеокарты элементом,
      ответственным за передачу изображения
      высокого качества на монитор, является
      RAM DAC. Здесь имеют значение два момента
      — качество RAM DAC, например, является ли
      она автономной или встроенной в
      видеоплату, и максимальная частота
      пикселей, измеряемая в МГц. RAM DAC, имеющая
      частоту 220 МГц, не обязательно, но почти
      всегда лучше, чем схема с частотой 135
      МГц, и, естественно, обеспечивает более
      высокую частоту обновления экрана —
      почему, будет сказано ниже. RAM DAC все
      чаще и чаще включаются в графические
      микросхемы, поскольку это позволяет
      существенно уменьшить стоимость
      графических карт, а качество современных
      встроенных RAM DAC приближается к качеству
      внешних RAM DAC. 

    • От размера видеопамяти зависит цветовое
      разрешение и разрешение экрана в
      2D-режиме; для 3D-режима, приобретающего
      все большее значение, размер локальной
      памяти карты также определяет максимальное
      3D-разрешение. Работа с 3D требует намного
      большего размера локальной памяти, чем
      работа с 2D при том же разрешении. Это
      связано с тем, что 3D-режим требует
      фронтального, фонового и Z-буфера.
      Фронтальный буфер хранит видимое
      изображение, фоновый — следующий кадр
      в процессе подготовки, а Z-буфер —
      параметры третьего измерения (z-величины;
      х и y образуют два измерения, а z — третье
      измерение). Этим объясняется то, что
      карта с 4 МВ локальной памяти обеспечивает
      разрешение 1600×1200 при хорошем цветовом
      разрешении (16 бит) в режиме 2D, поскольку
      это требует 1600x1200x2 байт = 3.7 MB. Однако
      игры, использующие информацию из
      z-буфера (хорошие игры пользуются этой
      информацией для обеспечения реальных
      трехмерных изображений), могут работать
      только в режиме разрешения 800x600x 16 бит
      цвета x 16 бит z-буфера, 800x600x 6 байт (2 байта
      — цветной фронтальный буфер, 2 байта —
      цветной фоновый буфер, 2 байта — 16-битный
      z-буфер) = 2.74 MB. 3D-режим при разрешении
      1024×768 требует 4.5 MB памяти и не может
      работать на 3D-карте с 4 МВ памяти. 

    Тип видеопамяти в сочетании со схемной
    базой определяет все характеристики
    комбинации видеокарта-монитор. Однако
    не следует забывать, что тип шины
    (PCI/VL/ISA/EISA/MCA/NuBus) и, следовательно,
    материнская плата и ее схемная база,
    определяют, насколько быстро данные
    достигнут видеокарты. Усовершенствованный
    графический порт AGP обеспечивает намного
    более высокую пропускную способность,
    чем PCI.

    Оставьте комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *