Skip to content

Commit 23120e5

Browse files
committed
Update docs
1 parent ef7568c commit 23120e5

File tree

4 files changed

+28
-10
lines changed

4 files changed

+28
-10
lines changed

api/tilelang.language.logical.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -404,7 +404,7 @@
404404
<p>The language interface for tl programs.</p>
405405
<dl class="py function">
406406
<dt class="sig sig-object py" id="tilelang.language.logical.all_of">
407-
<span class="sig-prename descclassname"><span class="pre">tilelang.language.logical.</span></span><span class="sig-name descname"><span class="pre">all_of</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">buffer:</span> <span class="pre">~typing.Union[&lt;tilelang.language.proxy.TensorProxy</span> <span class="pre">object</span> <span class="pre">at</span> <span class="pre">0x7fe1f7c7f310&gt;,</span> <span class="pre">~tvm.tir.stmt.BufferRegion]</span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.logical.all_of" title="Permalink to this definition">#</a></dt>
407+
<span class="sig-prename descclassname"><span class="pre">tilelang.language.logical.</span></span><span class="sig-name descname"><span class="pre">all_of</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">buffer:</span> <span class="pre">~typing.Union[&lt;tilelang.language.proxy.TensorProxy</span> <span class="pre">object</span> <span class="pre">at</span> <span class="pre">0x7fedb7934af0&gt;,</span> <span class="pre">~tvm.tir.stmt.BufferRegion]</span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.logical.all_of" title="Permalink to this definition">#</a></dt>
408408
<dd><p>Check if all elements in the buffer are true.</p>
409409
<dl class="field-list simple">
410410
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
@@ -418,7 +418,7 @@
418418

419419
<dl class="py function">
420420
<dt class="sig sig-object py" id="tilelang.language.logical.any_of">
421-
<span class="sig-prename descclassname"><span class="pre">tilelang.language.logical.</span></span><span class="sig-name descname"><span class="pre">any_of</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">buffer:</span> <span class="pre">~typing.Union[&lt;tilelang.language.proxy.TensorProxy</span> <span class="pre">object</span> <span class="pre">at</span> <span class="pre">0x7fe1f7c7f310&gt;,</span> <span class="pre">~tvm.tir.stmt.BufferRegion]</span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.logical.any_of" title="Permalink to this definition">#</a></dt>
421+
<span class="sig-prename descclassname"><span class="pre">tilelang.language.logical.</span></span><span class="sig-name descname"><span class="pre">any_of</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">buffer:</span> <span class="pre">~typing.Union[&lt;tilelang.language.proxy.TensorProxy</span> <span class="pre">object</span> <span class="pre">at</span> <span class="pre">0x7fedb7934af0&gt;,</span> <span class="pre">~tvm.tir.stmt.BufferRegion]</span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.logical.any_of" title="Permalink to this definition">#</a></dt>
422422
<dd><p>Check if any element in the buffer is true.</p>
423423
<dl class="field-list simple">
424424
<dt class="field-odd">Parameters<span class="colon">:</span></dt>

api/tilelang.language.proxy.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -452,7 +452,7 @@
452452
<p>Buffer proxy class for constructing tir buffer.</p>
453453
<dl class="py method">
454454
<dt class="sig sig-object py" id="tilelang.language.proxy.BufferProxy.from_ptr">
455-
<span class="sig-name descname"><span class="pre">from_ptr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pointer_var</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Var</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">shape</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><span class="pre">tvm.ir.expr.PrimExpr</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dtype</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'float32'</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">&lt;tilelang.language.proxy.BufferProxy</span> <span class="pre">object</span> <span class="pre">at</span> <span class="pre">0x7fe1f7c7dbd0&gt;</span></span></span><a class="headerlink" href="#tilelang.language.proxy.BufferProxy.from_ptr" title="Permalink to this definition">#</a></dt>
455+
<span class="sig-name descname"><span class="pre">from_ptr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pointer_var</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Var</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">shape</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><span class="pre">tvm.ir.expr.PrimExpr</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dtype</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'float32'</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">&lt;tilelang.language.proxy.BufferProxy</span> <span class="pre">object</span> <span class="pre">at</span> <span class="pre">0x7fedb7936ad0&gt;</span></span></span><a class="headerlink" href="#tilelang.language.proxy.BufferProxy.from_ptr" title="Permalink to this definition">#</a></dt>
456456
<dd><p>Create a buffer from a pointer, shape, and data type.</p>
457457
<dl class="field-list simple">
458458
<dt class="field-odd">Parameters<span class="colon">:</span></dt>

api/tilelang.language.reduce.html

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,7 @@
449449

450450
<dl class="py function">
451451
<dt class="sig sig-object py" id="tilelang.language.reduce.reduce_absmax">
452-
<span class="sig-prename descclassname"><span class="pre">tilelang.language.reduce.</span></span><span class="sig-name descname"><span class="pre">reduce_absmax</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buffer</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">out</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dim</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.reduce.reduce_absmax" title="Permalink to this definition">#</a></dt>
452+
<span class="sig-prename descclassname"><span class="pre">tilelang.language.reduce.</span></span><span class="sig-name descname"><span class="pre">reduce_absmax</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buffer</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">out</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dim</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">clear</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.reduce.reduce_absmax" title="Permalink to this definition">#</a></dt>
453453
<dd><p>Perform reduce absolute max on input buffer, store the result to output buffer.</p>
454454
<dl class="field-list simple">
455455
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
@@ -535,21 +535,39 @@
535535

536536
<dl class="py function">
537537
<dt class="sig sig-object py" id="tilelang.language.reduce.reduce_sum">
538-
<span class="sig-prename descclassname"><span class="pre">tilelang.language.reduce.</span></span><span class="sig-name descname"><span class="pre">reduce_sum</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buffer</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">out</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dim</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.reduce.reduce_sum" title="Permalink to this definition">#</a></dt>
538+
<span class="sig-prename descclassname"><span class="pre">tilelang.language.reduce.</span></span><span class="sig-name descname"><span class="pre">reduce_sum</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buffer</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">out</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dim</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">clear</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.reduce.reduce_sum" title="Permalink to this definition">#</a></dt>
539539
<dd><p>Perform reduce sum on input buffer, store the result to output buffer.</p>
540540
<dl class="field-list simple">
541541
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
542542
<dd class="field-odd"><ul class="simple">
543543
<li><p><strong>buffer</strong> (<em>tir.Buffer</em>) – The input buffer</p></li>
544544
<li><p><strong>out</strong> (<em>tir.Buffer</em>) – The output buffer</p></li>
545545
<li><p><strong>dim</strong> (<em>int</em>) – The dimension to perform reduce on</p></li>
546+
<li><p><strong>clear</strong> (<em>bool</em><em>, </em><em>optional</em>) – If True, output buffer will be cleared before reduction.
547+
If False, results will be accumulated on existing values.
548+
Defaults to True.</p></li>
546549
</ul>
547550
</dd>
548-
<dt class="field-even">Returns<span class="colon">:</span></dt>
549-
<dd class="field-even"><p>Handle to the reduction operation</p>
551+
</dl>
552+
<dl>
553+
<dt>Note: When clear=True, reduce_sum will not compute directly on the output buffer. This is because</dt><dd><blockquote>
554+
<div><p>during warp reduction, the same value would be accumulated multiple times (number of threads
555+
in the warp). Therefore, the implementation with clear=True follows these steps:</p>
556+
</div></blockquote>
557+
<ol class="arabic simple">
558+
<li><p>create a temp buffer with same shape and dtype as out</p></li>
559+
<li><p>copy out to temp buffer</p></li>
560+
<li><p>call reduce_sum with temp buffer and out</p></li>
561+
<li><p>Add temp buffer to out</p></li>
562+
</ol>
550563
</dd>
551-
<dt class="field-odd">Return type<span class="colon">:</span></dt>
552-
<dd class="field-odd"><p>tir.Call</p>
564+
</dl>
565+
<dl class="field-list simple">
566+
<dt class="field-odd">Returns<span class="colon">:</span></dt>
567+
<dd class="field-odd"><p>Handle to the reduction operation</p>
568+
</dd>
569+
<dt class="field-even">Return type<span class="colon">:</span></dt>
570+
<dd class="field-even"><p>tir.Call</p>
553571
</dd>
554572
</dl>
555573
</dd></dl>

searchindex.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)