A package for submitting benchmarking scripts on OSCAR.
Project description
SlurmJobSubmitter Python Package
Overview
This Python package submits jobs to a Slurm scheduler. The general configuration for jobs reside in config.yaml, whereas run-to-run configuration resides in run_config.csv.
Running MLPerf Jobs
1. General Job Configuration
Configure the job parameters you need for the specific MLPerf job in config.yaml. You can set configurations for several model, benchmark, backend, and architecture combinations. You need to specify:
- SBATCH parameters
- Path to the Apptainer image container
- CM-command parameters
- Path to the dataset
The following diagram is the structure of the config.yaml file.
# General script parameters
# Architecture-specific parameters
arch:
arch-1:
# SBATCH parameters
param-1:
param-2:
...
# Apptainer image path
container_image:
arch-2:
# Model-specific parameters
model:
resnet50:
# CM parameters
cm-param-1:
cm-param-2:
...
# Path to dataset
data_path:
Example
Here is an example of a valid YAML configuration.
# General script parameters
destination: "./"
num_runs: 1
# Architecture-specific parameters
arch:
arm64-gracehopper: &arch_config
# SBATCH parameters
nodes: 1
partition: "gracehopper"
gres: "gpu:1"
account: "ccv-gh200-gcondo"
ntasks_per_node: 1
memory: "40G"
time: "01:00:00"
error_file_name: "%j.err"
output_file_name: "%j.out"
# Apptainer image path
container_image: "/oscar/data/shared/eval_gracehopper/container_images/MLPerf/arm64/mlperf-resnet-50-tf-arm64"
# Model-specific CM parameters
model:
resnet50: &model_config
# CM parameters
hw_name: "default"
implementation: "reference"
device: "cuda"
scenario: "Offline"
adr.compiler.tags: "gcc"
target_qps: 1
category: "edge"
division: "open"
# Path to dataset
data_path: "/oscar/data/ccvinter/mstu/gracehopper_eval/data/imagenet/ILSVRC2012/val"
2. Run-Specific Parameters
You can set run-specific parameters (run ID, model, benchmark, backend, architecture, gpu node) for each MLPerf benchmark configuration you want to run.
RUN_ID,BENCHMARK,MODEL,BACKEND,ARCH,NODE
1,MLPerf-Inference,resnet50,tf,arm64-gracehopper,gpu2701
3. Calling the Package
Developers
If you are developing to add features for a new kind of Slurm job, you should write a derived class from the ABC for both script generation and job submitting.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file oscar_benchmarking-0.1.0.tar.gz.
File metadata
- Download URL: oscar_benchmarking-0.1.0.tar.gz
- Upload date:
- Size: 132.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e46f3b719a3ef39870a0d3c4d493c8bdf72efecb5ae9d824f12c485fff05cb9b
|
|
| MD5 |
3864029813c18bb57f112de97bb8006a
|
|
| BLAKE2b-256 |
cddd668040cf62046e330f4124ee594e44481337eb66d89720abe14ec0ed2813
|
File details
Details for the file oscar_benchmarking-0.1.0-py3-none-any.whl.
File metadata
- Download URL: oscar_benchmarking-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6f2ad1d3fdf6bd32f5bf5061e9bbcd9c1a67288e498c34d0e6e73bb237c977c
|
|
| MD5 |
aa759a7aa0c0939d986077c9a4a68dcd
|
|
| BLAKE2b-256 |
1dac78e1cf8e888a981ae51fc1b699b61939b002bab18441808212776c405559
|