An introduction to the theory of lists
Proceedings of the NATO Advanced Study Institute on Logic of programming and calculi of discrete design
A simple parallel tree contraction algorithm
Journal of Algorithms
Scans as Primitive Parallel Operations
IEEE Transactions on Computers
Functional programming with bananas, lenses, envelopes and barbed wire
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Categories, relations and dynamic programming
Categories, relations and dynamic programming
Foundations of parallel programming
Foundations of parallel programming
Parallel skeletons for structured composition
PPOPP '95 Proceedings of the fifth ACM SIGPLAN symposium on Principles and practice of parallel programming
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
Algebra of programming
Formal derivation of efficient parallel programs by construction of list homomorphisms
ACM Transactions on Programming Languages and Systems (TOPLAS)
HPC++: experiments with the parallel standard template library
ICS '97 Proceedings of the 11th international conference on Supercomputing
Parallelization in calculational forms
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Efficient high-level parallel programming
Theoretical Computer Science - Special issue on parallel computing
Make it practical: a generic linear-time algorithm for solving maximum-weightsum problems
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
Introduction to Algorithms
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
Optimization Rules for Programming with Collective Operations
IPPS '99/SPDP '99 Proceedings of the 13th International Symposium on Parallel Processing and the 10th Symposium on Parallel and Distributed Processing
Parallel Programming Using Skeleton Functions
PARLE '93 Proceedings of the 5th International PARLE Conference on Parallel Architectures and Languages Europe
Skeletons for Data Parallelism in p3l
Euro-Par '97 Proceedings of the Third International Euro-Par Conference on Parallel Processing
Euro-Par '02 Proceedings of the 8th International Euro-Par Conference on Parallel Processing
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
Using generative design patterns to generate parallel code for a distributed memory environment
Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming
Skil: An Imperative Language with Algorithmic Skeletons for Efficient Distributed Programming
HPDC '96 Proceedings of the 5th IEEE International Symposium on High Performance Distributed Computing
Theory and applications of inverting functions as folds
Science of Computer Programming - Special issue on mathematics of program construction (MPC 2002)
Representing matrices as quadtrees for parallel processors: extended abstract
ACM SIGSAM Bulletin
A new parallel skeleton for general accumulative computations
International Journal of Parallel Programming
Flexible skeletal programming with eskel
Euro-Par'05 Proceedings of the 11th international Euro-Par conference on Parallel Processing
Two fundamental concepts in skeletal parallel programming
ICCS'05 Proceedings of the 5th international conference on Computational Science - Volume Part II
Towards automatic parallelization of tree reductions in dynamic programming
Proceedings of the eighteenth annual ACM symposium on Parallelism in algorithms and architectures
Parallel skeletons for manipulating general trees
Parallel Computing - Algorithmic skeletons
Automatic inversion generates divide-and-conquer parallel programs
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Efficient Parallel Tree Reductions on Distributed Memory Environments
ICCS '07 Proceedings of the 7th international conference on Computational Science, Part II
Efficient Implementation of Tree Accumulations on Distributed-Memory Parallel Computers
ICCS '07 Proceedings of the 7th international conference on Computational Science, Part II
Co-design of Distributed Systems Using Skeleton and Autonomic Management Abstractions
Euro-Par 2008 Workshops - Parallel Processing
A compositional framework for developing parallel programs on two-dimensional arrays
International Journal of Parallel Programming
OSL: Optimized Bulk Synchronous Parallel Skeletons on Distributed Arrays
APPT '09 Proceedings of the 8th International Symposium on Advanced Parallel Processing Technologies
Parallel Skeletons for Variable-Length Lists in SkeTo Skeleton Library
Euro-Par '09 Proceedings of the 15th International Euro-Par Conference on Parallel Processing
A Skeletal Parallel Framework with Fusion Optimizer for GPGPU Programming
APLAS '09 Proceedings of the 7th Asian Symposium on Programming Languages and Systems
Skeletons for divide and conquer algorithms
PDCN '08 Proceedings of the IASTED International Conference on Parallel and Distributed Computing and Networks
Lessons from implementing the biCGStab method with SkeTo library
Proceedings of the fourth international workshop on High-level parallel programming and applications
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
A multi-core software API for embedded MPSoC environments
MTPP'10 Proceedings of the Second Russia-Taiwan conference on Methods and tools of parallel programming multicomputers
Implementing fusion-equipped parallel skeletons by expression templates
IFL'09 Proceedings of the 21st international conference on Implementation and application of functional languages
Towards systematic parallel programming over mapreduce
Euro-Par'11 Proceedings of the 17th international conference on Parallel processing - Volume Part II
Cache size in a cost model for heterogeneous skeletons
Proceedings of the fifth international workshop on High-level parallel programming and applications
Surrounding theorem: developing parallel programs for matrix-convolutions
Euro-Par'06 Proceedings of the 12th international conference on Parallel Processing
Case study: stereo vision experiments with multi-core software API on embedded MPSoC environments
The Journal of Supercomputing
Towards high-performance implementations of a custom HPC kernel using ® array building blocks
Facing the Multicore-Challenge II
Verification of a heat diffusion simulation written with orléans skeleton library
PPAM'11 Proceedings of the 9th international conference on Parallel Processing and Applied Mathematics - Volume Part II
Domain-specific optimization strategy for skeleton programs
Euro-Par'07 Proceedings of the 13th international Euro-Par conference on Parallel Processing
A verified library of algorithmic skeletons on evenly distributed arrays
ICA3PP'12 Proceedings of the 12th international conference on Algorithms and Architectures for Parallel Processing - Volume Part I
Targeting distributed systems in fastflow
Euro-Par'12 Proceedings of the 18th international conference on Parallel processing workshops
Structured data access annotations for massively parallel computations
Euro-Par'12 Proceedings of the 18th international conference on Parallel processing workshops
Hi-index | 0.00 |
With the increasing popularity of parallel programming environments such as PC clusters, more and more sequential programmers, with little knowledge about parallel architectures and parallel programming, are hoping to write parallel programs. Numerous attempts have been made to develop high-level parallel programming libraries that use abstraction to hide low-level concerns and reduce difficulties in parallel programming. Among them, libraries of parallel skeletons have emerged as a promising way towards this direction. Unfortunately, these libraries are not well accepted by sequential programmers, because of incomplete elimination of lower-level details, ad-hoc selection of library functions, unsatisfactory performance, or lack of convincing application examples. This paper addresses principle of designing skeleton libraries of parallel programming and reports implementation details and practical applications of a skeleton library SkeTo. The SkeTo library is unique in its feature that it has a solid theoretical foundation based on the theory of Constructive Algorithmics, and is practical to be used to describe various parallel computations in a sequential manner.