7 - 2002

Масштабируемая визуализация от Hewlett-Packard

Дмитрий Красковский

Введение и анализ ситуации

Масштабируемая визуализация от HP

Технология масштабируемой визуализации HP

Архитектура масштабируемой визуализации HP

Сумматор изображений

Масштабируемая визуализация с точки зрения HP

Введение и анализ ситуации

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

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

В начало В начало

Масштабируемая визуализация от HP

Компания HP является признанным лидером в области проектирования, производства и поддержки масштабируемых компьютерных технологий. Революционная архитектура HP visualization center sv6 обеспечивает возможности, значительно превышающие существующие по всем ключевым параметрам: по качеству изображения, по производительности и по масштабируемости. Пользователь выбирает желаемое качество изображения, необходимый уровень производительности, размер и разрешение дисплея — и получает готовую систему для визуализации проектов во всех трех плоскостях. Оптимальная комбинация ресурсов для получения необходимых результатов может состоять из практически неограниченного числа графических потоков (pipes). Конвейеры обработки этих потоков (pipelines) также можно реконфигурировать на ходу таким образом, чтобы повысить производительность интерактивных визуализаций, а затем, когда возникнет необходимость подробно рассмотреть какой-то определенный ракурс, можно будет задать максимальный уровень качества изображения.

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

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

Изобретенная компанией HP технология масштабируемой визуализации прекрасно демонстрирует лучшие возможности более ранних продуктов фирмы HP — системы HP visualize center и графического адаптера HP fx10 pro, одновременно приумножая и совершенствуя их положительные качества. Благодаря использованию стандартных систем (системных блоков и графики) пользователь может значительно экономить средства как на этапе первоначального расширения парка своей техники, так и в дальнейшем, по мере совершенствования технологий, используемых в рабочих станциях, и графики, а также рентабельно переоснащать этот парк. Помимо этого количество необходимых пользователю конвейеров тоже является крайне гибким параметром системы и может со временем при необходимости увеличиваться. Наконец, в данном продукте сохранено и развито такое свойство HP visualize center, когда немодифицированное приложение в нем имеет прозрачный доступ к буферу кадров большего размера. Более того, HP visualization center sv6 имеет теперь прозрачный доступ к нескольким конвейерам рендеринга.

В начало В начало

Технология масштабируемой визуализации HP

Комплекс HP visualization center sv6 представляет собой группу рабочих станций с графическими акселераторами. Составные части системы соединены между собой высокоскоростной локальной сетью и используют сумматор изображений. Модификации OpenGL и Xserver позволяют приложениям прозрачно распределять рендеринг между системами, а специальный сумматор изображений собирает отрендеренные (обработанные) фрагменты от отдельных систем в единое изображение. Блок-схема на рис. 2 на высоком уровне демонстрирует принцип действия масштабируемой визуализации. Здесь также показано, как связываются между собой компоненты системы для передачи команд рендеринга от приложения к конвейерам и изображений от конвейеров к системе композиции.

Система масштабируемой визуализации состоит из трех основных функциональных компонентов:

  • Главная система (фронтальная мастер-система) — это система, в которой работает приложение; кроме того, обычно это еще и система, которая управляет Xserver’ом и распределяет 3D-рендеринг между несколькими конвейерами. Соединение между мастер-системой и конвейерами рендеринга осуществляется посредством гигабитной локальной сети.
  • Конвейеры 3D-рендеринга. Каждая из этих систем отвечает за рендеринг лишь части видимого кадра, для чего у приложения запрашивается разбиение экранного пространства. Соединение между конвейерами рендеринга и системой композиции осуществляется через цифровой видеоразъем (точно такое же соединение используется и для плоского жидкокристаллического монитора).
  • Система композиции изображения. Этот компонент отвечает за прием от каждого конвейера отрендеренной части кадра, сведение этих потоков в единое экранное изображение и выдачу его пользователю. Соединение между системой композиции и дисплеем осуществляется посредством стандартного аналогового кабеля для монитора или цифрового кабеля для жидкокристаллического дисплея.

HP visualization center sv6 предоставляет пользователю очень гибкую среду для масштабирования. Несколько конвейеров рендеринга могут быть сконфигурированы таким образом, чтобы либо увеличить производительность рендеринга, либо повысить качество изображения посредством сглаживания цветовых переходов в сцене (full scene anti-aliasing). Увеличение производительности рендеринга достигается путем разбиения экранного пространства на несколько фрагментов и соответствующего разделения задач рендеринга, чтобы система композиции затем интегрировала изображение обратно в единое целое. Качество изображения повышается за счет того, что каждый конвейер-рендерер обрабатывает свою совокупность пикселов, а система композиции усредняет результаты. Возможен и другой способ повышения визуального качества изображения. В этом случае каждый конвейер будет рендерить свою часть изображения в режиме supersample (в двукратном разрешении, используя стандартную возможность HP fx10 pro), а система композиции будет понижать разрешение полученных данных при помощи простого фильтра и лишь затем сводить потоки в единое изображение. Наконец, не обязательно всем конвейерам работать в одном и том же режиме. Возможна, например, конфигурация системы из 16 потоков, которая одновременно и увеличивает производительность, и повышает качество изображения. Тогда экран можно разбить на 4 участка и к каждому из них приписать по 4 конвейера, работающих в режиме повышения визуального качества. Система композиции будет одновременно и усреднять результаты, и компоновать изображение.

Таким образом, система может использоваться в трех режимах:

  • Режим акселерации, или режим повышения производительности рендеринга. Каждый рендеринговый конвейер обрабатывает свой фрагмент изображения, определенный на основе алгоритма разбиения экранного пространства. В этом случае система композиции, прежде чем вывести изображение на дисплей, собирает в единое целое различные фрагменты экрана, полученные от каждого из конвейеров.
  • Режим аккумуляции, или режим улучшения качества изображения. Каждый конвейер занимается рендерингом целого экрана с некоторым дрожанием на уровне подпикселов, внесенных в матрицу трансформации каждого из конвейеров. Этот режим позволяет, чтобы на каждый пиксел было сгенерировано по 2, 4, 8 или 16 сэмплов с неоднородным распределением. Система композиции, прежде чем вывести изображение на экран, суммирует пикселы на выходе каждого из конвейеров и усредняет результат.
  • Смешанный режим (одновременная акселерация и аккумуляция). Экран разбивается на несколько фрагментов, и к каждому из них приписывается определенное количество конвейеров (2, 4, 8 или 16). Система композиции, прежде чем вывести изображение на дисплей, одновременно соединяет отдельные фрагменты в единую картинку и суммирует/усредняет пикселы.
  • HP fx10 pro в режиме supersample. В любом из вышеперечисленных режимов графический адаптер HP fx10 pro может использоваться в режиме supersample, который позволяет достичь улучшения качества изображения за счет некоторого понижения производительности. В данном случае в режиме акселерации можно генерировать по 4 сэмпла на пиксел с однородным распределением. В режиме аккумуляции может генерироваться 8, 16, 32 или 64 сэмплов на пиксел фактически с неоднородным распределением.
В начало В начало

Архитектура масштабируемой визуализации HP

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

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

Архитектура масштабируемой визуализации HP состоит из следующих основных блоков:

  • клиентская машина — модуль OpenGL/X-распределения;
  • этап конвейерного рендеринга;
  • композиция изображения.

Модуль распределения отвечает:

  • за взаимодействие с пользователем или приложением для определения текущего режима работы;
  • режим акселерации, сглаживание всей сцены посредством дрожания (смещения подпикселов) или сглаживание всей сцены с помощью HP fx10 pro в режиме supersampling;
  • разбиение экрана;
  • буферизацию OpenGL-команд для их передачи конвейерам рендеринга;
  • дополнение буферизованных данных информацией, необходимой для акселерированного рендеринга;
  • выполнение любого 2D-рендеринга по X-запросу.

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

Конвейеры рендеринга отвечают за обработку буфера команд OpenGL применительно к той части экрана, за которую отвечает данный конвейер. Дополнительная информация, присоединяемая системой распределения к командам рендеринга, используется следующим образом: команды, не затрагивающие ту часть экрана, которая обрабатывается в данный момент, быстро аннулируются. В идеальном случае, когда экран делится на 4 квадрата, каждый конвейер будет рендерить только одну четвертую часть изображения. Поскольку все конвейеры работают параллельно, в результате получается четырехкратное ускорение процесса. На самом деле распределение рендеринговой нагрузки связано с некоторыми накладными расходами, поэтому рендеринг изображения не всегда идеальным образом балансируется между конвейерами при произвольном разбиении экрана. Чтобы частично снять эту проблему, архитектура масштабируемой визуализации позволяет в реальном времени перераспределить рендеринг между конвейерами. Система определяет, какие конвейеры заняты, а какие свободны, и соответствующим образом сдвигает разбиение экрана.

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

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

На рис. 5 показано, как может быть сконфигурирована 16-конвейерная система для работы в смешанном режиме: вместо простой акселерации (разбиения экрана на 16 фрагментов) или простого повышения качества изображения (за счет аккумуляции 16-пиксельных сэмплов) в данном случае экран разбит на 4 фрагмента (для повышения производительности), а конвейеры сконфигурированы для работы в режиме 4-сэмпловой аккумуляции.

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

В начало В начало

Сумматор изображений

Сумматор изображений — это аппаратный компонент, специально разработанный для HP visualization center sv6. Он представляет собой монтируемый в стойку корпус с 14 слотами. В эти слоты можно вставить карты трех типов: контроллер, карты ввода и карты вывода.

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

Карта ввода имеет контакты для двух видеопотоков. В системе масштабируемой визуализации один вход используется для 2D-потока, а второй — для 3D. Для других 3D-потоков используется некоторое количество дополнительных входных карт. Вообще, карты ввода отвечают за прием цифровых видеопотоков, за понижение разрешения полученных данных (в режиме supersample anti-aliasing) и за вставку данных в нужное место внешнего буфера кадров (во всех режимах) одновременно с суммированием данных с содержимым исходного буфера кадров (в режиме сглаживания сцены с дрожанием). Буфер кадров затем посылается на следующую входную карту, где в него, в свою очередь, вставляются следующие данные. Заключительная стадия этого процесса — усреднение данных для 2D-канала (деление на количество входных 3D-потоков — только в режиме аккумуляции), наложение на них данных потока 2D-рендеринга и маскирование не-3D-данных с предыдущих входных карт.

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

На рис. 7 изображены карты, входящие в систему HP visualization center sv6, и помечены их разъемы.

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

HP visualization center sv6 поддерживает как одноэкранные, так и многоэкранные конфигурации. В случае многоэкранной конфигурации параллельно используется несколько систем композиции, каждая из которых управляет одним экраном. В некоторых сложных конфигурациях возможно также последовательное использование систем композиции, когда каждая из них принимает выход с одной системы и передает его на вход другой. Поскольку при этом происходит задержка кадра, полезно иметь на каждый дисплей потоков больше, чем позволяет пространство, предусмотренное в системе композиции изображений.

На рис. 9 показан пример конфигурации системы композиции для 8 потоков и одного дисплея.

На рис. 10 приведена конфигурация конвейеров/дисплея, соответствующая системе композиции, изображенной на рис. 9. Здесь также показано, как в многоэкранной конфигурации параллельно используются три системы композиции.

В начало В начало

Масштабируемая визуализация с точки зрения HP

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

Отдел вычислительной техники компании Hewlett-Packard стремится удовлетворить потребности заказчиков, применяя новейшие подходы. В будущем клиенты смогут получать доступ к вычислительным и визуализационным ресурсам по запросу, из любой точки планеты и с устройства любого класса. Пользователи смогут подключаться к огромным визуализационным и вычислительным мощностям — от карманных устройств и настольных компьютеров и до крупномасштабных визуализационных форумов.

Архитектура масштабируемой визуализации HP — основа такого видения проблемы. Сегодня система HP visualization center sv6 значительно расширяет возможности современной индустрии в ключевых областях — повышении качества продукции, производительности и масштабируемости:

  • Качество изображения. Конвейеры рендеринга можно специально подобрать таким образом, чтобы достичь небывалого качества изображения. На каждый пиксел может вычисляться до 64 независимых сэмплов, которые затем накладываются друг на друга, и в результате получается изображение очень высокого качества. Это позволяет пользователям демонстрировать мельчайшие детали и грани поверхностей с полной достоверностью изображения, устраняя при этом зазубрины и другие помехи, традиционно присущие компьютерной графике.
  • Производительность. Каждый конвейер в параллельном режиме выполняет рендеринг отдельного сегмента изображения, что реально поднимает производительность приложения на невиданный уровень.
  • Масштабируемость и гибкость. Конвейеры можно на ходу конфигурировать таким образом, чтобы повышать либо их производительность, либо качество изображения, то есть система может масштабироваться в зависимости от требований задачи. Гибкая мультипользовательская архитектура позволяет максимизировать вычислительные и визуализационные ресурсы в организации. Каждый узел рендеринга добавляет к локальной сети еще одну полнофункциональную двухпроцессорную рабочую станцию HP j6000. В те моменты времени, когда она не будет занята в сеансе интерактивной визуализации в реальном времени, каждая рабочая станция как отдельный строительный блок системы может выполнять другие вычислительные функции общего назначения, такие как рендеринг или иные трудоемкие задачи.

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

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

«САПР и графика» 7'2002