diff --git a/doc/man/man1/srun.1 b/doc/man/man1/srun.1 index f33d865a64c09442fe83452652cfb9c9dc3202b5..2989976d57799bbfd7d795031d118b396fed18b0 100644 --- a/doc/man/man1/srun.1 +++ b/doc/man/man1/srun.1 @@ -1,6 +1,6 @@ \." $Id$ .\" -.TH SRUN "1" "November 2002" "srun 0.1" "slurm components" +.TH SRUN "1" "December 2002" "srun 0.1" "slurm components" .SH "NAME" srun \- run parallel jobs .SH SYNOPSIS @@ -97,12 +97,12 @@ Specify an alternate distribution method for remote processes. .TP .B block The block method of distribution will allocate processes in-order to -the cpus on a node. This is the default behavior. +the cpus on a node. .TP .B cyclic The cyclic method distributes processes in a round-robin fashion across the allocated nodes. That is, process 1 will be allocated to the first -node, process 2 to the second, and so on. +node, process 2 to the second, and so on. This is the default behavior. .RE .TP \fB\-J\fR, \fB\-\-job\-name\fR=\fIjobname\fR @@ -371,6 +371,9 @@ SLURM_NNODES SLURM_NPROCS \fB\-n, \-\-nprocs\fR=\fIn\fR .TP +SLURM_OVERCOMMIT +\fB\-o, \-\-overcommit\fR +.TP SLURM_PARTITION \fB\-p, --partition\fR=\fIpartition\fR .TP diff --git a/src/srun/opt.c b/src/srun/opt.c index 95d71b6bd33dff4b16a18663d0196fb18239ff66..6411a1e4a2ad6c6e4609713d0c69062f99f9fa12 100644 --- a/src/srun/opt.c +++ b/src/srun/opt.c @@ -89,6 +89,7 @@ #define OPT_TIME 0x17 #define OPT_THREADS 0x18 #define OPT_WAIT 0x19 +#define OPT_OVERCOMMIT 0x1a /* constraint type options */ #define OPT_MINCPUS 0x50 @@ -262,6 +263,7 @@ env_vars_t env_vars[] = { {"SLURM_NPROCS", OPT_INT, &opt.nprocs, &opt.nprocs_set}, {"SLURM_CPUS_PER_TASK", OPT_INT, &opt.cpus_per_task, &opt.cpus_set}, {"SLURM_NNODES", OPT_INT, &opt.nodes, &opt.nodes_set}, + {"SLURM_OVERCOMMIT", OPT_OVERCOMMIT, NULL, NULL}, {"SLURM_PARTITION", OPT_STRING, &opt.partition, NULL}, {"SLURM_STDINMODE", OPT_INPUT, &opt.input, NULL}, {"SLURM_STDOUTMODE", OPT_OUTPUT, &opt.output, NULL}, @@ -662,6 +664,10 @@ static void _opt_env() } break; + case OPT_OVERCOMMIT: + opt.overcommit = true; + break; + default: /* do nothing */ break;