Interactive Single-CPU


We strongly recommend that you try your code first on a single CPU with a minimum number of processes. For instance, if your decomposition is n-way scalable, then perform your initial debugging with n = 1. This will flush out many problems without the added complication of parallelism. At this stage, small test cases are appropriate so that running time is kept short to allow for interactive debugging. If you have installed the Xodus-enabled PGENESIS executable (using "make install"), then using graphical output can also be useful in ensuring that your scripts are functioning correctly.

To try an example script:

  1. Login to the host on which you will run PGENESIS (we assume here that PGENESIS has already been installed).
  2. If you are working remotely using "ssh -X", sometimes you will still need to give rights to the PGENESIS host to use your X-Windows screen, (e.g. type "xhost +hostname" on your local console) and will need to set the $DISPLAY environment variable on the remote host to the "hostname:display_number" of your X-Windows display. If there is an Internet firewall between you and the machines on which you are running PGENESIS, you may need to talk to your system administrator to enable you to use X-Windows remotely.
  3. cd into the  ~pgenesis/Scripts/orient2 directory.
  4. For MPI-based PGENESIS, run "pgenesis -nodes 3 1slice.g"; for PVM-based PGENESIS, run "pgenesis 1slice.g".  This will display all 3 neural populations in a single window (the chart graphs of Orient_tut are omitted for simplicity). Use the control panel to run the simulation, by clicking on either the "sweep_horiz" or "sweep_vert" buttons.
  5. When you are finished, click on the "quit" button and all processes should exit.

In our single slice case, there are actually 3 nodes, since 1 is used for control and 1 for display in addition to the 1 handling the single slice. Here we are running all 3 of these node processes on a single CPU.  See the web page on orient2 for additional details.