A Domain-Specific Language and Source-to-Source Compilation Framework for Geometric Multigrid Methods
Autoren
Mehr zum Buch
Developing efficient numerical solvers for partial differential equations is a complex task that requires a tremendous effort and expertise in quite different fields. On the one hand, it is crucial to select suitable algorithms that provide optimal convergence rates, but it is equally important to create thoroughly optimized implementations that takes advantage of the specific features execution platforms offer. Often, there is contradiction between what would be the best mathematical approach and the one that leads to the lowest time-to-solution on a given platform. This interplay of mathematical concerns and hardware-imposed constraints requires careful consideration, a task often impossible even for experts. As a remedy to this dilemma, we developed a domain-specific language called ExaSlang for the specification of geometric multigrid solvers, and a corresponding compiler. This compiler is based on our source-to-source compilation framework Athariac, which uses the term-rewriting principle and features a very simple, but powerful syntax to evolve a program through a number of refinements. For evaluating the presented work, we provide theoretical background, metrics, and run-time analysis of two applications that have been realized with ExaSlang and evaluated on a number of different target platforms.