You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<spanclass="sig-prename descclassname"><spanclass="pre">tilelang.language.atomic.</span></span><spanclass="sig-name descname"><spanclass="pre">atomic_add</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">dst</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">value</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">memory_order</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">return_prev</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">False</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink" href="#tilelang.language.atomic.atomic_add" title="Link to this definition">¶</a></dt>
610
+
<spanclass="sig-prename descclassname"><spanclass="pre">tilelang.language.atomic.</span></span><spanclass="sig-name descname"><spanclass="pre">atomic_add</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">dst</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">value</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">memory_order</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">return_prev</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">False</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">use_tma</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">False</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink" href="#tilelang.language.atomic.atomic_add" title="Link to this definition">¶</a></dt>
611
611
<dd><p>Atomically add <cite>value</cite> into <cite>dst</cite>, returning a handle to the operation.</p>
612
612
<p>Supports scalar/addressed extern atomic add when neither argument exposes extents, or tile-region-based atomic add for Buffer/BufferRegion/BufferLoad inputs. If both arguments are plain Buffers their shapes must be structurally equal. If at least one side exposes extents, extents are aligned (missing dimensions are treated as size 1); an assertion is raised if extents cannot be deduced. The optional <cite>memory_order</cite> (one of “relaxed”,”consume”,”acquire”,”release”,”acq_rel”,”seq_cst”) is used only for the direct extern <cite>AtomicAdd</cite> path when no extents are available — otherwise the tile-region path ignores <cite>memory_order</cite>.</p>
613
613
<dlclass="field-list simple">
@@ -617,6 +617,7 @@ <h2>Module Contents<a class="headerlink" href="#module-contents" title="Link to
617
617
<li><p><strong>value</strong> (<em>PrimExpr</em>) – Value to add atomically.</p></li>
618
618
<li><p><strong>memory_order</strong> (<em>Optional</em><em>[</em><em>str</em><em>]</em>) – Optional memory-order name controlling the atomic operation’s ordering.</p></li>
619
619
<li><p><strong>return_prev</strong> (<em>bool</em>) – If True, return the previous value; if False, return handle (default False).</p></li>
0 commit comments