Assembling a high-productivity DSL for computational fluid dynamics
Autor: | Eduard Ayguadé, Pedro J. Martínez-Ferrer, Vicenç Beltran, Sergi Mateo, Sandra Macià |
---|---|
Přispěvatelé: | Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions |
Jazyk: | angličtina |
Rok vydání: | 2019 |
Předmět: |
Physical sciences and engineering
Domain-specific language Correctness FDM Computer science Distributed computing Maintainability Parallel programming (Computer science) Domain specific languages Parallel computing methodologies Programació en paral·lel (Informàtica) computer.software_genre Porting Exascale computing Domain (software engineering) DSL Software portability Fluid dynamics Dinàmica de fluids HPC Compiler CFD Informàtica::Arquitectura de computadors::Arquitectures paral·leles [Àrees temàtiques de la UPC] computer |
Zdroj: | UPCommons. Portal del coneixement obert de la UPC Universitat Politècnica de Catalunya (UPC) PASC Recercat. Dipósit de la Recerca de Catalunya instname |
DOI: | 10.1145/3324989.3325721 |
Popis: | “The final publication is available at ACM via http://dx.doi.org/10.1145/3324989.3325721” As we move towards exascale computing, an abstraction for effective parallel computation is increasingly needed to overcome the maintainability and portability of scientific applications while ensuring the efficient and full exploitation of high-performance systems. These circumstances require computer and domain scientists to work jointly toward a productive working environment. Domain specific languages address this challenge by abstracting the high-level application layer from the final, complex parallel low-level code. Saiph is an innovative domain specific language designed to reduce the work of computational fluid dynamics domain experts to an unambiguous and straightforward transcription of their problem equations. The high-level language, domain-specific compiler and underlying library are enhanced to make applications developed by scientists intuitive. Additions and improvements are presented, designed for the significant advantage of running computational fluid dynamics applications on different machines with no porting or maintenance issues. Numerical methods and parallel strategies are independently added at the library level covering the explicit finite differences resolution of a vast range of problems. Depending on the application, a specific parallel resolution is automatically derived and applied within Saiph, freeing the user from decisions related to numerical methods or parallel executions while ensuring suitable computations. Through a list of benchmarks, we demonstrate the utility and productivity of the Saiph high-level language together with the correctness and performance of the underlying parallel numerical algorithms. |
Databáze: | OpenAIRE |
Externí odkaz: |