Results 1  10
of
10
A Cost Analysis for a Higherorder Parallel Programming Model
, 1996
"... Programming parallel computers remains a difficult task. An ideal programming environment should enable the user to concentrate on the problem solving activity at a convenient level of abstraction, while managing the intricate lowlevel details without sacrificing performance. This thesis investiga ..."
Abstract

Cited by 17 (1 self)
 Add to MetaCart
Programming parallel computers remains a difficult task. An ideal programming environment should enable the user to concentrate on the problem solving activity at a convenient level of abstraction, while managing the intricate lowlevel details without sacrificing performance. This thesis investigates a model of parallel programming based on the BirdMeertens Formalism (BMF). This is a set of higherorder functions, many of which are implicitly parallel. Programs are expressed in terms of functions borrowed from BMF. A parallel implementation is defined for each of these functions for a particular topology, and the associated execution costs are derived. The topologies which have been considered include the hypercube, 2D torus, tree and the linear array. An analyser estimates the costs associated with different implementations of a given program and selects a costeffective one for a given topology. All the analysis is performed at compiletime which has the advantage of reducing run...
Rewriting skeleton programs: How to evaluate the dataparallel streamparallel tradeoff
 University of Passau
, 1998
"... Some skeleton based parallel programming models allow the programmer to use both data and stream parallel skeletons within the same program. It is known that particular skeleton nestings can be formally rewritten into different nestings that preserve the functional semantics. Indeed, the kind and ..."
Abstract

Cited by 11 (5 self)
 Add to MetaCart
Some skeleton based parallel programming models allow the programmer to use both data and stream parallel skeletons within the same program. It is known that particular skeleton nestings can be formally rewritten into different nestings that preserve the functional semantics. Indeed, the kind and possibly the amount of parallelism usefully exploitable may change while rewriting takes place. Here we discuss an original framework allowing the user (and/or the compiling tools) of a skeleton based parallel programming language to evaluate whether or not the transformation of a skeleton program is worthwhile in terms of the nal program performance. We address, in particular, the evaluation of transformations exchanging data parallel and stream parallel skeleton subtrees.
Implementation Issues Relating to the WPRAM Model for Scalable Computing
, 1996
"... Modern parallel processing machines are becoming more scalable through advances in network technology. It is now important to have a scalable computational model to support the design and analysis of algorithms. ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
Modern parallel processing machines are becoming more scalable through advances in network technology. It is now important to have a scalable computational model to support the design and analysis of algorithms.
Parallel CSG, Skeletons and Performance Modelling
, 1996
"... We describe an efficient implementation of a parallel algorithmic skeleton which supports set membership classification problems in Constructive Solid Geometry. A performance modelling methodology is developed, which realistically predicts the asymptotic performance of specific CSG applications. ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
We describe an efficient implementation of a parallel algorithmic skeleton which supports set membership classification problems in Constructive Solid Geometry. A performance modelling methodology is developed, which realistically predicts the asymptotic performance of specific CSG applications.
A Skeleton for Parallel CSG with a Performance Model
, 1997
"... We describe a methodology for modelling the performance of parallel algorithmic skeletons and illustrate it using a new skeleton which supports set membership classification problems in Constructive Solid Geometry. These problems are characterised by potentially unbalanced tree structures with data ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
We describe a methodology for modelling the performance of parallel algorithmic skeletons and illustrate it using a new skeleton which supports set membership classification problems in Constructive Solid Geometry. These problems are characterised by potentially unbalanced tree structures with datadependent computations at the nodes. The skeleton achieves good parallel efficiency even with highly unbalanced trees and, with some restrictions on the class of computations permitted, the methodology accurately predicts the asymptotic performance of specific CSG applications. 1 Introduction In recent years several researchers (eg [1, 2]) have proposed the use of algorithmic skeletons as a way to resolve the complexity and machinedependence of programming parallel computers. A skeleton is a template providing an implementation of a class of parallel computationss which share a common structure. Wellknown examples include pipelines, farms, and divideandconquer algorithms. A programmer n...
A Survey of Cost Models for Algorithmic Skeletons
, 1999
"... This report presents a survey of performance models for parallel algorithmic skeletons. First, higherorder functions (HOFs) are presented according to the modelled skeletons. Next, the corresponding parallel implementations (skeletons) for the HOFs are discussed with the performance models that wer ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
This report presents a survey of performance models for parallel algorithmic skeletons. First, higherorder functions (HOFs) are presented according to the modelled skeletons. Next, the corresponding parallel implementations (skeletons) for the HOFs are discussed with the performance models that were constructed for the skeletons. 1 Introduction Effective portability depends crucially on the predictability of performance. Therefore, accurate performance models are required to predict the behaviour of a given skeleton before successfully porting the application that is currently using this skeleton. For the importance of performance models for algorithmic skeletons, this report aims to survey some of them. 2 Higher Order Functions for the Modeled Skeletons This section presents briefly the HOFs used to describe the skeletons in Section 3. The HOFs are classified into two major classes: general and application specific HOFs. 2.1 General Higher Order Functions The HOFs are presented i...
Algorithmic Skeletons in an Imperative Language for Distributed Programming
, 1995
"... Algorithmic skeletons are functions representing common parallelization patterns and implemented in parallel. They can be used as the building blocks of parallel and distributed applications by integrating them into a sequential language. In this paper, we present a new approach to programming with ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Algorithmic skeletons are functions representing common parallelization patterns and implemented in parallel. They can be used as the building blocks of parallel and distributed applications by integrating them into a sequential language. In this paper, we present a new approach to programming with skeletons. We integrate the skeletons into an imperative host language, which leads to important gains in efficiency. At the same time, we enhance the host language with some functional features, like higherorder functions and currying, as well as with a polymorphic type system, in order to allow highlevel programming. After describing a series of skeletons which work with distributed arrays, we give two examples of parallel algorithms written as sequential programs, namely shortest paths in graphs and Gaussian elimination. Runtime measurements show that we approach the efficiency of messagepassing C up to a factor between 1 and 2.5.
Constructive Solid Geometry Using Algorithmic Skeletons
, 1996
"... This paper presents a study in the use of parallel algorithmic skeletons to program applications of constructive solid geometry (CSG). ..."
Abstract
 Add to MetaCart
This paper presents a study in the use of parallel algorithmic skeletons to program applications of constructive solid geometry (CSG).