The [MPI][] framework allows separate processes in a parallel program
to communicate. The [standards][] are maintained by the [MPI
-Forum][]. There are several implementations, and the main ones are
-[MPICH2][] and [Open MPI][]. I've used both and they are fairly
+Forum][forum]. There are several implementations, and the main ones
+are [MPICH2][] and [Open MPI][]. I've used both and they are fairly
interchangeable.
There are also several [[Python]] bindings for MPI, but the most
[MPI]: http://en.wikipedia.org/wiki/Message_Passing_Interface
[standards]: http://www.mpi-forum.org/docs/
-[MPI Forum]: http://www.mpi-forum.org/
+[forum]: http://www.mpi-forum.org/
[MPICH2]: http://www.mcs.anl.gov/research/projects/mpich2/
[Open MPI]: http://www.open-mpi.org/
[mpi4py]: http://code.google.com/p/mpi4py/
[PBS][] software schedules jobs to efficiently allocate the available
computing resources. It is often used on clusters, allowing users to
queue jobs which are executed once enough worker nodes become
-available. The main open-source PBS implementation is [Tourque],
+available. The main open-source PBS implementation is [Tourque][],
which provides the infrastructure. [Maui][] (also open-source) plugs
into Torque and provides the scheduling logic.