[Swift-devel] Example files for MATLAB parameter sweep

Michael Wilde wilde at mcs.anl.gov
Sun Feb 26 12:43:30 CST 2012


Hi Lorenzo and Albert,

You can find a new tutorial example of a parameter sweep by following the README at:

  https://svn.ci.uchicago.edu/svn/vdl2/trunk/examples/tutorial/ParameterSweep/README

(which is also pasted below).

This is a simple example which you can run on any local host (e.g. sandbox.beagle) after you do "module load swift".

Over time we will add this to the Swift tutorial document, test it, etc.

Lorenzo: this is meant to give you and Albert a base example (non-MATLAB) from which you can create the MATLAB example(s).  Ideally we will grow this into a tutorial sequence that shows a few useful variations of organizing a parameter sweep or ensemble of simulations, including passing parameters only via files, or via a combination of Swift variables and files. We welcome your help in developing this, starting with the MATLAB version of it.  The first thing for that would be to develop the MATLAB replacements for gensweep.sh and simulate.sh.  These two "apps" are meant to be stand-ins for the equivalent MATLAB programs. They use a simple two-column "name value" file format to simulate a .mat file.

I'll add you to the Swift committers list so you can place anything you add in SVN.

David: this doesn't yet use gensites. Can we add gensites without adding any complexity to the sweep.sh script?  Or do we want a version with and without?  Hopefully only with.

We should extend to use PADS, Fusion, Beagle, MCS servers, FutureGrid, TrySwift, and more.

Can you start adding this to the tutorial asciidoc?

Jon: I simplified the handling of run dir creation. Maybe we can refit this into swiftopt.sh?

We can do this as a collaborative exercise because the result will be of great benefit to all new Swift users, MATLAB and non-MATLAB alike. In fact we should do a version of it for Python, Octave, MATLAB, and R.

Regards,

- Mike

$ cat README

This directory contains an example of running a "parameter sweep" or
"ensemble" of N simulations or "members".

To run:

  # make sure Swift 0.93 or trunk is in your $PATH

  svn co https://svn.ci.uchicago.edu/svn/vdl2/trunk/examples/tutorial/ParameterSweep
  cd ParameterSweep

  ./sweep.sh    # Runs default sweep of 5 members with 3 common data/parameter files

  ./sweep.sh -nMembers=20 -nCommon=2 # 20  members with 2 common data/parameter files

  # Each run is executed in a new unique runNNN directory: run001, run002, ...

  # tc, sites file (local.xml), and Swift properties files (cf) are generated by sweep.sh
$ 


-- 
Michael Wilde
Computation Institute, University of Chicago
Mathematics and Computer Science Division
Argonne National Laboratory




More information about the Swift-devel mailing list