REG_RM(3PVM)							 REG_RM(3PVM)

NAME
  pvm_reg_rm - Register	task as	PVM resource manager.

SYNOPSIS
  C	  #include <pvmsdpro.h>

	  int cc = pvm_reg_rm( struct pvmhostinfo **hip	)
	  struct pvmhostinfo {
		  int  hi_tid;
		  char *hi_name;
		  char *hi_arch;
		  int  hi_speed;
	  };

  Fortran Not Available

PARAMETERS

  hostp
       Returns pointer to a pvmhostinfo	structure which	contains information
       about the master	host.

DISCUSSION

  Registers the	calling	task as	a PVM task and slave host manager.  This
  means	it intercepts certain libpvm calls from	other tasks in order to	have
  a say	in scheduling policy.  The resource manager will asynchronously
  receive messages from	tasks containing requests for service, as well as
  messages from	pvmds notifying	it of system failures.

  Before you start using this function,	be warned that it's not	a trivial
  thing, i.e. you can't	just call it to	turn off the default round-robin task
  assignment.  Rather, it allows you to	write your own resource	manager	and
  hook it to PVM.

  To understand	what the following messages mean, you should refer to the PVM
  source code and/or user guide	section	on implementation; There's just	too
  much to say about them.

  When one of the following libpvm functions is	called in a task with
  resource manager set,	the given message tag is sent to to resource manager.

      Libpvm call	    RM message	      Normal message
      pvm_addhosts()	    SM_ADDHOST	      TM_ADDHOST
      pvm_config()	    SM_CONFIG	      TM_CONFIG
      pvm_delhosts()	    SM_DELHOST	      TM_DELHOST
      pvm_notify()	    SM_NOTIFY	      TM_NOTIFY
      pvm_spawn()	    SM_SPAWN	      TM_SPAWN
      pvm_tasks()	    SM_TASK	      TM_TASK
      pvm_reg_rm()	    SM_SCHED	      TM_SCHED

  The resource manager must in turn compose the	following messages and send
  them to the pvmds:

      RM message	Normal message
      SM_EXEC		DM_EXEC
      SM_EXECACK	DM_EXECACK
      SM_ADD		DM_ADD
      SM_ADDACK		DM_ADDACK
      SM_HANDOFF	(none -	change of resource manager)

  The following	messages are sent asynchronously to the	resource manager by
  the system:

      RM message	Meaning
      SM_TASKX		notify of task exit/fail
      SM_HOSTX		notify of host delete/fail

  The resource manager task must use pvm_setopt(PvmResvTids, 1)	to allow
  sending reserved messages.  Messages must be packed using data format
  PvmDataFoo.

  pvm_reg_rm() returns PvmOk when successful.

SEE ALSO
  pvm_addhosts(3PVM), pvm_config(3PVM),	pvm_delhosts(3PVM), pvm_notify(3PVM),
  pvm_spawn(3PVM), pvm_tasks(3PVM)


Back to the alphabetical listing
Back to the listing of routines for advanced and group functions