Kuckuk S, Köstler H (2016)
Publication Language: English
Publication Type: Journal article
Publication year: 2016
Book Volume: 4
Pages Range: 1-20
Journal Issue: 3
URI: http://www.mdpi.com/2079-3197/4/3/27/pdf
Open Access Link: http://www.mdpi.com/2079-3197/4/3/27
Domain-specific languages (DSLs) have the potential to provide an intuitive interface for specifying problems and solutions for domain experts. Based on this, code generation frameworks can produce compilable source code. However, apart from optimizing execution performance, parallelization is key for pushing the limits in problem size and an essential ingredient for exascale performance. We discuss necessary concepts for the introduction of such capabilities in code generators. In particular, those for partitioning the problem to be solved and accessing the partitioned data are elaborated. Furthermore, possible approaches to expose parallelism to users through a given DSL are discussed. Moreover, we present the implementation of these concepts in the ExaStencils framework. In its scope, a code generation framework for highly optimized and massively parallel geometric multigrid solvers is developed. It uses specifications from its multi-layered external DSL ExaSlang as input. Based on a general version for generating parallel code, we develop and implement widely applicable extensions and optimizations. Finally, a performance study of generated applications is conducted on the JuQueen supercomputer.
APA:
Kuckuk, S., & Köstler, H. (2016). Automatic Generation of Massively Parallel Codes from ExaSlang. Computation, 4(3), 1-20.
MLA:
Kuckuk, Sebastian, and Harald Köstler. "Automatic Generation of Massively Parallel Codes from ExaSlang." Computation 4.3 (2016): 1-20.
BibTeX: Download