Parallel Computing with MPI
Getting started
The first step is to get to the place where you can
run the "hello world" level program
test0.hoc
by launching in a terminal window with
mpiexec -n 4 nrniv -mpi test0.hoc
and see the output
...
I am 1 of 4
I am 3 of 4
I am 0 of 4
I am 2 of 4
MSWIN
The NEURON setup installer has already put all the required software on
your machine to use MPI.
1) start a bash terminal window
2) launch the program (mpiexec command above) in the directory containing
test0.hoc (or give a full path to test0.hoc)
Mac OS X and Linux
Unfortunately MPI can't be a part of the binary installation because I
don't know if, which, or where MPI was installed on your machine. So you
have to install MPI yourself, check that it works, and build NEURON from the
sources with the configure option '--with-paranrn'. See the "installing
and testing MPI" section of the Hines and Carnevale (2008) paper, "Translating
network models to parallel hardware in NEURON", J. Neurosci. Meth. 169:
425-465. The paper is reprinted in your handout booklet. Or see
the ModelDB entry
Going further
The ring model from the
above
ModelDB entry is a good next step. See also the documentation for the
ParallelContext
class, especialy the subset of methods gathered under the
ParallelNetwork
heading. A large portion of the
ParallelNetManager wrapper
is better off done directly from the underlying ParallelContext
though it can be mined for interesting pieces. A good place to find the
most recent idioms is the NEURON implementation of the Vogels and Abbott model
found in the
Brette et al. ModelDB entry.
However, to run in parallel, the NetCon delay between cells needs to be set greater
than zero.
NEURON hands-on course
Copyright © 1998-2016 by N.T. Carnevale and M.L. Hines,
all rights reserved.