Next: Charisma Interface Model
Up: Related Work
Previous: Chant
  Contents
Data Movement and Control Substrate (DMCS [19]) is an implementation of
the API for communication and computation proposed by the PORTS consortium.
DMCS consists of 3 subpackages:
- Threads
- This provides a non-preemptive user-level threads package for
thread creation and initialization. Two levels of priority can be assigned to a
thread - low and high priority. Converse supports user-defined number of
priority levels.
- Communication
- This is implemented on top of a generic active message
implementation on the SP2. Communication in DMCS is based on ``Get'' and
``Put'' operations on global pointers. In addition, asynchronous get and put
operations are supported using acknowledgment variables. Global pointers, as
well as other DMCS communication primitives can easily be implemented on
Converse, using message handlers that get and put data from registered areas
of memory upon arrival of a message.
- Control
- This is layered on top of the threads and the communication
subpackage. It consists of 2 modules: Remote Service Requests (RSR) and Load
balancing. RSRs are similar to Converse invocation of remote handlers,
except that the RSRs can be asked to be executed in a separate thread whose
priority is specified at the time of creating an RSR. Load balancing support in
DMCS is similar to Converse's ``seed-based'' load balancer, which allows
creation of remote work on the lightly loaded processor. There is no parallel
to the migration-based load balancing provided by Converse.
Next: Charisma Interface Model
Up: Related Work
Previous: Chant
  Contents
Milind Bhandarkar
2002-06-12