epmt collects metadata and performance data about shell processes, down to individual threads in individual
processes. Currently, epmt is particularly specialized for interfacing with Slurm batch jobs associated with
earth modeling workflows, but is generalizable to other computational workflow contexts. It also offers
entrypoints to analyzing your data by interfacing with jupyter for easy access to
a notebook-style interface.
| Workflow | Python 3.10 | Python 3.11 |
|---|---|---|
| create_test_conda_env |
| Workflow | SQLite | PostgreSQL |
|---|---|---|
| docker_build_test | ||
| build_and_test_epmt |
These are not-yet fully functional installations, as epmt was designed in an era where virtual environments
were not as ubiquitous as they are today. For full-featured build/installation approaches, consult the
Makefile, .github/workflows, and DEVELOPER.md
The conda installation is currently favored as a quick-start for new users.
conda install noaa-gfdl::epmtThe following creates a whole epmt conda environment with epmt accessible via an editable pip installation.
git clone https://github.com/NOAA-GFDL/epmt.git
cd epmt
conda env create -f environment.yaml
conda activate epmtIf you already have an environment created that you wish to install epmt, and it's already activated:
git clone https://github.com/NOAA-GFDL/epmt.git
cd epmt
pip install src/The check command is a first-stop sanity-check of your epmt installation. Call it with
epmt checkVerify the version:
epmt -VTry wrapping your commands with epmt start / epmt stop:
epmt start
epmt run ./compute_the_world --debug
epmt stop
epmt submitOr use the --auto (-a) flag to automate the start/stop cycle:
epmt -a run ./compute_the_world --debug
epmt submitFor detailed information on configuration, data collection, SLURM integration, database submission, analysis, performance metrics, debugging, and CI/CD, see DEVELOPER.md.