Mache
User's guide
- Quick Start
- Deploying target software
- JIGSAW
- Parallel execution with
mache.parallel- Typical downstream workflow
- Example: build a launcher command
- GPU-per-task flags
- Hyperthreading
- Using this in generated job scripts
- Slurm distribution options
- Selecting scheduler options by node count
- Requesting a specific queue, partition or QOS
- Requesting a target without naming its axis
- Wall-clock limits that depend on job size
- Building and Using Spack Environments with
mache.spack - Synchronize diagnostics between machines (
mache sync diags)
Developer's guide
- Quick Start for Developers
- Contributing to mache
mache.deploydeveloper guide- Goals and boundaries
- Module layout
- Template lifecycle
- Why the double-template files exist
- Which files are target-owned versus generated
- The command-line contract from the maintainer side
- Changing starter-kit generation
- Changing runtime deployment behavior
- Public API surface to keep documented
- Recommended checklist for
mache.deploychanges
- Automated
config_machines.xmlupdates - Adding a New Machine to Mache
- Adding Spack Support for a New Machine
- JIGSAW integration
- Building the Documentation
- Previewing the Documentation
- Releasing a New Version
- API reference