Programming in PVM
A simple message-passing environment
- Hosts, Tasks, Messages
- No enforced topology
- Virtual machine can be composed of any mix of machine types
Process Control
- Tasks can be spawned/killed anywhere in the virtual machine
Communication
- Any task can communicate with any other
- Data conversion is handled by PVM
Dynamic Process Groups
- Tasks can join/leave one or more groups at any time
Fault Tolerance
- Task can request notification of lost/gained resources
Underlying operating system (usually Unix) is visible
Supports C, C++ and Fortran
Can use other languages (must be able to link with C)