From 999326de39bcf4e5560b1472a612c5495387d2a3 Mon Sep 17 00:00:00 2001 From: Juri Dispan Date: Mon, 18 Dec 2023 23:53:21 +0100 Subject: [PATCH] salloc, sattach, sbcast, sdiag, sprio, sshare, strigger, sview, sh5util, scrun, scrontab: add pages (#11651) --- pages/linux/salloc.md | 16 ++++++++++++++++ pages/linux/sattach.md | 16 ++++++++++++++++ pages/linux/sbcast.md | 13 +++++++++++++ pages/linux/scrontab.md | 24 ++++++++++++++++++++++++ pages/linux/sdiag.md | 20 ++++++++++++++++++++ pages/linux/sh5util.md | 16 ++++++++++++++++ pages/linux/sprio.md | 24 ++++++++++++++++++++++++ pages/linux/sshare.md | 20 ++++++++++++++++++++ pages/linux/strigger.md | 25 +++++++++++++++++++++++++ pages/linux/sview.md | 8 ++++++++ 10 files changed, 182 insertions(+) create mode 100644 pages/linux/salloc.md create mode 100644 pages/linux/sattach.md create mode 100644 pages/linux/sbcast.md create mode 100644 pages/linux/scrontab.md create mode 100644 pages/linux/sdiag.md create mode 100644 pages/linux/sh5util.md create mode 100644 pages/linux/sprio.md create mode 100644 pages/linux/sshare.md create mode 100644 pages/linux/strigger.md create mode 100644 pages/linux/sview.md diff --git a/pages/linux/salloc.md b/pages/linux/salloc.md new file mode 100644 index 000000000..cd5d71ead --- /dev/null +++ b/pages/linux/salloc.md @@ -0,0 +1,16 @@ +# salloc + +> Start an interactive shell session or execute a command by allocating one or more nodes in a cluster. +> More information: . + +- Start an interactive shell session on a node in the cluster: + +`salloc` + +- Execute the specified command synchronously on a node in the cluster: + +`salloc {{ls -a}}` + +- Only allocate nodes fulfilling the specified constraints: + +`salloc --constraint={{(amd|intel)&gpu}}` diff --git a/pages/linux/sattach.md b/pages/linux/sattach.md new file mode 100644 index 000000000..29d73ac75 --- /dev/null +++ b/pages/linux/sattach.md @@ -0,0 +1,16 @@ +# sattach + +> Attach to a Slurm job step. +> More information: . + +- Redirect the IO streams (`stdout`, `stderr`, and `stdin`) of a Slurm job step to the current terminal: + +`sattach {{jobid}}.{{stepid}}` + +- Use the current console's input as `stdin` to the specified task: + +`sattach --input-filter {{task_number}}` + +- Only redirect `stdin`/`stderr` of the specified task: + +`sattach --{{output|error}}-filter {{task_number}}` diff --git a/pages/linux/sbcast.md b/pages/linux/sbcast.md new file mode 100644 index 000000000..16da03168 --- /dev/null +++ b/pages/linux/sbcast.md @@ -0,0 +1,13 @@ +# sbcast + +> Send a file to a job's allocated nodes. +> This command should only be used from within a Slurm batch job. +> More information: . + +- Send a file to all nodes allocated to the current job: + +`sbcast {{path/to/file}} {{path/to/destination}}` + +- Autodetect shared libraries the transmitted file depends upon and transmit them as well: + +`sbcast --send-libs={{yes}} {{path/to/executable}} {{path/to/destination}}` diff --git a/pages/linux/scrontab.md b/pages/linux/scrontab.md new file mode 100644 index 000000000..c97abbb1f --- /dev/null +++ b/pages/linux/scrontab.md @@ -0,0 +1,24 @@ +# scrontab + +> Manage Slurm crontab files. +> More information: . + +- Install a new crontab from the specified file: + +`scrontab {{path/to/file}}` + +- [e]dit the crontab of the current user: + +`scrontab -e` + +- [e]dit the crontab of the specified user: + +`scrontab --user={{user_id}} -e` + +- [r]emove the current crontab: + +`scrontab -r` + +- Print the crontab of the current user to `stdout`: + +`scrontab -l` diff --git a/pages/linux/sdiag.md b/pages/linux/sdiag.md new file mode 100644 index 000000000..5f5df241a --- /dev/null +++ b/pages/linux/sdiag.md @@ -0,0 +1,20 @@ +# sdiag + +> Show information about the execution of `slurmctld`. +> More information: . + +- Show all performance counters related to the execution of `slurmctld`: + +`sdiag --all` + +- Reset performance counters related to the execution of `slurmctld`: + +`sdiag --reset` + +- Specify the output format: + +`sdiag --all --{{json|yaml}}` + +- Specify the cluster to send commands to: + +`sdiag --all --cluster={{cluster_name}}` diff --git a/pages/linux/sh5util.md b/pages/linux/sh5util.md new file mode 100644 index 000000000..50dc25a21 --- /dev/null +++ b/pages/linux/sh5util.md @@ -0,0 +1,16 @@ +# sh5util + +> Merge HDF5 files produced by the `sacct_gather_profile` plugin. +> More information: . + +- Merge HDF5 files produced on each allocated node for the specified job or step: + +`sh5util --jobs={{job_id|job_id.step_id}}` + +- Extract one or more data series from a merged job file: + +`sh5util --jobs={{job_id|job_id.step_id}} --extract -i {{path/to/file.h5}} --series={{Energy|Filesystem|Network|Task}}` + +- Extract one data item from all nodes in a merged job file: + +`sh5util --jobs={{job_id|job_id.step_id}} --item-extract --series={{Energy|Filesystem|Network|Task}} --data={{data_item}}` diff --git a/pages/linux/sprio.md b/pages/linux/sprio.md new file mode 100644 index 000000000..aafcdcda7 --- /dev/null +++ b/pages/linux/sprio.md @@ -0,0 +1,24 @@ +# sprio + +> View the factors determining a job's scheduling priority. +> More information: . + +- View the factors determining the scheduling priority of all jobs: + +`sprio` + +- View the factors determining the specified job's scheduling priority: + +`sprio --jobs={{job_id_1,job_id_2,...}}` + +- Output additional information: + +`sprio --long` + +- View information for the jobs of specified users: + +`sprio --user={{user_name_1,user_name_2,...}}` + +- Print the weights for each factor determining job scheduling priority: + +`sprio --weights` diff --git a/pages/linux/sshare.md b/pages/linux/sshare.md new file mode 100644 index 000000000..b85682d92 --- /dev/null +++ b/pages/linux/sshare.md @@ -0,0 +1,20 @@ +# sshare + +> List the shares of associations to a cluster. +> More information: . + +- List Slurm share information: + +`sshare` + +- Control the output format: + +`sshare --{{parsable|parsable2|json|yaml}}` + +- Control the fields to display: + +`sshare --format={{format_string}}` + +- Display information for the specified users only: + +`sshare --users={{user_id_1,user_id_2,...}}` diff --git a/pages/linux/strigger.md b/pages/linux/strigger.md new file mode 100644 index 000000000..af052b51b --- /dev/null +++ b/pages/linux/strigger.md @@ -0,0 +1,25 @@ +# strigger + +> View or modify Slurm trigger information. +> Triggers are actions that are automatically run when a given event occurs on a Slurm cluster. +> More information: . + +- Register a new trigger. Execute the specified program when the specified event occurs: + +`strigger --set --{{primary_database_failure|primary_slurmdbd_failure|primary_slurmctld_acct_buffer_full|primary_slurmctld_failure|...}} --program={{path/to/executable}}` + +- Execute the specified program when the specified job terminated: + +`strigger --set --jobid={{job_id}} --fini --program="{{path/to/executable}} {{argument1 argument2 ...}}"` + +- View active triggers: + +`strigger --get` + +- View active triggers regarding the specified job: + +`strigger --get --jobid={{job_id}}` + +- Clear the specified trigger: + +`strigger --clear {{trigger_id}}` diff --git a/pages/linux/sview.md b/pages/linux/sview.md new file mode 100644 index 000000000..a0f7ca09a --- /dev/null +++ b/pages/linux/sview.md @@ -0,0 +1,8 @@ +# sview + +> Start a GUI to view and modify the state of Slurm. +> More information: . + +- Start a GUI to view and modify the state of Slurm: + +`sview`