A domain-specific language for geospatial computations on the GPU
KTH, School of Electrical Engineering and Computer Science
KTH Royal Institute of Technology, 2024
This thesis explores how a domain-specific language (DSL) for simple geospatial operators on the GPU can be developed, and evaluates the level of functionality and performance of such a DSL. The purpose of such a DSL is to simplify implementation of geospatial operators on the GPU, in order to increase productivity and performance. An embedded and interpreted DSL was designed and implemented according to the geospatial domain. The level of functionality of the DSL was evaluated based on what geospatial operators are supported and with the Framework for Qualitative Assessment of DSLs (FQAD). The level of functionality was evaluated to high for the DSL, as simple geospatial operators are supported and the FQAD evaluation determined that the DSL was effective. To evaluate the performance gains, three interpreters for the DSL were implemented, one sequential on the CPU, one parallel on the CPU and one on the GPU. The execution time for five geospatial operators and algorithms was measured for different problem sizes for the three interpreters. The GPU interpreter achieved large speedups for large problem sizes compared to the sequential CPU interpreter. The GPU interpreter achieved speedups for four out of five operators compared to the parallel CPU interpreter for large problem sizes. In conclusion, this thesis demonstrates the potential of a domain-specific language for geospatial computations on the GPU.
October 13, 2024 by hgpu