Parallel SWEEP v2


Rewritten/updated from SWEEP below, so that it has features:

  • All data read/written to HDF5 file to keep it all in one place. Prevents lots of hits to filesystem on e.g. LUSTRE distributed file systems that don't like that sort of thing.
  • Memory can be passed to farmed workers via a memory filesystem.
  • User can specify parallel parameter sets (models that can be run in parallel), and in serial, via a scripting language. User can thus run sweeps without using any C/C++.
  • Commands can be given as names of C/C++ functions (if you coded in that), to prevent hits to LDAP server.

Supported systems: Linux supercomputers/clusters. It may work on other systems.

HDF5 C++; MPI; C++11; BOOST-MPI, BOOST (for variable/variants, and serialization); BOOST-QI, BOOST-SPIRIT (for script parser)


(N)eural (SIM)ulator for (e)mbodied (r)obotics Applications

NSIMer (originally just NSIM) is a software library I have written and use for the real-time simulation of (often spiking) neural circuits and their applications (see projects page). Currently it is in Version 3(fast), and it is still primarily used in-house. Version 4 will be significantly more user-friendly and is expected to be released in mid-late 2015 (apologies for the delays...). You can download NSIM V3(fast) along with example projects HERE (coming soon).

Supported systems: Linux. It is also possible to run it on OSX though there are timing/visualization issues involving OSX's windower not allowing visualization to happen outside the main thread (which is how NSIMer is currently coded).

Dependencies: libopencv (for runtime visualization of networks), libgsl (for fast random calculations as well as for regression techniques for LSM modules), naoqi (for use with nao robot), yarp/iCubSim (for use with iCub robot/simulator), Xitome libraries (for use with MDS robot/simulator).


SWEEP (for lack of a better name) is a C++ software package I wrote that automatically farms out work to do parameter sweeps on arbitrary models. The methods include Grid sweeps, DE MCMC, DREAM, MT-DREAM-z and most recently DREAM-ABC

Supported systems: Linux. Mostly written to run on Big Red II supercomputer at Indiana, but should work on any system that can run MPI.

Dependencies: libgsl