A dependency-aware parallel programming model

作者: Rosa Maria Badia Sala , Jesús José Labarta Mancho

DOI:

关键词:

摘要: Designing parallel codes is hard. One of the most important roadblocks to programming presence data dependencies. These restrict parallelism and, in general, work them around requires complex analysis and leads convoluted solutions that decrease quality code. This thesis proposes a solution incorporates dependencies into model. The model can handle information dynamically find otherwise would be hard find. approach improves both programmability parallelism, thus performance. While this problem has already been solved OpenMP 4 at time publication, research begun before was even being considered for 3. In fact, some contributions have had an influence on taken 4. However, go beyond cover aspects not yet we propose based function-level across disjoint blocks contiguous memory. finding under those constraints simple, it much harder do so over strided possibly partially overlapping sets data. also problem. By doing so, increase range applicability original span OpenMP4 does currently aspect. Finally, present take advantage performance characteristics Non-Uniform Memory Access architectures. Our proposal level require changes It automatically distributes rely migration nor replication. Instead, exclusively scheduling computations. process automatic, tuned through minor code any change Throughout thesis, demonstrate effectiveness benchmarks are either program using other paradigms or different solutions. cases, our perform par better than existing includes implementations available well-known high-performance libraries.

参考文章(55)
Silvius Rus, Lawrence Rauchwerger, Jay Hoeflinger, Hybrid analysis: static & dynamic memory reference analysis International Journal of Parallel Programming. ,vol. 31, pp. 251- 283 ,(2003) , 10.1023/A:1024597010150
Tarek S. Abdelrahman, Sum Huynh, Exploiting Task-Level Parallelism Using pTask. parallel and distributed processing techniques and applications. pp. 252- 263 ,(1996)
Utpal K. Banerjee, Dependence analysis for supercomputing ,(1988)
Alejandro Duran, Josep M. Perez, Eduard Ayguadé, Rosa M. Badia, Jesus Labarta, Extending the OpenMP tasking model to allow dependent tasks international workshop on openmp. ,vol. 5004, pp. 111- 122 ,(2008) , 10.1007/978-3-540-79561-2_10
Roger Ferrer, Judit Planas, Pieter Bellens, Alejandro Duran, Marc Gonzalez, Xavier Martorell, Rosa M. Badia, Eduard Ayguade, Jesus Labarta, Optimizing the exploitation of multicore processors and GPUs with OpenMP and OpenCL languages and compilers for parallel computing. ,vol. 6548, pp. 215- 229 ,(2010) , 10.1007/978-3-642-19595-2_15
Ewing Lusk, Anthony Chan, Early experiments with the OpenMP/MPI hybrid programming model international workshop on openmp. pp. 36- 47 ,(2008) , 10.1007/978-3-540-79561-2_4
Jesus Labarta, Sergi Girona, Vincent Pillet, Toni Cortes, Luis Gregoris, DiP: A Parallel Program Development Environment european conference on parallel processing. pp. 665- 674 ,(1996) , 10.1007/BFB0024763