Programming

1. "Explicit concurrent tasks" model

  Dedicated object Language primitive Grammar extensions
CC++ . . par{}, parfor{}, spawn
DC++ Instance of DcThread . .
DoPVM . initiate() .
Mercury Instance of Thread . .
Presto Instance of Thread . .

2. "Data oriented" model

  Features
C** Parallel member function defined by user
Composites Group functions
Dome Templates
DPC++ Parallel types
Mentat Data-flow approach
pC++ Parallel member function defined by user
QPC++ Broadcasting for a group

3. "Active objects" model

  Active Object Creation Communication Between Active Objects Granularity
Arjuna Stub mechanism Member function call
Synchronous(RPC)
A
Avalon/C++ Standard C++ Member function call
Synchronous
.
Charm++ new_chare() Explicit message passing
Asynchronous
A
Concurrent C++ create Member function call
Synchronous or asynchronous
.
KAROS Standard C++ Member function call
Asynchronous
.
LITP-C++ Standard C++ Member function call
Synchronous or asynchronous
.
Open C++ Standard C++ Member function call
Synchronous
A
Panda Standard C++ Member function call
Synchronous
B
QPC++ Standard C++ Member function call
Synchronous or asynchronous
B
UC++ activenew Member function call
Asynchronous
A
µC++ Standard C++ Member function call
Synchronous
B

A means 1 active object is mapped on 1 Unix process
B means More than 1 active object can be mapped on a Unix process and 1 or n lightweigth processes will be bounded to each active objects.

Back to Overview homepage


This page is maintained by Nathalie Furmento, Yves Roudier, and Günther Siegel. For all remarks or suggestions, please send us a mail.
Last updated: Wed, Aug 28 1996