<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">I’m testing using heterogenous jobs for a user on out cluster, but seeing I think incorrect output from “scontrol show job XXX” for the job. The cluster is currently using Slurm 18.08.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">So my job script looks like this:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">#!/bin/sh<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### This is a general SLURM script. You'll need to make modifications for this to
<o:p></o:p></p>
<p class="MsoNormal">### work with the appropriate packages that you want. Remember that the .bashrc
<o:p></o:p></p>
<p class="MsoNormal">### file will get executed on each node upon login and any settings in this script<o:p></o:p></p>
<p class="MsoNormal">### will be in addition to, or will override, the system bashrc file settings. Users will<o:p></o:p></p>
<p class="MsoNormal">### find it advantageous to use only the specific modules they want or
<o:p></o:p></p>
<p class="MsoNormal">### specify a certain PATH environment variable, etc. If you have questions,<o:p></o:p></p>
<p class="MsoNormal">### please contact the ARCC at arcc-info@uwyo.edu for help.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Informational text is usually indicated by "###". Don't uncomment these lines.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Lines beginning with "#SBATCH" are SLURM directives. They tell SLURM what to do.<o:p></o:p></p>
<p class="MsoNormal">### For example, #SBATCH --job-name my_job tells SLURM that the name of the job is "my_job".<o:p></o:p></p>
<p class="MsoNormal">### Don't remove the "#SBATCH".<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Job Name<o:p></o:p></p>
<p class="MsoNormal">#SBATCH --job-name=CHECK_NODE<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Declare an account for the job to run under<o:p></o:p></p>
<p class="MsoNormal">#SBATCH --account=arcc<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Standard output stream files are have a default name of:<o:p></o:p></p>
<p class="MsoNormal">### "slurm_<jobid>.out" However, this can be changed using options<o:p></o:p></p>
<p class="MsoNormal">### below. If you would like stdout and stderr to be combined,
<o:p></o:p></p>
<p class="MsoNormal">### omit the "SBATCH -e" option below.<o:p></o:p></p>
<p class="MsoNormal">###SBATCH -o stdout_file<o:p></o:p></p>
<p class="MsoNormal">###SBATCH -e stderr_file<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### mailing options<o:p></o:p></p>
<p class="MsoNormal">#SBATCH --mail-type=BEGIN,END,FAIL<o:p></o:p></p>
<p class="MsoNormal">#SBATCH --mail-user=xxx<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Set max walltime (days-hours:minutes:seconds)<o:p></o:p></p>
<p class="MsoNormal">#SBATCH --time=0-01:00:00<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Specify Resources<o:p></o:p></p>
<p class="MsoNormal">### 2 nodes, 16 processors (cores) each node<o:p></o:p></p>
<p class="MsoNormal">#SBATCH --nodes=1 --ntasks=1 --cpus-per-task=1 --partition=teton-hugemem<o:p></o:p></p>
<p class="MsoNormal">#SBATCH packjob<o:p></o:p></p>
<p class="MsoNormal">#SBATCH --nodes=9 --ntasks-per-node=32 --partition=teton<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Load needed modules<o:p></o:p></p>
<p class="MsoNormal">#module load gcc/7.3.0<o:p></o:p></p>
<p class="MsoNormal">#module load swset/2018.05<o:p></o:p></p>
<p class="MsoNormal">#module load openmpi/3.1.0<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">### Start the job via launcher.<o:p></o:p></p>
<p class="MsoNormal">### Command normally given on command line<o:p></o:p></p>
<p class="MsoNormal">srun check_nodes<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">sleep 600<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">When I submit the job and check it with “scontrol show job XXX”<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">JobId=2607083 PackJobId=2607082 PackJobOffset=1 JobName=CHECK_NODE<o:p></o:p></p>
<p class="MsoNormal"> PackJobIdSet=2607082-2607083<o:p></o:p></p>
<p class="MsoNormal"> UserId=jrlang(10024903) GroupId=jrlang(10024903) MCS_label=N/A<o:p></o:p></p>
<p class="MsoNormal"> Priority=1086 Nice=0 Account=arcc QOS=normal<o:p></o:p></p>
<p class="MsoNormal"> JobState=RUNNING Reason=None Dependency=(null)<o:p></o:p></p>
<p class="MsoNormal"> Requeue=1 Restarts=0 BatchFlag=1 Reboot=0 ExitCode=0:0<o:p></o:p></p>
<p class="MsoNormal"> RunTime=00:03:33 TimeLimit=01:00:00 TimeMin=N/A<o:p></o:p></p>
<p class="MsoNormal"> SubmitTime=2019-04-23T15:42:45 EligibleTime=2019-04-23T15:42:45<o:p></o:p></p>
<p class="MsoNormal"> AccrueTime=2019-04-23T15:42:45<o:p></o:p></p>
<p class="MsoNormal"> StartTime=2019-04-23T15:42:49 EndTime=2019-04-23T16:42:49 Deadline=N/A<o:p></o:p></p>
<p class="MsoNormal"> PreemptTime=None SuspendTime=None SecsPreSuspend=0<o:p></o:p></p>
<p class="MsoNormal"> LastSchedEval=2019-04-23T15:42:49<o:p></o:p></p>
<p class="MsoNormal"> Partition=teton AllocNode:Sid=tmgt1:34097<o:p></o:p></p>
<p class="MsoNormal"> ReqNodeList=(null) ExcNodeList=(null)<o:p></o:p></p>
<p class="MsoNormal"> NodeList=t[456-464]<o:p></o:p></p>
<p class="MsoNormal"> BatchHost=t456<o:p></o:p></p>
<p class="MsoNormal"> NumNodes=9 NumCPUs=288 NumTasks=288 CPUs/Task=1 ReqB:S:C:T=0:0:*:*<o:p></o:p></p>
<p class="MsoNormal"> TRES=cpu=288,mem=288000M,node=9,billing=288<o:p></o:p></p>
<p class="MsoNormal"> Socks/Node=* NtasksPerN:B:S:C=32:0:*:* CoreSpec=*<o:p></o:p></p>
<p class="MsoNormal"> MinCPUsNode=32 MinMemoryCPU=1000M MinTmpDiskNode=0<o:p></o:p></p>
<p class="MsoNormal"> Features=(null) DelayBoot=00:00:00<o:p></o:p></p>
<p class="MsoNormal"> OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)<o:p></o:p></p>
<p class="MsoNormal"> Command=/pfs/tsfs1/home/jrlang/TEST_CODE/check_nodes.sbatch<o:p></o:p></p>
<p class="MsoNormal"> WorkDir=/pfs/tsfs1/home/jrlang/TEST_CODE<o:p></o:p></p>
<p class="MsoNormal"> StdErr=/pfs/tsfs1/home/jrlang/TEST_CODE/slurm-2607083.out<o:p></o:p></p>
<p class="MsoNormal"> StdIn=/dev/null<o:p></o:p></p>
<p class="MsoNormal"> StdOut=/pfs/tsfs1/home/jrlang/TEST_CODE/slurm-2607083.out<o:p></o:p></p>
<p class="MsoNormal"> Power=<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Looking at the nodelist and the NumNodes they are both incorrect. They should show the first node and then the additional nodes assigned.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Using pestat I see the 10 nodes allocated to the job.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> t456 teton alloc 32 32 0.01* 128000 119539 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> t457 teton alloc 32 32 0.01* 128000 119459 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> t458 teton alloc 32 32 0.03* 128000 119854 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> t459 teton alloc 32 32 0.01* 128000 119567 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> t460 teton alloc 32 32 0.01* 128000 119567 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> t461 teton alloc 32 32 0.01* 128000 119308 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> t462 teton alloc 32 32 0.01* 128000 119570 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> t463 teton alloc 32 32 0.01* 128000 119241 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> t464 teton alloc 32 32 0.01* 128000 119329 2607083 jrlang
<o:p></o:p></p>
<p class="MsoNormal"> thm03 teton-hugemem mix 1 32 0.01* 1024000 1017834 2607082 jrlang
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">So why is scontrol not showing the thm03 node in the nodelist and including it in the Numnodes?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">One other question is how does Slurm treat the job output for the job. This job is a “hello world” type which just outputs the nodes the node and rack the parts run on. When the job completes I only see one line in the output from the
Rack 0 task.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">So where is all the Rank output ending up?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Jeff<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>