libgpvm3.a
int inum = pvm_joingroup (char *group)
call pvmfjoingroup (group, inum)
int info = pvm_lvgroup (char *group)
call pvmflvgroup (group, info)
pvm_joingroup()
creates a group with
name group
pvm_joingroup()
returns the instance number (inum
)
of the process in this group
int tid = pvm_gettid (char *group, int inum)
call pvmfgettid (group, inum, tid)
tid
of the process with a given group name
and instance number
int inum = pvm_getinst (char *group, int tid)
call pvmfgetinst (group, tid, inum)
tid
in the
specified group
int size = pvm_gsize (char *group)
int info = pvm_barrier (char *group, int count)
call pvmfbarrier (group, count, info)
count
member of the
group have call pvm_barrier()
count
should be the total number of
members of the group
count
is required because of the dynamic aspect of
PVM groups
count
count
is set to -1, PVM uses the value of
pvm_gsize()
. Useful if the group is not changing.
inum = pvm_joingroup ("worker") ; ... info = pvm_barrier ("worker", pvm_gsize ("worker")) ;
int info = pvm_bcast (char *group, int msgtag)
call pvm_bcast (group, msgtag, info)
msgtag
info = pvm_initsend (PvmDataRaw) ; info = pvm_pkint (array, 10, 1) ; msgtag = 5 ; pvm_bcast ("worker", msgtag) ;