Utilize este identificador para citar ou criar um atalho para este documento:
https://hdl.handle.net/10923/26797
Tipo: | Artigo |
Título: | An internal domain-specific language for expressing linear pipelines: a proof-of-concept with MPI in Rust |
Autor(es): | Faé, Leonardo Gibrowski |
Orientador: | Griebler, Dalvan |
Data de Publicação: | 2024 |
Palavras-chave: | PARALLEL PROGRAMMING DOMAIN SPECIFIC LANGUAGE PARALLELISM ABSTRACTION MULTI-THREAD MPI |
Resumo: | Parallel computation is necessary in order to process massive volumes of data in a timely manner. There are many parallel programming interfaces and environments, each with their own idiosyncrasies. This, alongside non-deterministic errors, make parallel programs notoriously challenging to write. Great effort has been put forth to make parallel programming for several environments easier. In this work, we propose a DSL for Rust, using the language’s source-to-source transformation facilities, that allows for automatic code generation for distributed environments that support the Message Passing Interface (MPI). Our DSL simplifies MPI’s quirks, allowing the programmer to focus almost exclusively on the computation at hand. Performance experiments show nearly or no runtime difference between our abstraction and manually written MPI code while resulting in less than half the lines of code. More elaborate code complexity metrics (Halstead) estimate from 4.5 to 14.7 times lower effort for expressing parallelism. |
URI: | https://hdl.handle.net/10923/26797 |
Aparece nas Coleções: | TCC Ciência da Computação
|
Todos os itens no Repositório da PUCRS estão protegidos por copyright, com todos os direitos reservados, e estão licenciados com uma Licença Creative Commons - Atribuição-NãoComercial 4.0 Internacional. Saiba mais.