update --hint doc
This commit is contained in:
@@ -34,7 +34,7 @@ sbatch -p localhost -N 1-1 -n 2 -c 4 -J "my great job" -o output.txt --wrap="sru
|
||||
* 对于 srv1 的 `old` 队列:`--ntasks=4 --cpus-per-task=8`。
|
||||
* 对于 srv2 的 n0 队列:`--ntasks=8 --cpus-per-task=5`。
|
||||
* 对于 srv2 的 n0 队列:`--ntasks=3 --cpus-per-task=4`。
|
||||
* `--hint` 一般不要修改也无需指定[^6]。
|
||||
* `--hint=nomultithread` 一般建议设置[^6]。
|
||||
* `--job-name` 或 `-J` 指定任务的名字,可以不写。
|
||||
* `--output` 或 `-o` 指定输出文件的名字,可以不写。
|
||||
* `--export=ALL,OMP_NUM_THREADS=4,OMP_STACKSIZE=512m` 指定环境变量。完全不写这个参数时,相当于 `--export=ALL`。
|
||||
@@ -123,7 +123,6 @@ sudo scontrol update JobId=3337 Nice=2147483645
|
||||
这个对应关系并不是一定的,比如你先请求 10 个 task,然后用 `srun` 运行 10 个不相关的程序也是可以的,这个过程中可以根本没有 MPI 和 OpenMP。
|
||||
[^6]: `--hint=nomultithread` 用于忽略 CPU 的超线程,即按照物理核心来分配 CPU,每个物理核心上只运行一个线程。
|
||||
对于大多数科学计算软件,忽略超线程的性能会比使用超线程更好(这与日常使用不同)。
|
||||
`--hint=nomultithread` 已经被设置为默认值(通过 `SLURM_HINT` 环境变量)。
|
||||
[^7]: 使用 `--wrap` 参数和直接写在 `sbatch` 后面,都可以指定要运行的程序。
|
||||
区别在于,后者必须是一个脚本(不能是二进制程序),并且在脚本里可以指定一些给 Slurm 看的参数。
|
||||
[^9]: 具体是如何耦合的,见[官方文档](https://www.vasp.at/wiki/index.php/Combining_MPI_and_OpenMP)。
|
||||
|
||||
Reference in New Issue
Block a user