Pyslice provides utility functions for parametric modeling. It creates data sets based on a configuration file and a series of template files, then runs a model against each data set. It tracks each model's progress, keeping the total number of concurrent model runs under a limit established by the user. It is useful for running many model runs on a Beowulf cluster, or for control of the model runs on single processor machines. It can also monitor the model runs through an internal queue, or place the modeling jobs into a queue managed by other software. It is written in Python.
|Tags||Scientific/Engineering Clustering/Distributed Networks|
|Operating Systems||OS Independent|
Release Notes: Windows fixes were made, consisting of removing "close_fds" from the subprocess command (since it is not available on Windows), creating an example/go_windows.bat, and changing the example/pyslice.ini to have an example program to run that is available on both Linux and Windows. More error checking was added using class based exceptions. The setup.py script was fixed so that it should work with easy_install.
Release Notes: Threads are now used rather than os.fork and os.exec, which means that pyslice.py should be able to run on Windows, though this has not been tested. A bunch of code required by the os.fork and os.exec was eliminated, which should make pyslice.py easier to maintain.
Release Notes: The pyslice.conf configuration file was renamed to pyslice.ini so that INI editors will easily recognize the file. os.walk is now used to move through the input templates and directories.
Release Notes: pyspg is now used for the development of the lists of values. Values may now be drawn from any statistical distribution in Python's "random" module. The code is significantly faster due to rewrites and clean-ups.
Release Notes: Dependencies on Python 2.x were removed. frange() was created to allow floating point starts, stops, and steps. Pyslice now works as expected when max_processes is set to zero (it creates the data sets without running the model executable).