Full text

Turn on search term navigation

© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.

Abstract

The Greiner–Hormann algorithm is a commonly used polygon overlay analysis algorithm. It uses a double-linked list structure to store vertex data, and its intersection calculation step has a significant effect on the overall operating efficiency of the algorithm. To address the time-consuming intersection calculation process in the Greiner–Hormann algorithm, this paper presents two kernel functions that implement a GPU parallel improvement algorithm based on CUDA multi-threading. This method allocates a thread to each edge of the subject polygon, determines in parallel whether it intersects with each edge of the clipping polygon, transfers the number of intersection points back to the CPU for calculation, and opens up corresponding storage space on the GPU side on the basis of the total number of intersection points; then, information such as intersection coordinates is calculated in parallel. In addition, experiments are conducted on the data of eight polygons with different complexities, and the optimal thread mode, running time, and speedup ratio of the parallel algorithm are statistically analyzed. The experimental results show that when a single CUDA thread block contains 64 threads or 128 threads, the parallel transformation step of the Greiner–Hormann algorithm has the highest computational efficiency. When the complexity of the subject polygon exceeds 53,000, the parallel improvement algorithm can obtain a speedup ratio of approximately three times that of the serial algorithm. This shows that the design method in this paper can effectively improve the operating efficiency of the polygon overlay analysis algorithm in the current large-scale data context.

Details

Title
Parallel CUDA-Based Optimization of the Intersection Calculation Process in the Greiner–Hormann Algorithm
Author
Zuo, Jiwei 1 ; Fan, Junfu 2   VIAFID ORCID Logo  ; Li, Kuan 1 ; Liu, Qingyun 3 ; Zhou, Yuke 4   VIAFID ORCID Logo  ; Zhang, Yi 5 

 School of Civil Engineering and Geomatics, Shandong University of Technology, Zibo 255000, China; [email protected] (J.Z.); [email protected] (K.L.) 
 School of Civil Engineering and Geomatics, Shandong University of Technology, Zibo 255000, China; [email protected] (J.Z.); [email protected] (K.L.); State Key Laboratory of Resources and Environmental Information System, Institute of Geographic Sciences and Natural Resources Research, Chinese Academy of Sciences, Beijing 100101, China; [email protected] 
 Institute of Geographical Spatial Information, Information Engineering University, Zhengzhou 450001, China; [email protected] 
 State Key Laboratory of Resources and Environmental Information System, Institute of Geographic Sciences and Natural Resources Research, Chinese Academy of Sciences, Beijing 100101, China; [email protected] 
 College of Land Resources and Surveying Engineering, Shandong Agriculture and Engineering University, Zibo 255300, China; [email protected]; School of Geosciences and Info-Physics, Central South University, Changsha 410083, China 
First page
147
Publication year
2025
Publication date
2025
Publisher
MDPI AG
e-ISSN
19994893
Source type
Scholarly Journal
Language of publication
English
ProQuest document ID
3181340956
Copyright
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.