CONFIG(3PVM)

NAME
pvm_config - Returns information about the present virtual machine configuration.

SYNOPSIS
C	int info = pvm_config( int *nhost, int *narch, struct pvmhostinfo **hostp )
	struct pvmhostinfo {
		int  hi_tid;
		char *hi_name;
		char *hi_arch;
		int  hi_speed;
	};

Fortran	call pvmfconfig( nhost, narch, dtid, name, arch, speed, info )

PARAMETERS

nhost
    Integer returning the number of hosts (pvmds) in the virtual machine.

narch
    Integer returning the number of different data formats being used.

hostp
    Returns pointer to an array of structures which contain information about each host including its pvmd task ID, name, architecture, and relative speed.

dtid
    Integer returning pvmd task ID for host

name
    Character string returning name of host

arch
    Character string returning architecture name of host

speed
    Integer returning relative speed of host. Default value is 1000.

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

DESCRIPTION
The routine pvm_config returns information about the present virtual machine. The information returned is similar to that available from the console command conf.

The C function returns information about the entire virtual machine in one call. The Fortran function returns information about one host per call and cycles through all the hosts. Thus, if pvmfconfig is called nhost times, the entire virtual machine will be represented.

Note that in C the hostp array is allocated and owned by libpvm. It is automatically freed or reused on the next call to pvm_config.

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

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

EXAMPLES
C:
	struct pvmhostinfo *hostp;
	int i, nhost, narch;

	info = pvm_config( &nhost, &narch, &hostp );
	for (i = 0; i < nhost; i++)
		printf("%s\n", hostp[i].hi_name);

Fortran:
	Do i=1, NHOST
	  CALL PVMFCONFIG( NHOST,NARCH,DTID(i),HOST(i),ARCH(i),SPEED(i),INFO )
	Enddo

ERRORS
The following error condition can be returned by pvm_config

PvmSysErr
    pvmd not responding.

SEE ALSO
pvm_tasks(3PVM)