2. Parallel programming in the parallel virtual
machine(pvm)
Parallel virtual machine(pvm) was originally developed at oak ridge national
laboratory and the University of tennessee.
Possible to develop applications on a set of heterogeneous computer connected
by a network logically to the user as a single parallel computer.
Interoperability among different heterogeneous computer is a major advantage in
pvm.
A pvm applications is made from a number of task that cooperate to jointly
provide a solution to a single problem.
3. Pvm Environment And Application
Structure
The computer nodes in the network are called hosts, which could be uniprocessor,
multiprocessor systems, or clusters running in pvm software.
Pvm has two components:
1. A library of pvm routines,
2. A Daemon that should reside on all the hosts in the virtual machine.
Pvm console allows the user to interactively start and then alter the virtual machine
at any time during system operation.
Pvm application is composed of a number of sequential programs, each of which
will correspond to one or more processes in a parallel program.
One of these sequential programs, which is called the initiating task, has to be
started manually on one of the hosts.
4. This model of parallel programming is SPMD, which stands for single program
multiple data.
A pipeline of parallel task that perform input, processing, and output is an example
of parallel task that are performing different function.
One of the most common structure is the star graph in which the middle node in
the star is called the supervisor and the rest of the nodes are workers.
The star Structure is often referred to as a supervisor – workers or a master – slaves
model. In this model, the supervisor is the initiating task that activates all the
workers.
The terms supervisor-workers and hierarchy to refer to the star and the tree
structure.
5. Supervisor-Workers Structure
Only one level of hierarchy in this structure : one supervisor and many workers.
The workers, which are also called slaves, are activates the supervisor to perform
calculations.
The workers may or may not be independent. If they are not independent.
6.
7. Hierarchy Structure
The hierarchy Structure allows the workers to create new levels of workers.
The top-level supervisor is the initiating task, which creates a set of workers at the
second level.
The leaves of the tree are the workers at the lowest level. This structure matches
very well with the organizational of divide and conquer applications.
Dashed edges in the tree signify a parent – child relationship between the task.