pl-mpi(1)                  OpenBSD Reference Manual                  pl-mpi(1)

NAME
     pl-mpi - distributed Prolog environment

SYNOPSIS
     pl-mpi [-pm] [-g goal]

DESCRIPTION
     The pl-mpi utility deploys a Prolog environment with custom predicates
     for distributed computing.  Upon initialisation, it launches either a
     Prolog interactive session or a given target.  One then operates the Pro-
     log session as if launched with the ordinary Prolog interpreter.  pl-mpi
     must be launched within your operating system's MPI environment, likely
     by means of mpirun(1) or similar tool.

     The options are as follows:

     -p       Print debugging messages.

     -m       Print MPI operations.

     -g goal  Execute goal instead of launching an interactive Prolog session.
              Exits when execution completes.

ENVIRONMENT
     Environment variables are not used by the pl-mpi utility itself, but your
     MPI or Prolog installations may make use of them.

EXAMPLES
           mpirun -np 10 pl-mpi
           mpirun -np 10 pl-mpi -g mpidist(test, [1, 2, 3, 4], A, B, C)

HISTORY
     The pl-mpi utility makes obsolete "dnlp", a system for statically
     scheduling the distribution of Prolog predicates amongst participating
     nodes.

AUTHORS
     The pl-mpi utility was developed at the University of Latvia's IMCS by
     Kristaps Dzonsons <kristaps.dzonsons@latnet.lv>.

CAVEATS
     This utility must be executed on at least three MPI nodes (one of which
     is the main Prolog interpreter, one the job arbitrator, and one compute
     node).  Adding additional nodes will increase computing power.

BUGS
     The amount of memory used seems to grow with time, but it's unclear
     whether this is the result of a memory leak in pl-mpi or in the managed
     Prolog library.

SEE ALSO
     mpirun(1), pl(1)

OpenBSD 4.0                    December 22, 2006                             1