Skip to content

Commit

Permalink
deploy: 41b67a8
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] committed Aug 16, 2023
1 parent 4319e26 commit 98527f6
Show file tree
Hide file tree
Showing 17 changed files with 189 additions and 114 deletions.
2 changes: 1 addition & 1 deletion versions/master/html/CIME_api/CIME.XML.html
Original file line number Diff line number Diff line change
Expand Up @@ -843,7 +843,7 @@ <h2>Submodules<a class="headerlink" href="#submodules" title="Permalink to this

<dl class="py method">
<dt class="sig sig-object py" id="CIME.XML.env_mach_pes.EnvMachPes.get_value">
<span class="sig-name descname"><span class="pre">get_value</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">vid</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attribute</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">resolved</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">subgroup</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_mpitasks_per_node</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/CIME/XML/env_mach_pes.html#EnvMachPes.get_value"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#CIME.XML.env_mach_pes.EnvMachPes.get_value" title="Permalink to this definition"></a></dt>
<span class="sig-name descname"><span class="pre">get_value</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">vid</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attribute</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">resolved</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">subgroup</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_mpitasks_per_node</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_cputasks_per_gpu_node</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ngpus_per_node</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/CIME/XML/env_mach_pes.html#EnvMachPes.get_value"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#CIME.XML.env_mach_pes.EnvMachPes.get_value" title="Permalink to this definition"></a></dt>
<dd><p>Get a value for entry with id attribute vid.
or from the values field if the attribute argument is provided
and matches</p>
Expand Down
4 changes: 2 additions & 2 deletions versions/master/html/CIME_api/CIME.case.html

Large diffs are not rendered by default.

8 changes: 6 additions & 2 deletions versions/master/html/Tools_user/create_newcase.html
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,8 @@
[--driver {mct,nuopc}] [-n]
[--extra-machines-dir EXTRA_MACHINES_DIR]
[--case-group CASE_GROUP]
[--ngpus-per-node NGPUS_PER_NODE]
[--ngpus-per-node NGPUS_PER_NODE] [--gpu-type GPU_TYPE]
[--gpu-offload GPU_OFFLOAD]

options:
-h, --help show this help message and exit
Expand Down Expand Up @@ -248,7 +249,10 @@
--case-group CASE_GROUP
Add this case to a case group
--ngpus-per-node NGPUS_PER_NODE
Specify number of GPUs used for simulation.
Specify number of GPUs used for simulation.
--gpu-type GPU_TYPE Specify type of GPU hardware - currently supported are v100, a100, mi250
--gpu-offload GPU_OFFLOAD
Specify gpu offload method - currently supported are openacc, openmp, combined
</pre></div>
</div>
</section>
Expand Down
3 changes: 3 additions & 0 deletions versions/master/html/_modules/CIME/XML/env_batch.html
Original file line number Diff line number Diff line change
Expand Up @@ -706,6 +706,9 @@ <h1>Source code for CIME.XML.env_batch</h1><div class="highlight"><pre>
<span class="k">if</span> <span class="n">name</span><span class="p">:</span>
<span class="k">if</span> <span class="n">resolve</span> <span class="ow">and</span> <span class="s2">&quot;$&quot;</span> <span class="ow">in</span> <span class="n">name</span><span class="p">:</span>
<span class="n">rflag</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_resolve_argument</span><span class="p">(</span><span class="n">case</span><span class="p">,</span> <span class="n">flag</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">job</span><span class="p">)</span>
<span class="c1"># This is to prevent -gpu_type=none in qsub args</span>
<span class="k">if</span> <span class="n">rflag</span><span class="o">.</span><span class="n">endswith</span><span class="p">(</span><span class="s2">&quot;=none&quot;</span><span class="p">):</span>
<span class="k">continue</span>
<span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">rflag</span><span class="p">)</span> <span class="o">&gt;</span> <span class="nb">len</span><span class="p">(</span><span class="n">flag</span><span class="p">):</span>
<span class="n">submitargs</span> <span class="o">+=</span> <span class="s2">&quot; </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">rflag</span><span class="p">)</span>
<span class="k">else</span><span class="p">:</span>
Expand Down
34 changes: 27 additions & 7 deletions versions/master/html/_modules/CIME/XML/env_mach_pes.html
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,8 @@ <h1>Source code for CIME.XML.env_mach_pes</h1><div class="highlight"><pre>
<span class="n">resolved</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
<span class="n">subgroup</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
<span class="n">max_mpitasks_per_node</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
<span class="n">max_cputasks_per_gpu_node</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
<span class="n">ngpus_per_node</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
<span class="p">):</span> <span class="c1"># pylint: disable=arguments-differ</span>
<span class="c1"># Special variable NINST_MAX is used to determine the number of</span>
<span class="c1"># drivers in multi-driver mode.</span>
Expand All @@ -144,7 +146,13 @@ <h1>Source code for CIME.XML.env_mach_pes</h1><div class="highlight"><pre>
<span class="k">if</span> <span class="s2">&quot;NTASKS&quot;</span> <span class="ow">in</span> <span class="n">vid</span> <span class="ow">or</span> <span class="s2">&quot;ROOTPE&quot;</span> <span class="ow">in</span> <span class="n">vid</span><span class="p">:</span>
<span class="k">if</span> <span class="n">max_mpitasks_per_node</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
<span class="n">max_mpitasks_per_node</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_MPITASKS_PER_NODE&quot;</span><span class="p">)</span>
<span class="k">if</span> <span class="n">value</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span> <span class="ow">and</span> <span class="n">value</span> <span class="o">&lt;</span> <span class="mi">0</span><span class="p">:</span>
<span class="k">if</span> <span class="n">max_cputasks_per_gpu_node</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
<span class="n">max_cputasks_per_gpu_node</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_CPUTASKS_PER_GPU_NODE&quot;</span><span class="p">)</span>
<span class="k">if</span> <span class="n">ngpus_per_node</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
<span class="n">ngpus_per_node</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;NGPUS_PER_NODE&quot;</span><span class="p">)</span>
<span class="k">if</span> <span class="p">(</span><span class="n">ngpus_per_node</span> <span class="ow">and</span> <span class="n">value</span><span class="p">)</span> <span class="ow">and</span> <span class="n">value</span> <span class="o">&lt;</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">value</span> <span class="o">=</span> <span class="o">-</span><span class="mi">1</span> <span class="o">*</span> <span class="n">value</span> <span class="o">*</span> <span class="n">max_cputasks_per_gpu_node</span>
<span class="k">elif</span> <span class="n">value</span> <span class="ow">and</span> <span class="n">value</span> <span class="o">&lt;</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">value</span> <span class="o">=</span> <span class="o">-</span><span class="mi">1</span> <span class="o">*</span> <span class="n">value</span> <span class="o">*</span> <span class="n">max_mpitasks_per_node</span>
<span class="c1"># in the nuopc driver there is only one NINST value</span>
<span class="c1"># so that NINST_{comp} = NINST</span>
Expand Down Expand Up @@ -240,6 +248,7 @@ <h1>Source code for CIME.XML.env_mach_pes</h1><div class="highlight"><pre>
<span class="n">tt</span> <span class="o">=</span> <span class="n">rootpe</span> <span class="o">+</span> <span class="n">nthrds</span> <span class="o">*</span> <span class="p">((</span><span class="n">ntasks</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)</span> <span class="o">*</span> <span class="n">pstrid</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
<span class="n">maxrootpe</span> <span class="o">=</span> <span class="nb">max</span><span class="p">(</span><span class="n">maxrootpe</span><span class="p">,</span> <span class="n">rootpe</span><span class="p">)</span>
<span class="n">total_tasks</span> <span class="o">=</span> <span class="nb">max</span><span class="p">(</span><span class="n">tt</span><span class="p">,</span> <span class="n">total_tasks</span><span class="p">)</span>

<span class="k">if</span> <span class="n">asyncio_tasks</span><span class="p">:</span>
<span class="n">total_tasks</span> <span class="o">=</span> <span class="n">total_tasks</span> <span class="o">+</span> <span class="nb">len</span><span class="p">(</span><span class="n">asyncio_tasks</span><span class="p">)</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MULTI_DRIVER&quot;</span><span class="p">):</span>
Expand All @@ -253,13 +262,24 @@ <h1>Source code for CIME.XML.env_mach_pes</h1><div class="highlight"><pre>
<span class="s2">&quot;totaltasks &gt; 0 expected, totaltasks = </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">total_tasks</span><span class="p">),</span>
<span class="p">)</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_comp_interface</span> <span class="o">==</span> <span class="s2">&quot;nuopc&quot;</span> <span class="ow">and</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;ESMF_AWARE_THREADING&quot;</span><span class="p">):</span>
<span class="n">tasks_per_node</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_MPITASKS_PER_NODE&quot;</span><span class="p">)</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;NGPUS_PER_NODE&quot;</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">tasks_per_node</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_CPUTASKS_PER_GPU_NODE&quot;</span><span class="p">)</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">tasks_per_node</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_MPITASKS_PER_NODE&quot;</span><span class="p">)</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">tasks_per_node</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span>
<span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_TASKS_PER_NODE&quot;</span><span class="p">)</span> <span class="o">//</span> <span class="n">max_thread_count</span><span class="p">,</span>
<span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_MPITASKS_PER_NODE&quot;</span><span class="p">),</span>
<span class="n">total_tasks</span><span class="p">,</span>
<span class="p">)</span>
<span class="n">ngpus_per_node</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;NGPUS_PER_NODE&quot;</span><span class="p">)</span>
<span class="k">if</span> <span class="n">ngpus_per_node</span> <span class="ow">and</span> <span class="n">ngpus_per_node</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">tasks_per_node</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span>
<span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_TASKS_PER_NODE&quot;</span><span class="p">)</span> <span class="o">//</span> <span class="n">max_thread_count</span><span class="p">,</span>
<span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_CPUTASKS_PER_GPU_NODE&quot;</span><span class="p">),</span>
<span class="n">total_tasks</span><span class="p">,</span>
<span class="p">)</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">tasks_per_node</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span>
<span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_TASKS_PER_NODE&quot;</span><span class="p">)</span> <span class="o">//</span> <span class="n">max_thread_count</span><span class="p">,</span>
<span class="bp">self</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MAX_MPITASKS_PER_NODE&quot;</span><span class="p">),</span>
<span class="n">total_tasks</span><span class="p">,</span>
<span class="p">)</span>
<span class="k">return</span> <span class="n">tasks_per_node</span> <span class="k">if</span> <span class="n">tasks_per_node</span> <span class="o">&gt;</span> <span class="mi">0</span> <span class="k">else</span> <span class="mi">1</span></div>

<div class="viewcode-block" id="EnvMachPes.get_total_nodes"><a class="viewcode-back" href="../../../CIME_api/CIME.XML.html#CIME.XML.env_mach_pes.EnvMachPes.get_total_nodes">[docs]</a> <span class="k">def</span> <span class="nf">get_total_nodes</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">total_tasks</span><span class="p">,</span> <span class="n">max_thread_count</span><span class="p">):</span>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -406,7 +406,8 @@ <h1>Source code for CIME.XML.env_mach_specific</h1><div class="highlight"><pre>

<span class="k">def</span> <span class="nf">_compute_actions</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">nodes</span><span class="p">,</span> <span class="n">child_tag</span><span class="p">,</span> <span class="n">case</span><span class="p">,</span> <span class="n">job</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
<span class="n">result</span> <span class="o">=</span> <span class="p">[]</span> <span class="c1"># list of tuples (&quot;name&quot;, &quot;argument&quot;)</span>
<span class="n">compiler</span><span class="p">,</span> <span class="n">mpilib</span> <span class="o">=</span> <span class="n">case</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;COMPILER&quot;</span><span class="p">),</span> <span class="n">case</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MPILIB&quot;</span><span class="p">)</span>
<span class="n">compiler</span> <span class="o">=</span> <span class="n">case</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;COMPILER&quot;</span><span class="p">)</span>
<span class="n">mpilib</span> <span class="o">=</span> <span class="n">case</span><span class="o">.</span><span class="n">get_value</span><span class="p">(</span><span class="s2">&quot;MPILIB&quot;</span><span class="p">)</span>

<span class="k">for</span> <span class="n">node</span> <span class="ow">in</span> <span class="n">nodes</span><span class="p">:</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_match_attribs</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">attrib</span><span class="p">(</span><span class="n">node</span><span class="p">),</span> <span class="n">case</span><span class="p">,</span> <span class="n">job</span><span class="o">=</span><span class="n">job</span><span class="p">):</span>
Expand Down
Loading

0 comments on commit 98527f6

Please sign in to comment.