bionic (3) pvm_tasks.3PVM.gz

Provided by: pvm-dev_3.4.6-1build2_amd64 bug

NAME

       pvm_tasks - Returns information about the tasks running on the virtual machine.

SYNOPSIS

       C    int info = pvm_tasks( int where, int *ntask, struct pvmtaskinfo **taskp )

            struct pvmtaskinfo {
            int ti_tid;
            int ti_ptid;
            int ti_host;
            int ti_flag;
            char *ti_a_out;
            } taskp;

       Fortran   call pvmftasks( where, ntask, tid, ptid, dtid, flag, aout, info )

PARAMETERS

       where   Integer specifying what tasks to return information about.  The options are:

                       0      for all the tasks on the virtual machine
                    pvmd tid  for all tasks on a given host
                      tid     for a specific task

       ntask   Integer returning the number of tasks being reported on.

       taskp   Returns pointer to an array of structures which contain information about each task including its
               task ID, parent tid, pvmd task ID, status flag, and the name of this task's executable file.  The
               status flag values are: waiting for a message, waiting for the pvmd, and running.

       tid     Integer returning task ID of one task

       ptid    Integer returning parent task ID

       dtid    Integer returning pvmd task ID of host task is on.

       flag    Integer returning status of task

       aout    Character string returning the name of spawned task.  Manually started tasks return blank.

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

DESCRIPTION

       The  routine  pvm_tasks  returns  information  about tasks presently running on the virtual machine.  The
       information returned is the same as that available from the console command ps.  The C  function  returns
       information  about the entire virtual machine in one call. The Fortran function returns information about
       one task per call and cycles through all the tasks.  Thus, if where = 0, and pvmftasks  is  called  ntask
       times, all tasks will be represented.

       Note  that  in  Fortran the reported value of ntask and the set of tasks do not change until the function
       resets at the end of a complete cycle.  The user can reset pvmftasks() at any time  by  calling  it  with
       ntask = -1.

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

EXAMPLES

       C:
            struct pvmtaskinfo *taskp;
            int i, ntask;

            info = pvm_tasks( 0, &ntask, &taskp );
            for (i = 0; i < ntask; i++)
                      printf("t%x\n", taskp[i].ti_tid);
       Fortran:
            Do i=1, NTASK
                CALL PVMFTASKS( DTID, NTASK, TID(i), PTID(i), DTID(i),
            &                  FLAG(i), AOUT(i), INFO )
            EndDo

ERRORS

       The following error condition can be returned by pvm_tasks

       PvmBadParam
              invalid value for where argument.

       PvmSysErr
              pvmd not responding.

       PvmNoHost
              specified host not in virtual machine.

SEE ALSO

       pvm_config(3PVM), pvm_tidtohost(3PVM)

                                                 31 August, 1994                                     TASKS(3PVM)