Supercompilers for parallel and vector computers
Supercompilers for parallel and vector computers
The C programming language
Matrix computations (3rd ed.)
Optimizing compilers for modern architectures: a dependence-based approach
Optimizing compilers for modern architectures: a dependence-based approach
Two Program Comprehension Tools for Automatic Parallelization
IEEE Concurrency
Transformation of Attributed Trees Using Pattern Matching
CC '92 Proceedings of the 4th International Conference on Compiler Construction
Compilers: Principles, Techniques, and Tools (2nd Edition)
Compilers: Principles, Techniques, and Tools (2nd Edition)
ICSE '07 Proceedings of the 29th international conference on Software Engineering
A Survey of Reasoning in Parallelization
SNPD '07 Proceedings of the Eighth ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing - Volume 03
Hi-index | 0.00 |
We present a case study of parallelizing serial legacy code using Invasive Interactive Parallelization (IIP) - a compositional approach to parallelizing code refactoring rooted in the Invasive Software Composition (ISC) and the Separation of Concerns (SoC). The study focuses on scientific code, in particular, Gaussian elimination where parallelization neither requires nor incurs serious changes in the algorithmic structure. As the major contribution we show how parallelization of Gaussian elimination can be automatized with reusable parallelization recipes implemented as composers in Reuseware. We consider parallelization for both shared-and distributed-memory systems with OpenMP and MPI respectively. We present the speed-ups achieved and discuss gains in code reusability.