A Compiler Approach to Map Algebra for Raster Spatial Modeling
Carabaño Bravo, Jesús (2019-08-30)
Carabaño Bravo, Jesús
Turku Centre for Computer Science (TUCS)
30.08.2019
Julkaisu on tekijänoikeussäännösten alainen. Teosta voi lukea ja tulostaa henkilökohtaista käyttöä varten. Käyttö kaupallisiin tarkoituksiin on kielletty.
Julkaisun pysyvä osoite on
https://urn.fi/URN:ISBN:978-952-12-3853-6
https://urn.fi/URN:ISBN:978-952-12-3853-6
Tiivistelmä
Modeling and simulation enables the study of spatial phenomena that are otherwise impossible to reproduce in the physical world. On the one hand, digital models replicate the shape and state of the Earth with bits and bytes that we can store and manipulate. On the other, computer models turn mathematical equations into instructions that computers can run to simulate events of interest. Together, they provide a digital laboratory where to virtually isolate and experiment with spatial phenomena.
Recently, advances in remote sensing technologies have brought unprecedented volumes of spatio-temporal data. Simultaneously, computer architectures have developed into parallel and heterogeneous designs. More data enables better models, but also entails more calculations, which in turn requires faster computers. Parallel computers promise higher performance, but their complex programming impacts both productivity and portability. This raises a conflict between the execution speed, ease of development and portability of computer models. However, these three qualities are necessary for an efficient practice of modeling and simulation.
In this thesis we propose a compiler approach to map algebra that provides a productive, performant and portable environment where to model spatial phenomena and simulate their dynamics. Modelers write sequential scripts in the map algebra formalism, a language for raster spatial analysis. Then the compiler parses their scripts to generate parallel codes that run efficiently on modern heterogeneous architectures. Moreover, scripts are written once and automatically translated to the target computer architecture, attaining portability.
To test our hypothesis, we build a prototype compiler and evaluate typical map algebra workloads. Our experiments produced three clear outcomes: (1) the compiler approach can handle large volumes of data even when they exceed the computer memory, (2) the performance is competitive as it provides large speed-ups over interpreted map algebras, and (3) the compilation process is fully transparent to modelers and therefore user-friendly. In conclusion, a map algebra compiler meets the necessary qualities for a practical modeling and simulation of spatial phenomena with raster data, and as a result it becomes a valuable tool for modelers.
Recently, advances in remote sensing technologies have brought unprecedented volumes of spatio-temporal data. Simultaneously, computer architectures have developed into parallel and heterogeneous designs. More data enables better models, but also entails more calculations, which in turn requires faster computers. Parallel computers promise higher performance, but their complex programming impacts both productivity and portability. This raises a conflict between the execution speed, ease of development and portability of computer models. However, these three qualities are necessary for an efficient practice of modeling and simulation.
In this thesis we propose a compiler approach to map algebra that provides a productive, performant and portable environment where to model spatial phenomena and simulate their dynamics. Modelers write sequential scripts in the map algebra formalism, a language for raster spatial analysis. Then the compiler parses their scripts to generate parallel codes that run efficiently on modern heterogeneous architectures. Moreover, scripts are written once and automatically translated to the target computer architecture, attaining portability.
To test our hypothesis, we build a prototype compiler and evaluate typical map algebra workloads. Our experiments produced three clear outcomes: (1) the compiler approach can handle large volumes of data even when they exceed the computer memory, (2) the performance is competitive as it provides large speed-ups over interpreted map algebras, and (3) the compilation process is fully transparent to modelers and therefore user-friendly. In conclusion, a map algebra compiler meets the necessary qualities for a practical modeling and simulation of spatial phenomena with raster data, and as a result it becomes a valuable tool for modelers.