Performance and Reliability Analysis Using Directed Acyclic Graphs
IEEE Transactions on Software Engineering
A bridging model for parallel computation
Communications of the ACM
Coordination languages and their significance
Communications of the ACM
A cost calculus for parallel functional programming
Journal of Parallel and Distributed Computing
Scheduling UET-UCT series-parallel graphs on two processors
Theoretical Computer Science
The importance of synchronization structure in parallel program optimization
ICS '97 Proceedings of the 11th international conference on Supercomputing
An evaluation of high performance Fortran
ACM SIGPLAN Notices
Structured development of parallel programs
Structured development of parallel programs
Models and languages for parallel computation
ACM Computing Surveys (CSUR)
The Paderborn University BSP (PUB) Library - Design, Implementation and Performance
IPPS '99/SPDP '99 Proceedings of the 13th International Symposium on Parallel Processing and the 10th Symposium on Parallel and Distributed Processing
Send-Recv Considered Harmful? Myths and Truths about Parallel Programming
PaCT '01 Proceedings of the 6th International Conference on Parallel Computing Technologies
Series-Parallel Posets: Algebra, Automata and Languages
STACS '98 Proceedings of the 15th Annual Symposium on Theoretical Aspects of Computer Science
Functional Skeletons for Parallel Coordination
Euro-Par '95 Proceedings of the First International Euro-Par Conference on Parallel Processing
Extensible Programming for the 21st Century
Queue - Programming Languages
Scheduling multithreaded computations by work stealing
SFCS '94 Proceedings of the 35th Annual Symposium on Foundations of Computer Science
A preliminary nested-parallel framework to efficiently implement scientific applications
VECPAR'04 Proceedings of the 6th international conference on High Performance Computing for Computational Science
SP@CE: an SP-based programming model for consumer electronics streaming applications
LCPC'06 Proceedings of the 19th international conference on Languages and compilers for parallel computing
Trasgo: a nested-parallel programming system
The Journal of Supercomputing
Hi-index | 0.00 |
Nested-parallelism programming models, where the task graph associated to a computation is series-parallel, present good analysis properties that can be exploited for scheduling, cost estimation or automatic mapping to different architectures. In this paper we present an XML intermediate representation for nested-parallel programming languages from which the application task-graph can be easily derived. We introduce some design principles oriented to allow the compiler to exploit information about the task synchronization structure, automatically determine implicit communication structures, apply different scheduling policies, and generate lower-level code using different models or communication tools. Results obtained for simple applications, using an extensible prototype compiler framework, show how this flexible approach can lead to portable and efficient implementations.