<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.anunna.wur.nl/index.php?action=history&amp;feed=atom&amp;title=Choosing_a_node_%28constraints%29</id>
	<title>Choosing a node (constraints) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.anunna.wur.nl/index.php?action=history&amp;feed=atom&amp;title=Choosing_a_node_%28constraints%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.anunna.wur.nl/index.php?title=Choosing_a_node_(constraints)&amp;action=history"/>
	<updated>2026-06-19T22:40:09Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.anunna.wur.nl/index.php?title=Choosing_a_node_(constraints)&amp;diff=2740&amp;oldid=prev</id>
		<title>Haars0011: Phase 1 § 4 P1.4.3: split Choosing a node (constraints) out of Using Slurm § Defaults + § Using GPU (via create-page on MediaWiki MCP Server)</title>
		<link rel="alternate" type="text/html" href="https://wiki.anunna.wur.nl/index.php?title=Choosing_a_node_(constraints)&amp;diff=2740&amp;oldid=prev"/>
		<updated>2026-06-16T09:06:56Z</updated>

		<summary type="html">&lt;p&gt;Phase 1 § 4 P1.4.3: split Choosing a node (constraints) out of Using Slurm § Defaults + § Using GPU (via create-page on MediaWiki MCP Server)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;SLURM picks a node for your job based on the partition you choose and the constraints you set. If you don&amp;#039;t tell SLURM what you need, it uses defaults; for anything that exceeds a default, you have to be explicit.&lt;br /&gt;
&lt;br /&gt;
== Defaults ==&lt;br /&gt;
&lt;br /&gt;
If you submit a job without any directives, SLURM assumes:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Partition:&amp;#039;&amp;#039;&amp;#039; main&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Quality of Service:&amp;#039;&amp;#039;&amp;#039; std&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;CPUs:&amp;#039;&amp;#039;&amp;#039; 1&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Wall time:&amp;#039;&amp;#039;&amp;#039; 1 hour&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Maximum wall time:&amp;#039;&amp;#039;&amp;#039; 3 weeks&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Memory:&amp;#039;&amp;#039;&amp;#039; 100 MB per node&lt;br /&gt;
&lt;br /&gt;
For anything beyond these limits, set the relevant &amp;lt;code&amp;gt;#SBATCH&amp;lt;/code&amp;gt; directive in your sbatch script.&lt;br /&gt;
&lt;br /&gt;
== Selecting GPU hardware ==&lt;br /&gt;
&lt;br /&gt;
The cluster has nodes with NVIDIA GPUs (partition &amp;lt;code&amp;gt;gpu&amp;lt;/code&amp;gt;) and nodes with AMD GPUs (partition &amp;lt;code&amp;gt;gpu_amd&amp;lt;/code&amp;gt;). To run on a GPU node you need to do two things in your sbatch script: select the right partition, and request the GPU as a generic resource.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA GPUs ===&lt;br /&gt;
&lt;br /&gt;
Six nodes with NVIDIA GPUs are available in the &amp;lt;code&amp;gt;gpu&amp;lt;/code&amp;gt; partition. Request one with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#SBATCH --partition=gpu&lt;br /&gt;
#SBATCH --gres=gpu:1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; with the number of GPUs you need. The &amp;lt;code&amp;gt;--gres&amp;lt;/code&amp;gt; line is mandatory — without it, your job will either fail or run on the CPU instead of the GPU.&lt;br /&gt;
&lt;br /&gt;
If you don&amp;#039;t ask for a particular GPU model, SLURM picks whatever is free. The scheduler is configured to prefer A100s first, then A6000s, then V100s. The price per GPU-hour is the same regardless of model.&lt;br /&gt;
&lt;br /&gt;
To restrict the job to a specific model, add a &amp;lt;code&amp;gt;--constraint&amp;lt;/code&amp;gt; directive. To see the constraint names available for GPU nodes, run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
scontrol show -o node | grep -o -e &amp;quot;NodeName=\w*&amp;quot; -e &amp;quot;ActiveFeatures=[[:alnum:][:punct:]]*&amp;quot; | paste - - | column -t | grep gpu&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then constrain the job to one of the listed models:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Restrict to A100 GPUs&lt;br /&gt;
#SBATCH --constraint=&amp;#039;nvidia&amp;amp;A100&amp;#039;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A rough rule of thumb: the A100/80 GB cards are about twice as fast as the A6000/48 GB or V100/16 GB. Whether you can take advantage of that depends on whether your workload can actually use the extra memory and saturate the GPU.&lt;br /&gt;
&lt;br /&gt;
=== AMD GPUs ===&lt;br /&gt;
&lt;br /&gt;
Two nodes with AMD GPUs are available in the &amp;lt;code&amp;gt;gpu_amd&amp;lt;/code&amp;gt; partition. The mechanics are identical to NVIDIA — request the partition and a GPU as a generic resource:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#SBATCH --partition=gpu_amd&lt;br /&gt;
#SBATCH --gres=gpu:1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Partitions / Queues]]&lt;br /&gt;
* [[Using Slurm | Scheduler overview]]&lt;br /&gt;
* [[Tariffs | Costs associated with resource usage]]&lt;/div&gt;</summary>
		<author><name>Haars0011</name></author>
	</entry>
</feed>