Results 1 - 10
of
11
Functional Bulk Synchronous Parallel Programming in C++
- In 14th IASTED International Conference on Parallel and Distributed Computing Systems
, 2002
"... This paper presents the BSFC++ library for functional bulk synchronous parallel programming in C++. It is based on an extension of the #-calculus by parallel operations on a parallel data structure named parallel vector, which is given by intention. This guarantees the determinism and the absence ..."
Abstract
-
Cited by 18 (14 self)
- Add to MetaCart
This paper presents the BSFC++ library for functional bulk synchronous parallel programming in C++. It is based on an extension of the #-calculus by parallel operations on a parallel data structure named parallel vector, which is given by intention. This guarantees the determinism and the absence of deadlock. Broadcast algorithms are implemented using the core library.
A Polymorphic Type System for Bulk Synchronous Parallel ML
, 2003
"... The BSMLlib library is a library for Bulk Synchronous Parallel (BSP) programming with the functional language Objective Caml. ..."
Abstract
-
Cited by 11 (10 self)
- Add to MetaCart
The BSMLlib library is a library for Bulk Synchronous Parallel (BSP) programming with the functional language Objective Caml.
BSλ_p: Functional BSP Programs on Enumerated Vectors
, 2000
"... The BS#p calculus is a calculus of functional BSP programs on enumerated parallel vectors. This confluent calculus is defined and a parallel cost model is associated with a weak call-by-value strategy. ..."
Abstract
-
Cited by 9 (8 self)
- Add to MetaCart
The BS#p calculus is a calculus of functional BSP programs on enumerated parallel vectors. This confluent calculus is defined and a parallel cost model is associated with a weak call-by-value strategy.
Parallel Superposition for Bulk Synchronous Parallel ML
, 2003
"... The BSMLlib is a library for Bulk Synchronous Parallel programming with the functional language Objective Caml. It is based on an extension of the l-calculus by parallel operations on a parallel data structure named parallel vector, which is given by intention. ..."
Abstract
-
Cited by 8 (7 self)
- Add to MetaCart
The BSMLlib is a library for Bulk Synchronous Parallel programming with the functional language Objective Caml. It is based on an extension of the l-calculus by parallel operations on a parallel data structure named parallel vector, which is given by intention.
Parallel Juxtaposition for Bulk Synchronous Parallel ML
- Euro-Par 2003, number 2790 in LNCS
, 2002
"... The BSMLlib is a library for Bulk Synchronous Parallel (BSP) programming with the functional language Objective Caml. It is based on an extension of the #-calculus by parallel operations on a parallel data structure named parallel vector, which is given by intention. ..."
Abstract
-
Cited by 7 (5 self)
- Add to MetaCart
The BSMLlib is a library for Bulk Synchronous Parallel (BSP) programming with the functional language Objective Caml. It is based on an extension of the #-calculus by parallel operations on a parallel data structure named parallel vector, which is given by intention.
Semantics of Minimally Synchronous Parallel ML
- 4th International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing (SNPD’03
, 2003
"... This paper presents a new functional parallel language: Minimally Synchronous Parallel ML. The execution time can then be estimated and dead-locks and indeterminism are avoided. It shares with Bulk Synchronous Parallel ML its syntax and high-level semantics but it has a minimally synchronous distrib ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
This paper presents a new functional parallel language: Minimally Synchronous Parallel ML. The execution time can then be estimated and dead-locks and indeterminism are avoided. It shares with Bulk Synchronous Parallel ML its syntax and high-level semantics but it has a minimally synchronous distributed semantics. Programs are written as usual ML programs but using a small set of additional functions. Provided functions are used to access the parameters of the parallel machine and to create and operate on a parallel data structure. It follows the cost model of the Message Passing Machine model (MPM). 1.
A Parallel Virtual Machine for Bulk Synchronous Parallel ML
, 2003
"... Machine [8] (ZAM) which is the virtual machine used in the implementations of the Objective Caml [10] and Caml-light languages and which is very efficient. ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
Machine [8] (ZAM) which is the virtual machine used in the implementations of the Objective Caml [10] and Caml-light languages and which is very efficient.
A Tutorial Implementation of the Diffusion Algorithmic Skeleton with the BSMLlib Library
, 2004
"... Skeleton programming enables programmers to build parallel programs easier by providing efficient ready-made parallel algorithms. The diffusion skeleton was proposed (associated with a method for program derivation) to abstract a good combination of primitive skeletons, such as map, parallel red ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Skeleton programming enables programmers to build parallel programs easier by providing efficient ready-made parallel algorithms. The diffusion skeleton was proposed (associated with a method for program derivation) to abstract a good combination of primitive skeletons, such as map, parallel reduction and parallel prefix sum (scan).
Pattern Matching and Exception Handling for Bulk Synchronous Parallel ML
, 2003
"... The BSML (Bulk Synchronous ML) language is a data-parallel functional language for programming BSP (Bulk Synchronous algorithms) algorithms in so-called direct mode. In a direct mode BSP algorithm, the physical structure of processes is made explicit. The execution time can then be estimated and dea ..."
Abstract
- Add to MetaCart
The BSML (Bulk Synchronous ML) language is a data-parallel functional language for programming BSP (Bulk Synchronous algorithms) algorithms in so-called direct mode. In a direct mode BSP algorithm, the physical structure of processes is made explicit. The execution time can then be estimated and dead-locks and indeterminism are avoided. The BSMLlib library, the current implementation of the BSML language, permits, as an extension of Objective Caml, the use of the exceptions handling mechanism that comes with this language. However, the interaction of Objective Caml exceptions with the BS#-calculus (the theoretical model underlying the BSML language) has not yet been studied and yields some safety issues. In particular, the use of collective synchronization operations needs the participation of all processes during the call to one of these operation, should the opposite occur, processes involved in this call are locked. The BSML language, without exceptions, ensures that all processes participate to such a call and thus that dead-locks are avoided (except for process failure). When one introduces Objective Caml exceptions, this safety property does not hold any more. Thus it is needed to study a new semantics, suitable to exceptions handling, to recover this property. The present work introduces such a semantics in which the participation of all processes is ensured and dead-lock issues are avoided. We will also introduce a semantics allowing the pattern-matching of BSML parallel vectors. This semantics has been studied in the framework of a previous work on exceptions handling which has not been retained here but its functionalities will be nethertheless add to the BSML language.
Communication Primitives for Minimally Synchronous Parallel ML
, 2004
"... Minimally Synchronous Parallel ML is a functional parallel language whose execution time can then be estimated and dead-locks and indeterminism are avoided. ..."
Abstract
- Add to MetaCart
Minimally Synchronous Parallel ML is a functional parallel language whose execution time can then be estimated and dead-locks and indeterminism are avoided.

