A lab bench for computational experiments
Jandy is a program for managing multiple runs of scientific software. It facilitates running a program a number of times, perhaps with different combinations of input parameters, and keeps track of the outputs produced from each run in a database. Runs may be computed in parallel on a cluster. Jandy can produce some plots from the collection of inputs and outputs (aggregated from many runs).
Jandy is specifically designed to manage Java programs; but programs written in other languages can also be managed by writing a simple wrapper.
In the case of Java programs, Jandy solves the problem of distributing configuration parameters throughout a complex application, through the use of runtime parameter injection. This makes it easy, for instance, to sweep over a parameter of some plugin buried deep in the object graph, distant from the program entry point.
- FAQ? (including Caveats)
Provisional Documentation
Manual (in progress)
- Introduction?
- Quick Start?
- Write a plugin
- Install the plugin (classpath issues)
- Queue up runs
- Run the client
- Plot runs
- Principles of Operation?
- Configuration Options?
- Future Improvements?
Developer Documentation
- API docs (jandy only)
- Aggregate API docs (all projects hosted here; useful for navigating cross-package dependencies)
Download
A user-friendly package is not yet available.
You can get the latest stable build from the continuous integration server.
You can also browse the source, or get the source with svn:
svn co http://svn.davidsoergel.com/repos/jandy/trunk jandy
Support
- Discussion Forum
- Feel free to email me any questions or comments
- For bug reports or feature requests, please create a ticket (you'll need to create an account and login first).
- view active tickets
