AutoParallel: Automatic parallelisation and distributed execution of affine loop nests in Python

Résumé

The last improvements in programming languages and models have focused on simplicity and abstraction; leading Python to the top of the list of the programming languages. However, there is still room for improvement when preventing users from dealing directly with distributed and parallel computing issues. This paper proposes and evaluates AutoParallel, a Python module to automatically find an appropriate task-based parallelisation of affine loop nests to execute them in parallel in a distributed computing infrastructure. This parallelisation can also include the building of data blocks to increase tasks’ granularity in order to achieve a good execution performance. Moreover, AutoParallel is based on sequential programming and only contains a small annotation in the form of a Python decorator so that anyone with little programming skills can scale up an application to hundreds of cores.

Publication
International Journal of High-Performance Computing Applications

Keywords

Avatar
Cristián Ramón-Cortés Vilarrodona
PhD

Dr. Cristián Ramón-Cortés Vilarrodona est un Senior Software Engineer pour Dynatrace.

comments powered by Disqus

Sur le même sujet