A set of tools for running simulation using vivarium on cluster.
Project description
Vivarium cluster tools is a python package that makes running vivarium simulations at scale on a Univa Grid Engine cluster easy.
Installation
You can install this package with
pip install vivarium-cluster-tools
In addition, this tool needs the redis client. This must be installed using conda.
conda install redis
A simple example
If you have a vivarium model specifcation file defining a particular model, you can use that along side a branches file to launch a run of many simulations at once with variations in the input data, random seed, or with different parameter settings.
psimulate run /path/to/model_specification.yaml /path/to/branches_file.yaml
The simplest branches file defines a count of input data draws and random seeds to launch.
input_draw_count: 25
random_seed_count: 10
This branches file defines a set of simulations for all combinations of 25 input draws and 10 random seeds and so would run, in total, 250 simulations.
You can also define a set of parameter variations to run your model over. Say your original model specification looked something like
plugins:
optional: ...
components:
vivarium_public_health:
population:
- BasePopulation()
- Mortality()
disease.models:
- SIS('lower_respiratory_infections')
my_lri_intervention:
components:
- GiveKidsVaccines()
configuration:
population:
population_size: 1000
age_start: 0
age_end: 5
lri_vaccine:
coverage: 0.2
efficacy: 0.8
Defining a simple model of lower respiratory infections and a vaccine intervention. You could then write a branches file that varied over both input data draws and random seeds, but also over different levels of coverage and efficacy for the vaccine. That file would look like
input_draw_count: 25
random_seed_count: 10
branches:
lri_vaccine:
coverage: [0.0, 0.2, 0.4, 0.8, 1.0]
efficacy: [0.4, 0.6, 0.8]
The branches file would overwrite your original lri_vaccine configuration with each combination of coverage and efficacy in the branches file and launch a simulation. More, it would run each coverage-efficacy pair in the branches for each combination of input draw and random seed to produce 25 * 10 * 5 * 3 = 3750 unique simulations.
To read about more of the available features and get a better understanding of how to correctly write your own branches files, check out the vivarium cluster tools documentation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for vivarium_cluster_tools-1.4.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95beec743ac15ffa8ea717009aba87a5a6cfc37cd8328c16491213dbc1f47428 |
|
MD5 | d2cbadfc64bac9e030ce02f4852883ac |
|
BLAKE2b-256 | 40cd15c4a1189b9ec93f90f7efd43318bcc147dd39de0eb0989c95ad66d6ad9f |
Hashes for vivarium_cluster_tools-1.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1653593a93184d698668b7de2f0cab241da6b833fee5ba0d19aa3209b23a6cd3 |
|
MD5 | 917a6d5c3eeb2d74eae2cee9858b48e6 |
|
BLAKE2b-256 | 1fd0a5587e0e64589a187aa57d103293c211d6f2a9578f3d39737ff6dffa9101 |