Applications of a strategy for designing divide-and-conquer algorithms
Science of Computer Programming
Algorithms
ICS '88 Proceedings of the 2nd international conference on Supercomputing
Scans as Primitive Parallel Operations
IEEE Transactions on Computers
Predicate calculus and program semantics
Predicate calculus and program semantics
Control generation in the design of processor arrays
Journal of VLSI Signal Processing Systems - Parallel processing on VLSI arrays
Regular partitioning for synthesizing fixed-size systolic arrays
Integration, the VLSI Journal
Algorithmic skeletons: structured management of parallel computation
Algorithmic skeletons: structured management of parallel computation
Introduction to parallel computing: design and analysis of algorithms
Introduction to parallel computing: design and analysis of algorithms
Automatic parallelization of while-loops using speculative execution
International Journal of Parallel Programming
Foundations of parallel programming
Foundations of parallel programming
From transformations to methodology in parallel program development: a case study
Microprocessing and Microprogramming - Special double issue: parallel systems engineering
Haskell: the craft of functional programming
Haskell: the craft of functional programming
Dependence Analysis
Loop Parallelization
Loop Transformations for Restructuring Compilers: The Foundations
Loop Transformations for Restructuring Compilers: The Foundations
The Design and Analysis of Computer Algorithms
The Design and Analysis of Computer Algorithms
The Loop Parallelizer LooPo-Announcement
LCPC '96 Proceedings of the 9th International Workshop on Languages and Compilers for Parallel Computing
Systematic Extraction and Implementation of Divide-and-Conquer Parallelism
PLILP '96 Proceedings of the 8th International Symposium on Programming Languages: Implementations, Logics, and Programs
Transformation of Divide & Conquer to Nested Parallel Loops
PLILP '97 Proceedings of the9th International Symposium on Programming Languages: Implementations, Logics, and Programs: Including a Special Trach on Declarative Programming Languages in Education
Classifying Loops for Space-Time Mapping
Euro-Par '96 Proceedings of the Second International Euro-Par Conference on Parallel Processing - Volume I
Systematic Efficient Parallelization of Scan and Other List Homomorphisms
Euro-Par '96 Proceedings of the Second International Euro-Par Conference on Parallel Processing-Volume II
Loop Parallelization in the Polytope Model
CONCUR '93 Proceedings of the 4th International Conference on Concurrency Theory
Automatic Parallelization in the Polytope Model
The Data Parallel Programming Model: Foundations, HPF Realization, and Scientific Applications
Upwards and Downwards Accumulations on Trees
Proceedings of the Second International Conference on Mathematics of Program Construction
OPERA: a toolbox for loop parallelization
Proceedings of the First IFIP TC10 International Workshop on Software Engineering for Parallel and Distributed Systems
On the parallelization of loop nests containing while loops
PAS '95 Proceedings of the First Aizu International Symposium on Parallel Algorithms/Architecture Synthesis
Parallel Implementations of Combinations of Broadcast, Reduction and Scan
PDSE '97 Proceedings of the 2nd International Workshop on Software Engineering for Parallel and Distributed Systems
Hi-index | 0.00 |
We demonstrate approaches to the static parallelization of loops andrecursions on the example of the polynomial product. Phrased as a loop nest,the polynomial product can be parallelized automatically by applying aspace-time mapping technique based on linear algebra and linear programming.One can choose a parallel program that is optimal with respect to someobjective function like the number of execution steps, processors, channels,etc. However,at best,linear execution time complexity can be atained.Through phrasing the polynomial product as a divide-and-conquer recursion,one can obtain a parallel program with sublinear execution time. In thiscase, the target program is not derived by an automatic search but given asa program skeleton, which can be deduced by a sequence of equational programtransformations. We discuss the use of such skeletons, compare and assessthe models in which loops and divide-and-conquer resursions are parallelizedand comment on the performance properties of the resulting parallel implementations.