Петров Д.В., Михелев В.М., Васильев П.В. Применение GPU-вычислений для построения и визуализации воксельных геомоделей // Научный результат. Информационные технологии. - Т.3, №3,2018
КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ COMPUTER SIMULATION HISTORY
УДК 681.3.06:539.51
Петров Д.В.1 Михелев В.М.2 Васильев П.В.1
DOI: 10.18413/2518-1092-2018-3-3-0-1
ПРИМЕНЕНИЕ GPU-ВЫЧИСЛЕНИЙ ДЛЯ ПОСТРОЕНИЯ И ВИЗУАЛИЗАЦИИ ВОКСЕЛЬНЫХ ГЕОМОДЕЛЕЙ
1)1 Белгородский государственный национальный исследовательский университет, ул. Победы д. 85,
г. Белгород, 308015, Россия 2) Белгородский государственный технологический университет им. В.Г. Шухова, ул. Костюкова д. 46,
г. Белгород, 308012, Россия
e-mail: [email protected], [email protected], [email protected]
Аннотация
В геоинформационных системах недропользования применяется широкий комплекс вычислительных методов создания полигональных и воксельных моделей, включающий методы геостатистики, триангуляции, интерполяции и оптимизации границ извлечения запасов. Для решения горных задач требуется построение детальных блочных или воксельных моделей, обеспечивающих оперативное планирование дискретных объёмов выемки горных пород. В статье показаны возможности реализации GPU-ускорения для выполнения параллельных вычислений по вокселизации поверхностей раздела сред и объёмных геологических тел с применением технологии программирования CUDA и OpenCL. В системе Gexoblock используется библиотека NVIDIA по вокселизации на основе параллельных вычислений по технологии CUDA gvdb-voxels. Предложенный гибридный подход включает методы распараллеливания триангуляции, интерполяции и оптимизации последовательности этапов выемки сырья при поиске наилучшей стратегии извлечения рудных запасов.
Ключевые слова: параллельные вычисления на GPU; интерполяция; тетраэдрализация; диаграмма Вороного; вокселизация; октодерево.
UDC 681.3.06:539.51
Petrov D.V. Mikhelev V.M. Vassiliev P.V.
APPLICATION OF GPU-CALCULATIONS FOR CONSTRUCTION AND VISUALIZATION OF VOXEL GEOMODELS
Belgorod State National Research University, 85 Pobedy St., Belgorod, 308015, Russia
2) Belgorod State Technological University named after V.G. Shukhov, 46 Kostyukova St.,Belgorod, 308012, Russia
e-mail: [email protected], [email protected], [email protected]
Аbstract
In Geoinformation Systems for Mining a wide range of computational methods for creating polygonal and voxel models, including methods of geostatistics, triangulation, interpolation and optimization of resource extraction boundaries, are used. For the solution of the mining task requires the construction of detailed voxel or block models for operational planning of discrete volumes for rocks under excavation. The article shows the possibilities of implementing GPU acceleration to perform parallel calculations on voxelization of the surfaces of the media and volume geological bodies with the use of CUDA and OpenCL programming technology. In the
Петров Д.В., Михелев В.М., Васильев П.В. Применение GPU-вычислений для построения и визуализации воксельных геомоделей // Научный результат. Информационные технологии. - Т.3, №3,2018
Gexoblock system the library NVIDIA voxelization based on parallel computing technology CUDA gvdb-voxels is used. The proposed hybrid approach includes methods for parallelizing triangulation, interpolation, and optimization of the sequence of extraction steps in the search for the best extraction strategy for ore reserves.
Keywords: parallel computing; interpolation; tetrahedralization; Voronoi diagram; voxelization; sparse octree.
В GIS недропользования применяется широкий комплекс вычислительных методов создания полигональных и воксельных моделей, включающий методы геостатистики, триангуляции, интерполяции и оптимизации границ извлечения запасов. Для решения горно-геологических задач требуется построение детальных блочных или воксельных моделей, обеспечивающих оперативное планирование дискретных объёмов выемки горных пород. В работе показаны возможности реализации GPU-ускорения для выполнения параллельных вычислений по вокселизации поверхностей раздела сред и объёмных геологических тел с применением технологии программирования CUDA и OpenCL.
В программной системе Gexoblock задействованы средства библиотеки NVIDIA gvdb-voxels для вокселизации на основе параллельных вычислений по технологии CUDA. При выполнении наиболее трудоёмких операций создания сеточных, каркасных и блочных моделей на основе алгоритмов триангуляции и интерполяции параллельные вычисления обеспечивают значительное ускорение расчетов. В частности, ранее были предложены методы GPU вычислений по технологии CUDA для 3D триангуляции и интерполяции по методу кригинга [2, 4].
На рис. 1 представлена общая схема основных моделей и методов оценки извлекаемых запасов руды и металла в системе рационального недропользования.
Системный анализ данной технологии выявил возможность сократить необходимый набор операций при заданной целевой функции подсчета запасов за счет исключения ряда методов, используемых преимущество для графического представления полигональных моделей и высококачественной визуализации объёмных тел на промежуточных этапах вычислений.
Главная особенность эксплуатационной модели недропользования в отличие от других имитационных, скалярных или картографических геоинформационных моделей, состоит в её обусловленности технологией порционного, дискретного извлечения элементов. Именно блочное или воксельное представление подземных геоструктур, рудных тел, соответствует последовательному или многопоточному извлечению сырья из недр в единицах селективной выемки, в сменных, суточных, месячных или годовых объёмах. В этой связи наиболее целесообразной стратегией моделирования является цепь операций, в которой по массиву исходных точек непосредственно строится вначале блочная модель, затем выполняется вокселизация [1, 6] с построением структуры октодерева (SVO), и далее выполняется оптимизация конечной оболочки открытой разработки для подсчета величины извлекаемых запасов минерального сырья [9, 10].
Исходя из этого в работе [5] было предложено использовать параллельные вычисления на GPU для интерполяции Сибсона при построении блочных моделей. Реализован вариант вокселизации по исходным рассеянным геоданным с построением гигаблочной модели по методу естественных соседей NNI без промежуточного построения диаграммы Вороного. В настоящей работе кроме реализации GPU-ускорения дискретного метода DNNI с применением технологии программирования CUDA и OpenCL выполнена также оптимизация предельной оболочки карьера, построенного на гигавоксельной [3, 8] модели.
Петров Д.В., Михелев В.М., Васильев П.В. Применение GPU-вычислений для построения и визуализации воксельных геомоделей // Научный результат. Информационные технологии. - Т.3, №3, 2018
Рис. 1. Общая схема основных моделей и методов оценки извлекаемых запасов руды Fig. 1. General scheme of the basic models and evaluation methods recoverable ore
На рис. 2 показаны результаты тестирования при проведении расчетов на стандартной базе геоданных точек месторождения ABC.
Петров Д.В., Михелев В.М., Васильев П.В. Применение GPU-вычислений для построения и визуализации воксельных геомоделей // Научный результат. Информационные технологии. - Т.3, №3, 2018
Рис. 2. Результаты тестирования при проведении расчетов на стандартной базе геоданных точек
месторождения ABC
Fig. 2. Results of testing during calculations on the standard geodatabase of the ABC field points
Верхняя кривая 1 показывает производительность без GPU-ускорения, кривая 2 - CUDA -вычисления триангуляции, кривая 3 - OpenCL-интерполяция по методу Сибсона, кривая 4 -OpenCL оптимизация оболочки выемки по методу максимизации псевдопотоков.
В предложенный гибридный подход к моделированию геостуктур на основе CPU/GPU вычислений были включены методы выбора оптимальной и наиболее эффективной последовательности этапов извлечения запасов рудного сырья за счет распараллеливания методов триангуляции, интерполяции и оптимизации границ ведения открытой разработки.
При проектировании системы Gexoblock для хранения блоков с вещественными атрибутами предложено использовать СУБД SQLite с таблицами геомоделей, в которых данные представлены в виде структуры октодерева.
Для выполнения операций вокселизации на GPU использована библиотека NVIDIA gvdb-voxels [7] с процедурами на основепараллельных вычислений по технологиям CUDA/OpenCL. При визуализации конечных результатов выполняется построение изоповерхности g=f(x,y,z) с помощью распараллеленного алгоритма Marching Cubes, основанного на модуле из GLScene.
Гибридный подход к оценке запасов сырья включает также метод оптимизации предельной оболочки карьера на основе максимизации сетевых псевдопотоков с верхней меткой для GPU вычислений, что позволило получить суммарное ускорение расчетов в 5-10 раз по сравнению с ранее применяемой последовательностью операций, выполняемых на одноядерном CPU.
Работа выполнена при финансовой поддержке РФФИ в рамках проектов № 18-47-310001 и № 17-07-00636
Список литературы
1. Crassin C., Green S. Octree-based sparse voxelization using the GPU hardware rasterizer. In OpenGL Insights /CRC Press, Boston, MA. 2012. p. 17-33.
2. Cheng T. Accelerating universal Kriging interpolation algorithm using CUDA-enabled GPU. Computers & Geosciences 54. 2013. p. 178-183.
Петров Д.В., Михелев В.М., Васильев П.В. Применение GPU-вычислений для построения и визуализации воксельных геомоделей // Научный результат. Информационные технологии. - Т.3, №3, 2018
3. Mei G, Xu L, Xu N. Accelerating adaptive inverse distance weighting interpolation algorithm on a graphics processing unit. R. Soc. open sci. 4: 170436. 2017. http://dx.doi.org/10.1098/rsos.170436
4. Fang Huang, Shuanshuan Bu, Jian Tao, and Xicheng Tan. OpenCL Implementation of a Parallel Universal Kriging Algorithm for Massive Spatial Data Interpolation on Heterogeneous Systems. ISPRS Int. J. Geo-Inf. 2016, 5, 96; http://dx.doi:10.3390/ijgi5060096
5. Васильев П.В., Майдаков М.А. Использование графического ускорения интерполяции Сибсона для моделирования геоструктур //1-я международная научно-техническая конференция «Компьютерные науки и технологии». Изд-во БелГУ, 2009, Ч. 2. с. 137-142.
6. Alejandro Graciano, Antonio J. Rueda, Francisco R. Feito, Real-time visualization of 3D terrains and subsurface geological structures. Advances in Engineering Software. 2017 http://dx.doi.org/10.1016/j.advengsoft.2017.10.002
7. NVIDIA: Библиотека вокселизации на основе параллельных вычислений по технологии CUDA https://github.com/NVIDIA/gvdb-voxels
8. Roosta S.H. Parallel Processing and Parallel Algorithms: Theory and Computation. Springer, 2000.
66 p.
9. Петров Д.В., Михелев В.М. «Моделирование карьеров рудных месторождений на высокопроизводительных гибридных вычислительных системах», Вестник Южно-Уральского государственного университета. Серия: Вычислительная математика и информатика. 2014. Т. 3. № 3. С. 124-129.
10. Espinoza D, Goycoolea M, Moreno E, Newman A. Minelib, 2011. A library of open pit production scheduling problems // Ann. Oper. Res., 2013. Vol.206 (1), P. 93-114.
References
1. Crassin C., Green S. Octree-based sparse voxelization using the GPU hardware rasterizer. In OpenGL Insights / CRC Press, Boston, MA. 2012. p. 17-33.
2. Cheng T. Accelerating universal Kriging interpolation algorithm using CUDA-enabled GPU. Computers & Geosciences 54. 2013. p. 178-183.
3. Mei G, Xu L, Xu N. Accelerating adaptive inverse distance weighting interpolation algorithm on a graphics processing unit. R. Soc. open sci. 4: 170436. 2017. http://dx.doi.org/10.1098/rsos.170436
4. Fang Huang, Shuanshuan Bu, Jian Tao, and Xicheng Tan. OpenCL Implementation of a Parallel Universal Kriging Algorithm for Massive Spatial Data Interpolation on Heterogeneous Systems. ISPRS Int. J. Geo-Inf. 2016, 5, 96; http: //dx.doi: 10.3390 / ijgi5060096
5. Vasiliev P.V., Maydakov M.A. Using the graphic acceleration of Sibson interpolation for modeling geostructures // The 1-st International Scientific and Technical Conference "Computer Science and Technology". Publishing house of BelGU, 2009, Part 2. c.137-142.
6. Alejandro Graciano, Antonio J. Rueda, Francisco R. Feito, Real-time visualization of 3D terrains and subsurface geological structures. Advances in Engineering Software. 2017 http://dx.doi.org/10.1016/j.advengsoft.2017.10.002
7. NVIDIA: A voxelization library based on parallel computing using CUDA technology https://github.com/NVIDIA/gvdb-voxels
8. Roosta S.H. Parallel Processing and Parallel Algorithms: Theory and Computation. Springer, 2000.
566 p.
9. Petrov D.V., Mikhelev V.M. "Modeling quarries of ore deposits on high-performance hybrid computing systems", Bulletin of South Ural State University. Series: Computational Mathematics and Informatics. 2014. T. 3. No. 3. P. 124-129.
10. Espinoza D, Goycoolea M, Moreno E, Newman A. Minelib, 2011. A library of open pit production scheduling problems // Ann. Oper. Res., 2013. Vol.206 (1), P. 93-114.
Петров Д.В., Михелев В.М., Васильев П.В. Применение GPU-вычислений для построения и визуализации воксельных геомоделей // Научный результат. Информационные технологии. - Т.3, №3, 2018
Петров Денис Васильевич, старший преподаватель кафедры математического и программного обеспечения информационных систем
Михелев Владимир Михайлович, кандидат технических наук, доцент, доцент кафедры программного обеспечения вычислительной техники и автоматизированных систем
Васильев Павел Владимирович, кандидат технических наук, доцент кафедры математического и программного обеспечения информационных систем
Petrov Denis Vasilevich, senior lecturer at the Department of Mathematical and Software Information Systems Mikhelev Vladimir Mikhailovich, Candidate of Technical Sciences, Associate Professor, Associate Professor at the Department of Computer Software and Automated Systems Software
Vassiliev Pavel Vladimirovich, Candidate of Technical Sciences, Associate Professor at the Department of Mathematical and Software Information Systems