Results 1 -
6 of
6
Practical Parallel Divide-and-Conquer Algorithms
, 1997
"... Nested data parallelism has been shown to be an important feature of parallel languages, allowing the concise expression of algorithms that operate on irregular data structures such as graphs and sparse matrices. However, previous nested dataparallel languages have relied on a vector PRAM impleme ..."
Abstract
-
Cited by 5 (2 self)
- Add to MetaCart
Nested data parallelism has been shown to be an important feature of parallel languages, allowing the concise expression of algorithms that operate on irregular data structures such as graphs and sparse matrices. However, previous nested dataparallel languages have relied on a vector PRAM implementation layer that cannot be efficiently mapped to MPPs with high inter-processor latency. This thesis shows that by restricting the problem set to that of data-parallel divide-and-conquer algorithms I can maintain the expressibility of full nested data-parallel languages while achieving good efficiency on current distributed-memory machines. Specifically, I define
Parallelization of Divide-and-Conquer in the Bird-Meertens Formalism
, 1995
"... . An SPMD parallel implementation schema for divide-and-conquer specifications is proposed and derived by formal refinement (transformation) of the specification. The specification is in the form of a mutually recursive functional definition. In a first phase, a parallel functional program schema is ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
. An SPMD parallel implementation schema for divide-and-conquer specifications is proposed and derived by formal refinement (transformation) of the specification. The specification is in the form of a mutually recursive functional definition. In a first phase, a parallel functional program schema is constructed which consists of a communication tree and a functional program that is shared by all nodes of the tree. The fact that this phase proceeds by semanticspreserving transformations in the Bird-Meertens formalism of higher-order functions guarantees the correctness of the resulting functional implementation. A second phase yields an imperative distributed message-passing implementation of this schema. The derivation process is illustrated with an example: a twodimensional numerical integration algorithm. 1. Introduction One of the main problems in exploiting modern multiprocessor systems is how to develop correct and efficient programs for them. We address this problem using the ap...
Formal Derivation and Implementation of Divide-and-Conquer on a Transputer Network
- Transputer Applications and Systems '94
, 1994
"... This paper considers parallel program development based on functional mutually recursive specifications. The development yields a communication structure linking an arbitrary fixed number of processors and an SPMD program executable on the structure. There are two steps in the development proces ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
This paper considers parallel program development based on functional mutually recursive specifications. The development yields a communication structure linking an arbitrary fixed number of processors and an SPMD program executable on the structure. There are two steps in the development process: first, a parallel functional implementation is obtained through formal transformations in the Bird-Meertens formalism; it is then systematically transformed into an imperative target program with message passing. The approach is illustrated with a divide-and-conquer algorithm for numerical twodimensional sparse grid integration. The optimization of the target program and the results of experimental performance measurements on a 64-transputer network under OS Parix are presented. 1 Introduction We take the following approach to parallelization: we try to identify certain standard patterns of high-level functional specifications and to associate equivalent parallel programs to them...
Une Taxonomie Des Algorithmes D'allocation Dynamique De Processus Dans Les Systèmes Parallèles Et Distribués
"... . In the design of distributed systems, the strategy used for process allocation has a great impact on the system performances. Most of the proposed dynamic allocation algorithms are based on heuristics, because of the impossibility to have a coherent global state of a distributed system and the tim ..."
Abstract
- Add to MetaCart
. In the design of distributed systems, the strategy used for process allocation has a great impact on the system performances. Most of the proposed dynamic allocation algorithms are based on heuristics, because of the impossibility to have a coherent global state of a distributed system and the time constraints of the process allocation decision making. In this report, a review and a comparative study of the different research studies in this field are presented. We propose a classification of the dynamic allocation algorithms, following the strategy used in the information exchange protocol to maintain the current state of a distributed system, and the process placement protocol to localize the destination of a process. The use of process migration mecanism is also analysed. Mots cl' es : Allocation dynamique de processus, Distribution de la charge, Localit'e, Migration de processus. Keywords : Dynamic process allocation, Load balancing, Locality, Process migration. 1 Introduction ...

