An introduction to the theory of lists
Proceedings of the NATO Advanced Study Institute on Logic of programming and calculi of discrete design
Algorithmic skeletons: structured management of parallel computation
Algorithmic skeletons: structured management of parallel computation
The role of APL and J in high-performance computation
APL '93 Proceedings of the international conference on APL
Efficient parallel algorithms for tree accumulations
Science of Computer Programming
Foundations of parallel programming
Foundations of parallel programming
Parallel implementation of tree skeletons
Journal of Parallel and Distributed Computing
Matrix computations (3rd ed.)
Formal derivation of efficient parallel programs by construction of list homomorphisms
ACM Transactions on Programming Languages and Systems (TOPLAS)
ScaLAPACK user's guide
Parallelization in calculational forms
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Undulant-block elimination and integer-preserving matrix inversion
Science of Computer Programming
Programming pearls: perspective on performance
Communications of the ACM
Programming pearls: algorithm design techniques
Communications of the ACM
Matrix algorithms
Synthesis of Parallel Algorithms
Synthesis of Parallel Algorithms
Arrays, Functional Languages and Parallel Systems
Arrays, Functional Languages and Parallel Systems
Introduction to Functional Programming
Introduction to Functional Programming
An Accumulative Parallel Skeleton for All
ESOP '02 Proceedings of the 11th European Symposium on Programming Languages and Systems
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
Patterns and skeletons for parallel and distributed computing
Patterns and skeletons for parallel and distributed computing
QR factorization with Morton-ordered quadtree matrices for memory re-use and parallelism
Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming
Parallelization via Context Preservatio
ICCL '98 Proceedings of the 1998 International Conference on Computer Languages
A programming language
Programming for parallelism and locality with hierarchically tiled arrays
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming
A library of constructive skeletons for sequential style of parallel programming
InfoScale '06 Proceedings of the 1st international conference on Scalable information systems
A compositional framework for developing parallel programs on two-dimensional arrays
International Journal of Parallel Programming
A compositional framework for developing parallel programs on two-dimensional arrays
International Journal of Parallel Programming
Lessons from implementing the biCGStab method with SkeTo library
Proceedings of the fourth international workshop on High-level parallel programming and applications
Generators-of-generators library with optimization capabilities in fortress
Euro-Par'10 Proceedings of the 16th international Euro-Par conference on Parallel processing: Part II
A survey of algorithmic skeleton frameworks: high-level structured parallel programming enablers
Software—Practice & Experience - Focus on Selected PhD Literature Reviews in the Practical Aspects of Software Technology
Implementing fusion-equipped parallel skeletons by expression templates
IFL'09 Proceedings of the 21st international conference on Implementation and application of functional languages
FLOPS'12 Proceedings of the 11th international conference on Functional and Logic Programming
Hi-index | 0.00 |
Computations on two-dimensional arrays such as matrices and images are one of the most fundamental and ubiquitous things in computational science and its vast application areas, but development of efficient parallel programs on two-dimensional arrays is known to be hard. In this paper, we propose a compositional framework that supports users, even with little knowledge about parallel machines, to develop both correct and efficient parallel programs on dense two-dimensional arrays systematically. The key feature of our framework is a novel use of the abide-tree representation of two-dimensional arrays. The presentation not only inherits the advantages of tree representations of matrices where recursive blocked algorithms can be defined to achieve better performance, but also supports transformational development of parallel programs and architecture-independent implementation owing to its solid theoretical foundation - the theory of constructive algorithmics.