Евразийский
научный
журнал

Визуализация больших объемов информации удаленно на портативных устройствах

Поделитесь статьей с друзьями:
Автор(ы): Балашова Мария Валерьевна
Рубрика: Технические науки
Журнал: «Евразийский Научный Журнал №1 2017»  (январь, 2017)
Количество просмотров статьи: 1414
Показать PDF версию Визуализация больших объемов информации удаленно на портативных устройствах

Балашова Мария Валерьевна
Магистрант МТУ(МГУПИ),
Россия, г. Москва
E-mail: marionetka_mary@bk.ru

Визуализация больших объемов информации удаленно на портативных устройствах

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

Введение

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

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

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

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

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

Удаленная визуализация

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

topvrstk_2.png

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

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

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

topvrstk_3.png

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

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

В таблице 1 представлены варианты размещения различных этапов удаленной визуализации на серверной или клиентской стороне.

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

Виды удаленной визуализации Таблица 1
Операция Чистая Смешанная Обработка Хранение
удаленная удаленная данных на данных на
визуализация визуализация сервере сервере
Отображение клиент клиент клиент клиент
Рендеринг сервер клиент клиент клиент
Пре-рендеринг сервер сервер клиент клиент
Обработка сервер сервер сервер клиент
данных
Хранилище сервер сервер сервер сервер
данных

К достоинствам данного подхода можно отнести:

1. низкие требования к производительности клиентского устройства;

2. возможность гибкого применения алгоритмов сжатия полученных изображений/видео потока, включая алгоритмы с потерей данных;

3. возможность использования браузера в качестве клиентского ПО;

4. редко требует установки дополнительного программного обеспечения.

С другой стороны, основным недостатком такого подхода являются высокие требования к качеству Интернет-соединения для передачи видеопотока. Интерактивное взаимодействие с удаленной системой, реализуемое посредством постоянной передачи видеопотока (особенно в высоком разрешении) требует малых значений времени ожидания пакетов, высокой скорости обмена и высокой надежности связи между клиентской и серверной машиной.

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

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

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

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

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

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

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

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

Однако надо отметить, что подход обладает следующими недостатками:

1. необходимость предустановленного на клиентской машине дополнительного программного обеспечения;

2. необходимость высокопроизводительного оборудования на клиентской стороне;

3. необходимость наличия высокоскоростного интернет соединения, для передачи больших объемов «сырых» данных.

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

Платформы и сервисы удаленной визуализации

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

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

В данной работе, в качестве примера и обзора рассмотрим одну из них.

Платформа удаленной визуализации NICE DCV — это инструмент для создания систем удаленной трехмерной и двумерной визуализации, основанных на предоставлении удаленного доступа к специально сгенерированным виртуальным машинам, обеспечивающим удаленный запуск и работу с приложениями визуализации. Данная платформа базируется на механизме виртуальных машин, что обеспечивает хорошую масштабируемость. Системы, реализованные на базе NICE DCV не зависят от платформы, и могут работать со смешанными сессиями (Windows, Linux) на одном узле в рамках разных виртуальных машин.

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

Платформа NICE DCV предоставляет набор компонент, таких как DCV OpenGL Library, для обеспечения взаимодействия приложения удаленной визуализации и графического процессора, DCV Protocol, для связи между клиентским устройством и графическим ядром серверного приложения, и др. Также стоит отметить, что платформа NICE DCV предоставляет возможность реализовывать системы удаленной визуализации с использованием различных подходов (например, чистая или смешанная удаленная визуализация).

Заключение

В представленной работе нами были проанализированы различные протоколы и платформы удаленной визуализации данных. Анализ протоколов удаленной визуализации показал, что одной из наиболее эффективных на сегодняшний день технологий удаленной визуализации является технологий HDX, разработанный компанией Citrix. Он обеспечивает возможность эффективного использования ресурсов удаленных вычислительных машин в режиме «удаленного рабочего стола», независимо от платформы клиента и метода его соединения с сетью. Также, нами были рассмотрена платформа удаленной визуализации. Коммерческая платформа NICE DCV предоставляет готовое решение, поддерживающее большую степень настройки под требования конечного пользователя. Таким образом, разработка системы предоставления готовых виртуальных машин, предварительно настроенных на решение задачи удаленной визуализации результатов пользовательских расчетов на основе существующих прикладных пакетов визуализации данных можно считать перспективным направлением исследований.

Список использованных источников

  1. Aumüller, M. Remote Hybrid Rendering of Exascale Data for Immersive Virtual Envi-ronments // EASC — April 2013. URL: http://www.easc2013.org.uk/sites/default/files/Pdfs/ParallelSession3a/Martin_Aumueller_-_Remote_Hybr...
  2. Brooker, D. Essential CG Lighting Techniques with 3ds Max / D. Brooker // Focal Press: Elsevier Inc. — 2008.
  3. Evans A., Romeo M., Bahrehmand A. 3D graphics on the web: A survey // Computers & Graphics. 2014. Vol. 41
  4. White paper of Citrix HDX. URL: https://www.citrix.ru/con-tent/dam/citrix/en_us/documents/products-solutions/citrix-hdx-technologies...