Главная   Новости   e-Shop   b2b   Infoware   Маркетинг   Компания   Контакты | Guest   Login  

Графические процессоры NVIDIA Quadro против GeForce

Часть 1 Часть 2

Введение

Все знают, что NVIDIA делает хорошие графические процессоры, но не все знают, что она делает два семейства таких процессоров. Одно из них — потребительские NVIDIA® GeForce™, другое — профессиональные NVIDIA Quadro®.

Этот технический бриф раскрывает различные аспекты и ключевые особенности обоих семейств. Также, он содержит информацию о трех типах драйверов POWERdraft, MAXtreme и QuadroView.

Обзор линейки профессиональных графических процессоров NVIDIA Quadro®

Профессиональные графические процессоры NVIDIA (workstation-class GPUs) определяют стандарт в индустрии 3D. Чтобы точно соответствовать требованиям своих пользователей NVIDIA предлагает специализированные аппаратные решения.

Таблица 1 отображает общую структуру модельного ряда профессиональных продуктов NVIDIA.

Таблица 1. Свойства профессиональных графических процессоров

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

Ключевые особенности

Антиалиасинг точек и отрезков

Многие профессиональные приложения, в основном САПР, предлагают специальный режим отображения, называемый "wireframe". В этом режиме объекты отображаются только своими вершинами и грянями. В таком виде особенно заметны несглаженные ступеньки отрезков и точек.

На рисунке 1 показан пример такого режима отображения с выключенным сглаживанием и с включенным.

Рисунок 1

Графические процессоры NVIDIA Quadro поддерживают аппаратный антиалиасинг. Это позволяет просматривать сложные сцены со сглаживанием без потери производительности.

The performance advantage of the NVIDIA Quadro GPUs is clear—improved performance when using applications that take advantage of antialiased points and lines. This lets professionals work with improved visual quality and not sacrifice performance and interactivity. For a CAD designer working in wireframe—which is a significant amount of a user workflow—high-quality lines make the difference between a successful design and an exercise in frustration. The increase in productivity afforded by the quality and performance of antialiased lines is a clear advantage of NVIDIA Quadro workstation GPUs.

Логические операции

Другим аппаратным отличием между профессиональными графическими процессорами и их гражданскими собратиями есть аппаратная поддержка логических операций (Logic Operations) OpenGL. Логические операции выполняются на последнем этапе конвеера визуализации и применяются к входящим фрагментам. Именно они определяют будет ли записан, и каким образом, входящий фрагмент в буффер кадров.

Рисунок 2. Конвеер OpenGL

Логические операции часто применяются в специализированных приложениях САПР (MCAD) и системах создания цифрового контента (DCC) для рисования специальной информации поверх трехмерной сцены без изменения логики ее формирования.

Пример использования логических операций в 3D CAD приложении

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

Рисунок 3

Пример использования логических операций в DCC приложении

Логическая операция XOR используется для рисования курсора поверх изображения трехмерной сцены, даже в приложениях, которые не поддерживают перекрывающихся слоев. При использовании логической операции XOR падение производительности графического процессора Quadro ничтожно мало по сравнению с процессором GeForce.

Перекрывающиеся регионы

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

На рисунке 4 изображено окно специализированного приложения, в котором сцена перекрыта вспомогательными всплывающими окнами.

Рисунок 4

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

Большинство гражданских приложений и игр не отображают большое количество всплывающих окон. Семейство процессоров GeForce аппаратно поддерживают только один перекрывающийся регион, в то время как процессоры Quadro аппаратно поддерживают восемь таких регионов.

Аппаратно поддерживаемые разрезы сцены (clip planes)

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

Оптимизированное управление памятью

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

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

Нормальная потребность в памяти

Архитектура графических процессоров NVIDIA использует общий пул специальной высокоскоростной графической памяти. Эта архитектура называется Unified Memory Architecture (UMA). UMA хранит различные графические данные, такие как кадровый буфер, текстуры, информация о цветах и др. Конкурентные модели графических процессоров, например 3D Labs’ Wildcat II использует раздельные области памяти для хранения буфера кадров, текстур и других графических ресурсов. Емкость хранилища каждого типа ресурсов ограничивает количество хранимыв в них ресурсов. Архитектура UMA позволяет графическим процессорам NVIDIA более экономно и эфективно использовать апаратные ресурсы. Например, если разрешение экрана мнеьше чем максимальное возможное, неиспользуемая часть буфера кадров используется для хранения текстур или других графических ресурсов.

Высокая потребность в памяти

В некоторых случаях приложение требует больше памяти, например, для визуализации сцены в стерео-режиме. Четырех-уровневая буферизация сцены в стерео-режиме (Quad-Buffered Stereo) просто космически увеличивает потребность системы в памяти. Если система использует раздельные хранилища графических ресурсов, и ей необходимо разместить в памяти текстуры объемом 36МБ, то хранилища объемом 32МБ недостаточно, а при использовании хранилища с объемом 64МБ часть памяти будет не использована. Графические процессоры NVIDIA Quadro, используя архитектуру UMA, эффективно используют память и в случае нормальной ее потребности, и при значительном увеличении требовании к ее количеству.

Двухстороннее освещение

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

Компоненты освещения

Цвет каждой вершины определяется тремя компонентами освещения:

Ambient
Эмбиэнтное освещение не зависит от угла, под которым объект находится к источнику света или к наблюдателю.
Например:
Объект в облачную погоду равномерно освещен со всех сторон.
Diffuse
Диффузное освещение зависит от того, как объект расположен по отношению к источнику света, но не зависит от расположения наблюдателя.
Например:
Солнце находится за наблюдателем. Объект перед наблюдателем будет освещен по разному. Плоскости объекта, расположенные перпендикулярно лучам солнца, будут яркими и иметь свой настоящий цвет, а плоскости, расположенные паралельно лучам - почти черные.
Specular
Отраженный свет освещает объект зависимо от его расположения по отношению к источнику света и к наблюдателю.
Например:
Блик на лобовом стекле машины. При движении солнца или наблюдателя позиция блика меняется.
Результат

Моделирование трех типов освещения дают поразительный эффект реалистичности компьютерной графики. Для повышения реализма сцены, каждый тип освещения имеет относительный вес при объединении. По-умолчанию для OpenGL вес эмбиэнтного освещения составляет 20%, а дифузного и отраженного - по 100%. Такое объединение иногда приводит к неожиданным визуальным отклонениям.

Визуальный дефект

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

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

Как результат - часть объекта во время вращения исчезает или становится очень затемненной.

Решение

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

Именно в этой ситуации возникает проблема с расчетом освещенности.

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

На рисунке 7 продемонстрирована сцена с выключенным двухсторонним освещением и с включенным.

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

Рисунок 7

Графические процессоры NVIDIA Quadro поддерживают двухстороннее освещение аппаратно.

Копирайт
© 1999-2008 Nebesa. All rights reserved. Пишите нам по адресу info@nebesa.com или отправьте сообщение