Skip to main content

SlurmGen - Simple Slurm Manager

Project description

SlurmGen - Simple Slurm Manager

Summary

SlurmGen is a very simple Slurm manager:

  • The job description is stored in JSON files.
  • The JSON files are transformed into Slurm scripts.
  • The Slurm script can be run locally or on a Slurm Cluster.

SlurmGen is only supporting a small subset of Slurm:

  • Create and delete folders.
  • Set environment variables.
  • Set the job name and log.
  • Set the ressources (memory, time, CPU, etc.).
  • Define the set of commands to be executed.

SlurmGen is not a binding and/or a wrapper for Slurm. SlurmGen is only generating Slurm scripts from JSON files. SlurmGen is written in Python without any external dependencies.

Example

An example is located in the example folder of the repository:

  • job_def.json contains the job definition
  • job_tmpl.json contains the template data
  • run_slurm.py contains is dummy script executed by the jon
  • slurm_output contains the generated Slurm script and log file
  • data_output contains data generated by the Slurm job
# Create a Slurm script with a command line template.
sgen job_def.json --tmpl_str "{'title': 'test', 'var': 'Welcome to everyone'}"

# Create a Slurm script with a JSON file template.
sgen job_def.json --tmpl_file job_tmpl.json

# Create a Slurm script and run the job locally.
sgen job_def.json --local --tmpl_file job_tmpl.json

# Create a Slurm script and run the job on the cluster.
sgen job_def.json --cluster --tmpl_file job_tmpl.json

Project Links

Author

Copyright

(c) 2023 - Thomas Guillod

BSD 2-Clause "Simplified" License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

slurmgen-2.1.0.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

slurmgen-2.1.0-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

Details for the file slurmgen-2.1.0.tar.gz.

File metadata

  • Download URL: slurmgen-2.1.0.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for slurmgen-2.1.0.tar.gz
Algorithm Hash digest
SHA256 8d351dadb76efef72a289884d88939ac4d447705cf31c3ec3224ce6c4bfd9159
MD5 69996006aeb5eae44c8671a67e5a1127
BLAKE2b-256 f794f9e544a8c89fc66e4d23d052cbffd0ddadb9143fe714ee8a5d4307634939

See more details on using hashes here.

File details

Details for the file slurmgen-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: slurmgen-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for slurmgen-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d5fb791e178e3b3bcb31388ce7c1079a808689b96c9b071d37ccf7976dca2b88
MD5 a373d865428e7094fba203a9b67f8d01
BLAKE2b-256 408ed48e25675edac2be5a77d37b90274e087dc0760427011361033c3e4b4af9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page