Раздел II. Математические модели и методы
УДК 004.93
Е.А. Башков, С.А. Зори
ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ РЕАЛИЗАЦИИ СИНТЕЗА ИЗОБРАЖЕНИЙ РЕЛЬЕФОВ АЛГОРИТМОМ ROAM НА ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ
Рассматривается актуальная задача синтеза реалистичных изображений рельефов и ландшафтов, основные алгоритмы для ее реализации и исследуется эффективность синтеза изображений рельефов алгоритмом ROAM в реальном времени на популярных современных архитектурах специализированных параллельных вычислительных систем. Проведено исследование эффективности реализации алгоритма на параллельном GPU-мультипроцессоре в составе современных видеокарт ПК с использованием технологии CUDA и кластерной архитектуре NeClus с использованием технологии MPI, получены показатели процесса синтеза. Показано, что ввиду отсутствия поддержки технологией CUDA рекурсивных вычислений и динамических древовидных структур использование CUDA для реализации ROAM является неэффективным, а использование вычислительного кластера и MPI для организации параллельных вычислений - эффективным, позволяющим удовлетворить требования реального времени.
Реалистичная визуализация; рельеф; алгоритм; синтез; параллельные вычисления; графический мультипроцессор; CUDA; кластер; NeClus.
E.A. Bashkov, S.A. Zori
RESEARCH OF EFFICIENCY OF REALIZATION OF THE IMAGE
SYNTHESIS OF RELIEFS BY ALGORITHM ROAM ON PARALLEL COMPUTING SYSTEMS
In article is researched the actual problem of relief and landscapes image-synthesis, the basic algorithms for its realization is considered and efficiency of real time relief image-synthesis by algorithm ROAM for popular modern specialized parallel computing systems is researched. It is carried out research of efficiency of ROAM- realization on the modern videocards parallel GPU with use of CUDA- technology and cluster architecture NeClus with use of MPI- technology, and some parameters ofprocess of synthesis are received. It is shown, that in view of absence of support by CUDA- technology of recursive calculations and dynamic trees structures the ROAM-realization use CUDA is inefficient, and use computing cluster and MPI for the organization of parallel calculations for ROAM is effective, and allowing real time relief and landscapes image-synthesis.
Realistic visualization; relief; algorithm; image-synthesis; parallel calculations; GPU- multiprocessor; CUDA; cluster; NeClus.
Введение. Потребности в технологиях визуализации ландшафтов и рельефов в реальном времени возникают в различных сферах деятельности человека, в первую очередь - как часть задач, решаемых системами виртуальной и дополненной реальности, а также географическими информационными системами, предоставляющими возможности для сбора, хранения, анализа и графической визуализации географических данных.
С ростом количества обрабатываемых данных и пространственного разрешения данных растет и сложность построения сцены, и, как следствие, происходит уменьшение производительности алгоритмов синтеза.
Одними из главных направлений современных алгоритмов синтеза изображений рельефов и ландшафтов сегодня является использование иррегулярных сетей треугольников (Shroeder, Rossignac, Borrel и др. [1, 2]), методов с ограниченной адаптивностью (Willem H. de Boer, Losasso и Hoppe [3, 4]) и иерархической триангуляции на основе квадродеревьев и бинарных деревьев треугольников (Duchaineau и Ulrich, [5, 6]). При этом наибольшую эффективность при визуализации статического и динамического рельефа показали методы, использующие иерархическую триангуляцию на основе квадродеревьев и бинарных деревьев треугольников, а также новые адаптивные кластерные подходы к ним, самым известным из которых является алгоритм ROAM [5].
Ввиду высокой вычислительной сложности задач и их высокой зависимости от пространственного разрешениях сеток геоданных, современные системы визуализации объектов этого класса должны максимально полно использовать производительность оборудования.
Целью работы является определение возможности и эффективности синтеза изображений рельефов и ландшафтов алгоритмом ROAM в реальном времени с использованием специализированных параллельных вычислительных систем.
Синтез изображений рельефов алгоритмом ROAM. Алгоритм ROAM фактически является модификацией классического алгоритма бинарных деревьев треугольников и основан на бинарном дереве, которое является специальным случаем итеративной бисекции основания треугольника по базовой вершине. В процессе детализации пара треугольников разбивается по общей базовой вершине, находящейся на смежных основаниях (рис. 1).
Рис. 1. Иллюстрация метода ROAM
Выполнены программная реализация алгоритма ROAM и исследованы его характеристики (время загрузки карты, зависимость производительности от количества выводимых треугольников) на ПК с 4-ядерным процессором. Полученные зависимости приведены на рис. 2. Исследования показали, что увеличение количества работающих ядер заметно ускоряет производительность алгоритма, и свидетельствует о возможности его эффективного распараллеливания.
Распараллеливание алгоритма возможно также за счет разбиения загружаемой карты высот на блоки с последующей параллельной обработкой блоков. В связи с этим исследовались характеристики параллельной реализации алгоритма ROAM на графических видеоадаптерах с технологией GPGPU и мультипроцессорных кластерных системах [7].
90 -SO -
(Л
2: 70 -
60 -
>*
cu 50
25000 полигонов
> 50000 пол и го мов
75000 полигонов
lOOOOO полигонов
125000 полигонов
|г |Л 20 ■■■■■■■■
° ■I II II II
12 3 4
Количество работающих ядер, шт
Рис. 2. Зависимость FPS от количества ядер и сценарных полигонов
Синтез изображений рельефов и ландшафтов алгоритмом ROAM с использованием параллельных платформ графических процессоров. Разработана программная реализация и проведены исследования временных характеристик алгоритма ROAM, реализованного с помощью технологии CUDA. Оценивалось полное время выполнения алгоритма, время загрузки и выгрузки данных (рис. 3).
Рис. 3. Программное моделирование ROAM на CUDA
Анализ результатов показал, что ввиду отсутствия поддержки технологией CUDA рекурсивных вычислений и динамических древовидных структур в памяти GPU, использование CUDA является неэффективным, а в некоторых случаях и негативным в связи с необходимостью многократной загрузки-выгрузки данных из оперативной памяти процессора в память видеокарты (рис. 4).
Таким образом, эффективная реализация ROAM с использованием параллельной архитектуры графического мультипроцессора видеокарты ПК невозможна.
Время выполнения вычислительной части функций: GPU в 4—5 раз быстрее
Общее время выполнения функций с учетом времени загрузки/выгрузки данных: CPU в 24раза быстрее
Рис. 4. Реализация ROAM на CUD A
Синтез изображений рельефов методом ROAM на параллельной кластерной вычислительной системе. Создана программная параллельная реализация основных частей алгоритма ROAM с использованием MPI и кластера NeClus ДонНТУ. При этом алгоритм ROAM перенесен на параллельную архитектуру вычислительного кластера NeClus путем (рис. 5):
а) разбиения карты высот на части (патчи);
б) параллельной обработки патчей на вычислительных узлах кластера:
Рис. 5. Реализация ROAM на кластере NeClus
Результаты численных экспериментов показали, что использование МРІ для организации параллельных вычислений на кластере является эффективным. Увеличение количества используемых узлов кластера приводит к увеличению производительности алгоритма (рис. 6) время синтеза на уменьшается на 85-90 % с каждым двукратным увеличением числа узлов, и появляется возможность синтеза рельефов в реальном времени.
U 2x 4л 8к 1ёд 32» 64*
Количество узлов, ІШ
Рис. 6. Характеристики реализации ROAM на кластере NeClus
Выводы. Для решения задачи реалистичной визуализации рельефов предложено использовать алгоритм ROAM. Проведено исследование эффективности реализации алгоритма на параллельных архитектурах вычислительных систем - параллельного GPU-мультипроцессора в составе современных видеокарт ПК (технология CUDA) и кластерной архитектуры NeClus (технология MPI), получены временные характеристики процесса синтеза. Показано, что ввиду отсутствия поддержки технологией CUDA рекурсивных вычислений и динамических древовидных структур использование CUDA для реализации ROAM является неэффективным, а использование MPI для организации параллельных вычислений на вычислительном кластере является эффективным и позволяет удовлетворить требования реального времени.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Decimation of triangle meshes / W.J. Schroeder, J.A. Zarge, and W.E. Lorensen. - SIGGRAPH ’92 Proc.: Computer Graphics, July, 1992. - 26(2). - Р. 65-70.
2. Jarek Rossignac and Paul Borrel. Multi-resolution 3D approximations for rendering complex scenes. In B. Falcidieno and T. Kunii, editors, Modeling in Computer Graphics: Methods and Applications. - 1993. - Р. 455-465.
3. Willem H. de Boer. Fast Terrain Rendering Using Geometrical MipMapping / Willem H. de Boer // E-mersion Project. - October, 2000.
4. View-dependent re nement of progressive meshes / Hugues Hoppe. - In SIGGRAPH '97 Proceedings: 1997.
5. Duchaineau M. ROAMing terrain: Realtime optimally adapting meshes / M. Duchaineau, M. Wolinsky, D.E. Sigeti, M.C. Miller, C. Aldrich, M.B. Mineev-Weinstein // In Proceedings IEEE Visualization. - 1997. - Р. 81-88.
6. Rendering massive terrains using chunked level of detail / Ulrich T. - In: Super-size-it! Scaling up toMassive VirtualWorlds (ACM SIGGRAPH Tutorial Notes). ACM SIGGRAPH, 2000.
7. Зори С.А., Лисеенко В.В. Методы синтеза реалистичных изображений рельефов и ландшафтов для параллельных вычислительных систем трехмерной компьютерной графики // Моделювання та комп’ютерна графіка : Матеріали 4-ї міжнародної науково-технічної конференції. м. Донецьк , 5-8 жовтня 2011 р. - Донецьк: ДонНТУ. Міністерство освіти та науки, молоді та спорту України, 2011. - С. 114-118.
Статью рекомендовал к опубликованию д.т.н., профессор А.В. Боженюк.
Башков Евгений Александрович - Донецкий национальный технический университет; e-mail: [email protected]; Украина, 83000, г. Донецк, Артема, 58; тел.: 810380622901027; д.т.н.; профессор; проректор по научной работе; зав. кафедрой прикладной математики и информатики
Зори Сергей Анатольевич - e-mail: [email protected]; к.т.н.; доцент кафедры прикладной математики и информатики.
Bashkov Evgen Alexandrovich - Donetsk National Technical University; e-mail:
[email protected]; 58, Artyoma, Donetsk, 83000, Ukraine; phone:
810380622901027; dr. of eng. sc.; professor; head the department of applied mathematics & computer science.
Zori Sergey Anatol’evich - e-mail: zori@pmi/dgtu.donetsk.ua; cand. of eng. sc.; associate professor the department of applied mathematics & computer science.
УДК 004.946
Е.А. Башков, В.С. Бабков
СРЕДСТВА ИНТЕРАКТИВНОГО ВЗАИМОДЕЙСТВИЯ РЕАЛЬНОГО И ВИРТУАЛЬНОГО ПРОСТРАНСТВ НА ОСНОВЕ ТРЕХМЕРНОГО СКАНИРОВАНИЯ ОБЪЕКТОВ С ИСПОЛЬЗОВАНИЕМ ПЛАТФОРМЫ
MICROSOFT KINECT
Описана параллельная реализация итерационного метода поиска ближайших точек. Данный метод применяется для сопоставления моделей, представляющих собой результат трехмерного сканирования с использованием платформы Microsoft Kinect. Сопоставление моделей - это один из этапов при объединении объектов виртуальной и дополненной реальностей. Практическое применение данной технологии - создание интерактивных, реалистичных тренажерных систем. Предложенная параллельная реализация метода отличается от существующих использованием в качестве платформы для реализации - графического процессора и распараллеливанием расчета корреляционной матрицы с целью минимизации объема данных, передаваемых между вычислительными процессами. Для предложенной реализации выполнена экспериментальная проверка на типовых тестовых моделях и получено ускорение порядка 40 % по сравнению с последовательной реализацией.
Дополненная реальность; Sd-сканирование; Microsoft kinect; метод ближайших точек; CUDA.
Y.A. Bashkov, V.S. Babkov
TOOLS FOR INTERACTION OF REAL AND VIRTUAL SPACES ON THE BASIS OF THREE-DIMENSIONAL OBJECTS USING MICROSOFT KINECT AS A SCANNING PLATFORM
The article describes the parallel implementation of the iterative method for nearest points. This method is used to compare the models, which are the result of three-dimensional scanning using the platform Microsoft Kinect. Comparison of models — it is one of the stages combine objects virtual and augmented realities. The practical application of this technology - the creation of interactive, realistic training systems. Parallel implementation of the proposed method is different from the existing use as a platform for the implementation — the GPU and parallelizing the calculation of the correlation matrix in order to minimize the amount of data transmitted between computing processes. For the implementation of the proposed experimental test performed on standard test models, and has accelerated about 40 % compared to the sequential implementation.
Augmented reality; 3d-scanning; microsoft kinect; closest points approach; CUDA.
Введение. Технологии виртуальной и дополненной реальности с каждым днем все сильнее интегрируются в современную жизнь человека. Для представления объектов в виртуальной и дополненной реальности используется трехмерное сканирование - наиболее совершенный метод получения образа объекта реального мира на сегодняшний день.