ADVISE(3PVM)							 ADVISE(3PVM)

NAME
  pvm_advise() - (PVM 3.1) Controls use	of direct task-to-task routing.
  Relaced by pvm_setopt().

SYNOPSIS
  C	  int info = pvm_advise( int route )

  Fortran call pvmfadvise( route, info )

PARAMETERS

  route	  Integer advising PVM to set up direct	task-to-task links.
  route options
	  PvmDontRoute	      1	   Don't allow direct links to this task
	  PvmAllowDirect      2	   Allow but don't request direct links
	  PvmRouteDirect      3	   Request direct links

  info	  Integer returning error status.

DISCUSSION
  The routine pvm_advise advises PVM on	whether	or not to set up direct
  task-to-task links (using TCP) for all subsequent communication. Once	a
  link is established it remains until the application finishes.  If a direct
  link can not be established because one of the two tasks has requested
  PvmDontRoute or because no resources are available, then the default route
  through the PVM daemons is used.  pvm_advise can be called multiple times
  to selectively establish direct links, but is	typically set only once	near
  the beginning	of each	task.  PvmAllowDirect is the default advise setting.
  This setting on task A allows	other tasks to set up direct links to A.
  Once a direct	link is	established between tasks both tasks will use it for
  sending messages.  pvm_advise	returns	the error status in info. The perfor-
  mance	of direct task-to-task links can be up to a factor of two better than
  the default route. The draw back is a	lack of	scalability of the direct
  links.  Some versions	of UNIX	limit the number of links to no	more than 30.

EXAMPLES
  C:
		      info = pvm_advise( PvmRouteDirect	);

  Fortran:
		      CALL PVMFADVISE( PVMROUTEDIRECT, INFO )

ERRORS
  This error condition can be returned by pvm_advise
       PvmBadParam    giving an	invalid	route value.

SEE ALSO
  pvm_setopt(3PVM)


Back to the alphabetical listing