Provided by: pvm-dev_3.4.6-3.2_amd64 bug

NAME

       pvm_barrier - Blocks the calling process until all processes in a group have called it.

SYNOPSIS

       C    int info = pvm_barrier( char *group, int count )

       Fortran   call pvmfbarrier( group, count, info )

PARAMETERS

       group   Character string group name. The group must exist and the calling process must be a member of the
               group.

       count   Integer  specifying  the  number  of group members that must call pvm_barrier before they are all
               released. Though not required, count is expected to  be  the  total  number  of  members  of  the
               specified group.

       info    Integer status code returned by the routine.  Values less than zero indicate an error.

DESCRIPTION

       The  routine  pvm_barrier  blocks  the  calling  process  until  count  members  of the group have called
       pvm_barrier.  The count argument is required because processes could be joining  the  given  group  after
       other  processes have called pvm_barrier. Thus PVM doesn't know how many group members to wait for at any
       given instant. Although count can be set less, it is typically the total number of members of the  group.
       So  the logical function of the pvm_barrier call is to provide a group synchronization.  During any given
       barrier call all participating group members must call barrier with the same count value.  Once  a  given
       barrier  has  been  successfully passed, pvm_barrier can be called again by the same group using the same
       group name.

       If pvm_barrier is successful, info will be 0. If some error occurs then info will be < 0.

EXAMPLES

       C:
            inum = pvm_joingroup( "worker" );
                    .
                    .
            info = pvm_barrier( "worker", 5 );

       Fortran:
            CALL PVMFJOINGROUP( "shakers", INUM )
            COUNT = 10
            CALL PVMFBARRIER( "shakers", COUNT, INFO )

ERRORS

       These error conditions can be returned by pvm_barrier

       PvmSysErr
              pvmd was not started or has crashed.

       PvmBadParam
              giving a count < 1.

       PvmNoGroup
              giving a non-existent group name.

       PvmNotInGroup
              calling process is not in specified group.

SEE ALSO

       pvm_joingroup(3PVM)

                                                 30 August, 1993                                   BARRIER(3PVM)