p4 is a library of macros and subroutines developed at Argonne National Laboratory for programming a variety of parallel machines in C and Fortran. Its predecessor was the m4-based "Argonne macros" system described in the Holt, Rinehart, and Winston book "Portable Programs for Parallel Processors, by Lusk, Overbeek, et al., from which p4 takes its name. The current p4 system maintains the same basic computational models described there (monitors for the shared-memory model, message-passing for the distributed-memory model, and support for combining the two models) while significantly increasing ease and flexibility of use.
The current release is version 1.3. Features include:
A useful companion system is the Upshot logging and X-based trace examination facility. The macros to create logs are included in p4. Upshot (an X program for graphically displaying the logs) is in file upshot.tar.Z.
The complete distribution of p4 is in the file p4-1.3.tar.Z. The distribution contains all source code, installation instructions, a User's Guide in both ascii text and latexinfo format, and a collection of examples in both C and Fortran. A copy of the postscript for the manual is available separately as p4-manual.ps.Z. An article on p4 is available in p4-paper.ps.Z. There are a few features that are not implemented on certain machines. See the machine-specific section of the manual for details.
To go to the p4 home page at Argonne, which includes on-line searchable HTML versions of the User's Guide and the article on p4, click here.
To ask questions about p4, report bugs, contribute examples, etc., send mail to p4@mcs.anl.gov. To subscribe to a list to receive announcements about new releases and bug fixes, send your request to the same place, p4@mcs.anl.gov.
file p4-manual.ps for The postscript for the p4 User's Guide size 275 kB file p4-refcard.ps for A reference card for the p4 functions # The following files are available only by ftp, not by email file p4-1.3.tar.Z for programming a variety of parallel machines in C and Fortran size 380 kB file upshot.tar.Z for The upshot logfile visualization system size 345 kB file p4-paper.ps.Z for A journal article on p4 size 282 kB file readme