srunとsallocについて
| 登録日 | :2024/10/22 04:44 |
|---|---|
| カテゴリ | :SLURM |
sallocを使うと問題なく実行できる。調べたところ、用途的にインタラクティブで実行する場合、
sallocを使ったほうがいいのではないかという可能性もありそう。。特に、コンソールにログインして複数の処理を実行する場合。
>単一のコマンドやスクリプトを実行する場合はsrunを使用します。
>複数のコマンドを実行したり、対話的な作業を行う場合はsallocを使用します。
用途:srunは単一のタスク実行に、sallocは複数のタスクを含む対話的セッションに適しています。
salloc
$ salloc --ntasks=1 --cpus-per-task=2
salloc: Granted job allocation 123456
$ srun hostname
compute-node-1
$ srun python my_script.py
...
$ exit
srun
$ srun --ntasks=1 --cpus-per-task=2 --pty bash
compute-node-1$ hostname
compute-node-1
compute-node-1$ python my_script.py
...
compute-node-1$ exit
少しためしたところ、sallocでリソースを確保したあと、自動的にリソースにログインしないである。
このため、ユーザは少々混乱するかもしれない。また、リソースを解放するにはexitが必要だが、インタラクティブ実行とsallocが切り離された印象があって、exitのし忘れなども起こりやすそう。
そのため、ユーザライクにするには、srunを使ったほうが無難、、、といった印象である。