pvm
Parallel Virtual Machine console
TLDR
SYNOPSIS
pvm [hostfile]
DESCRIPTION
pvm is the interactive console for the Parallel Virtual Machine (PVM) system. It is itself a PVM task that lets the user start, query, and modify a distributed virtual machine made from a heterogeneous collection of Unix (and Windows) hosts connected by a network.Starting pvm contacts an already-running pvmd3 daemon on the local host, or launches one if none is running. Passing a hostfile additionally adds the listed machines to the virtual machine at startup. Once connected, the console displays a pvm> prompt and accepts interactive commands to manage hosts, tasks, and PVM environment.PVM provides a single logical parallel computer from networked workstations, making it possible to run message-passing parallel programs across them. The console itself does not run parallel code; it is the administration front end.
CONSOLE COMMANDS
add hostname(s)
Add one or more hosts to the virtual machine.alias
Define or list command aliases.conf
List the current virtual machine configuration (hosts, archs, IDs).delete hostname(s)
Remove hosts from the virtual machine.echo args
Echo arguments to the console.export VAR
Add environment variables to the spawn export list.halt
Stop all pvmd daemons and exit PVM.help [command]
Print help for a console command.id
Print the console task ID.jobs
List running jobs.kill task-tid
Terminate a task by its PVM task ID.mstat host
Show status of hosts.pstat task-tid
Show status of a specific task.ps -a
List all PVM tasks.quit
Exit the console (leave the virtual machine running).reset
Kill all PVM tasks.setenv
Display or set environment variables.sig signum task
Send a signal to a task.spawn [options] a.out
Spawn a task. Options: -count (number of copies), -host (target host), -ARCH (architecture).unalias name
Remove an alias.version
Print the PVM version.
HOST FILE
A host file is a newline-separated list of machine names, optionally with per-host options (login name, working directory, architecture). Example:
node1
node2 lo=alice
node3 ep=/opt/pvm3/bin/LINUX
ENVIRONMENT
PVM_ROOT
Root of the PVM installation (e.g. /usr/lib/pvm3).PVM_ARCH
Architecture name used to locate executables (e.g. LINUX64, SUN4SOL2).PVM_TMP
Directory for PVM scratch files (defaults to /tmp).
FILES
$HOME/.pvmrc
Commands executed on console startup./tmp/pvmd.\<uid\>
Socket used to contact the local pvmd daemon./tmp/pvml.\<uid\>
Per-user PVM log file.
CAVEATS
PVM is legacy software: active development stopped in the mid-2000s and it has been effectively superseded by MPI implementations (Open MPI, MPICH) for serious parallel computing. It is still useful for educational contexts and maintenance of older scientific codebases. Default PVM network communication is unauthenticated and unencrypted, so it must only be used inside trusted networks.
HISTORY
PVM was developed starting in 1989 at Oak Ridge National Laboratory, the University of Tennessee, and Emory University by Al Geist, Adam Beguelin, Jack Dongarra, Robert Manchek, Weicheng Jiang, and Vaidy Sunderam. It became the de-facto standard for heterogeneous distributed computing through the 1990s before the MPI standard took over. PVM version 3 is the most widely packaged release.
