<div dir="ltr"><div>I know very little about how SLURM works, but this sounds like it's a configuration issue - that it hasn't been configured in a way that indicates the login nodes cannot also be used as compute nodes. When I run salloc on the cluster I use, I *always* get a shell on a compute node, never on the login node that I ran salloc on.</div><div><br></div><div>Terry</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Jan 2, 2019 at 4:56 PM Mahmood Naderan <<a href="mailto:mahmood.nt@gmail.com">mahmood.nt@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif">Currently, users run "salloc --spankx11 ./qemu.sh" where qemu.sh is a script to run a qemu-system-x86_64 command.</div><div class="gmail_default" style="font-family:tahoma,sans-serif">When user (1) runs that command, the qemu is run on the login node since the user is accessing the login node. When user (2) runs that command, his qemu process is also running on the login node and so on.</div><div class="gmail_default" style="font-family:tahoma,sans-serif"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif">That is not what I want!</div><div class="gmail_default" style="font-family:tahoma,sans-serif">I expected slurm to dispatch the jobs on compute nodes.</div><div class="gmail_default" style="font-family:tahoma,sans-serif"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif"><br></div><div><div dir="ltr" class="gmail-m_-8239276413022319359gmail_signature"><div dir="ltr"><font face="tahoma,sans-serif">Regards,<br>Mahmood</font><br><br><br></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Jan 2, 2019 at 7:39 PM Renfro, Michael <<a href="mailto:Renfro@tntech.edu" target="_blank">Renfro@tntech.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Not sure what the reasons behind “have to manually ssh to a node”, but salloc and srun can be used to allocate resources and run commands on the allocated resources:<br>
<br>
Before allocation, regular commands run locally, and no Slurm-related variables are present:<br>
<br>
=====<br>
<br>
[renfro@login ~]$ hostname<br>
login<br>
[renfro@login ~]$ echo $SLURM_TASKS_PER_NODE<br>
<br>
<br>
=====<br>
<br>
After allocation, regular commands still run locally, Slurm-related variables are present, and srun runs commands on the allocated node (my prompt change inside a job is a local thing, not done by default):<br>
<br>
=====<br>
<br>
[renfro@login ~]$ salloc<br>
salloc: Granted job allocation 147867<br>
[renfro@login(job 147867) ~]$ hostname<br>
login<br>
[renfro@login(job 147867) ~]$ echo $SLURM_TASKS_PER_NODE<br>
1<br>
[renfro@login(job 147867) ~]$ srun hostname<br>
node004<br>
[renfro@login(job 147867) ~]$ exit<br>
exit<br>
salloc: Relinquishing job allocation 147867<br>
[renfro@login ~]$<br>
<br>
=====<br>
<br>
Lots of people get interactive shells on a reserved node with some variant of ‘srun --pty $SHELL -I’, which doesn’t require explicitly running salloc or ssh, so what are you trying to accomplish in the end?<br>
<br>
-- <br>
Mike Renfro, PhD / HPC Systems Administrator, Information Technology Services<br>
931 372-3601     / Tennessee Tech University<br>
<br>
> On Jan 2, 2019, at 9:24 AM, Mahmood Naderan <<a href="mailto:mahmood.nt@gmail.com" target="_blank">mahmood.nt@gmail.com</a>> wrote:<br>
> <br>
> I want to know if there any any way to push the node selection part on slurm and not a manual thing that is done by user.<br>
> Currently, I have to manually ssh to a node and try to "allocate resources" using salloc. <br>
> <br>
> <br>
> Regards,<br>
> Mahmood<br><br>
</blockquote></div></div>
</blockquote></div>