Skip to content

Commit 3e8720b

Browse files
Update docs
1 parent b158b61 commit 3e8720b

File tree

9 files changed

+63
-138
lines changed

9 files changed

+63
-138
lines changed

_sources/autoapi/tilelang/language/utils/index.rst.txt

Lines changed: 3 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ Functions
1010
.. autoapisummary::
1111

1212
tilelang.language.utils.region
13-
tilelang.language.utils.buffer_to_tile_region
1413
tilelang.language.utils.buffer_load_to_tile_region
1514
tilelang.language.utils.buffer_region_to_tile_region
1615
tilelang.language.utils.index_to_coordinates
@@ -22,63 +21,17 @@ Module Contents
2221

2322
.. py:function:: region(buffer, access_type, *args)
2423
25-
Create a tile memory-region descriptor for a BufferLoad.
26-
27-
Maps access_type ('r', 'w', 'rw') to the numeric codes expected by the `tl.region` intrinsic
28-
(1, 2, 3 respectively) and returns a tir.Call representing the region with the provided extents.
29-
30-
:param buffer: The BufferLoad that identifies the underlying buffer and indices.
31-
:type buffer: tir.BufferLoad
32-
:param access_type: One of 'r', 'w', or 'rw' indicating read, write, or read-write access.
33-
:type access_type: str
34-
:param \*args: Extent expressions for each region dimension.
35-
:type \*args: tir.PrimExpr
36-
37-
:returns: A call to the `tl.region` intrinsic describing the memory region.
38-
:rtype: tir.Call
39-
40-
:raises KeyError: If access_type is not one of 'r', 'w', or 'rw'.
41-
42-
43-
.. py:function:: buffer_to_tile_region(buffer, access_type)
44-
45-
Convert a TVM buffer to a tile region descriptor.
46-
47-
:param buffer: The buffer to convert
48-
:type buffer: tir.Buffer
49-
:param access_type: Type of access - 'r' for read, 'w' for write, 'rw' for read-write
50-
:type access_type: str
51-
52-
:returns: A region descriptor covering the entire buffer
53-
:rtype: tir.Call
24+
Create a tl.region call for a BufferLoad and extents.
5425

5526

5627
.. py:function:: buffer_load_to_tile_region(load, access_type, extents)
5728
58-
Convert a buffer load operation to a tile region descriptor.
59-
60-
:param load: The buffer load operation
61-
:type load: tir.BufferLoad
62-
:param access_type: Type of access - 'r' for read, 'w' for write, 'rw' for read-write
63-
:type access_type: str
64-
:param extents: List of expressions defining the region size
65-
:type extents: List[tir.PrimExpr]
66-
67-
:returns: A region descriptor for the loaded area
68-
:rtype: tir.Call
29+
Convert a BufferLoad to a tl.region call with explicit extents.
6930

7031

7132
.. py:function:: buffer_region_to_tile_region(buffer_region, access_type, extents)
7233
73-
Convert a buffer region to a tile region descriptor.
74-
75-
:param buffer_region: The buffer region to convert
76-
:type buffer_region: tir.BufferRegion
77-
:param access_type: Type of access - 'r' for read, 'w' for write, 'rw' for read-write
78-
:type access_type: str
79-
80-
:returns: A region descriptor for the specified buffer region
81-
:rtype: tir.Call
34+
Clamp extents and return a tl.region call.
8235

8336

8437
.. py:function:: index_to_coordinates(index, shape)

_sources/autoapi/tilelang/tileop/gemm/gemm_base/index.rst.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,6 +152,11 @@ Module Contents
152152

153153

154154

155+
.. py:property:: mbar
156+
:type: tvm.tir.Buffer
157+
158+
159+
155160
.. py:property:: C_coords
156161
157162

_sources/autoapi/tilelang/utils/language/index.rst.txt

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ Module Contents
125125
:raises AssertionError: If the module contains more than one global function.
126126

127127

128-
.. py:function:: get_buffer_region_from_load(buffer_load)
128+
.. py:function:: get_buffer_region_from_load(buffer_load, extents = None)
129129
130130
Get the buffer region from a buffer load.
131131

@@ -134,14 +134,12 @@ Module Contents
134134
convert load to region
135135

136136

137-
.. py:function:: to_buffer_region(obj)
137+
.. py:function:: to_buffer_region(obj, access_type = 'rw', extents = None)
138138
139-
Convert Buffer/BufferRegion/BufferLoad to a BufferRegion.
139+
Convert to/from the tl.region representation.
140140

141-
- Buffer -> full-region BufferRegion covering entire shape
142-
- BufferRegion -> returned as-is
143-
- BufferLoad -> best-effort convert via get_buffer_region_from_load;
144-
if scalar, fall back to 1-sized ranges at given indices
141+
- Buffer/BufferLoad/BufferRegion -> returns a tl.region call (PrimExpr)
142+
- tl.region Call -> returns the decoded BufferRegion for analysis
145143

146144

147145
.. py:function:: retrieve_shape(obj)

autoapi/tilelang/language/utils/index.html

Lines changed: 18 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -507,21 +507,18 @@ <h2>Functions<a class="headerlink" href="#functions" title="Link to this heading
507507
<table class="autosummary longtable docutils align-default">
508508
<tbody>
509509
<tr class="row-odd"><td><p><a class="reference internal" href="#tilelang.language.utils.region" title="tilelang.language.utils.region"><code class="xref py py-obj docutils literal notranslate"><span class="pre">region</span></code></a>(buffer, access_type, *args)</p></td>
510-
<td><p>Create a tile memory-region descriptor for a BufferLoad.</p></td>
510+
<td><p>Create a tl.region call for a BufferLoad and extents.</p></td>
511511
</tr>
512-
<tr class="row-even"><td><p><a class="reference internal" href="#tilelang.language.utils.buffer_to_tile_region" title="tilelang.language.utils.buffer_to_tile_region"><code class="xref py py-obj docutils literal notranslate"><span class="pre">buffer_to_tile_region</span></code></a>(buffer, access_type)</p></td>
513-
<td><p>Convert a TVM buffer to a tile region descriptor.</p></td>
512+
<tr class="row-even"><td><p><a class="reference internal" href="#tilelang.language.utils.buffer_load_to_tile_region" title="tilelang.language.utils.buffer_load_to_tile_region"><code class="xref py py-obj docutils literal notranslate"><span class="pre">buffer_load_to_tile_region</span></code></a>(load, access_type, extents)</p></td>
513+
<td><p>Convert a BufferLoad to a tl.region call with explicit extents.</p></td>
514514
</tr>
515-
<tr class="row-odd"><td><p><a class="reference internal" href="#tilelang.language.utils.buffer_load_to_tile_region" title="tilelang.language.utils.buffer_load_to_tile_region"><code class="xref py py-obj docutils literal notranslate"><span class="pre">buffer_load_to_tile_region</span></code></a>(load, access_type, extents)</p></td>
516-
<td><p>Convert a buffer load operation to a tile region descriptor.</p></td>
515+
<tr class="row-odd"><td><p><a class="reference internal" href="#tilelang.language.utils.buffer_region_to_tile_region" title="tilelang.language.utils.buffer_region_to_tile_region"><code class="xref py py-obj docutils literal notranslate"><span class="pre">buffer_region_to_tile_region</span></code></a>(buffer_region, ...)</p></td>
516+
<td><p>Clamp extents and return a tl.region call.</p></td>
517517
</tr>
518-
<tr class="row-even"><td><p><a class="reference internal" href="#tilelang.language.utils.buffer_region_to_tile_region" title="tilelang.language.utils.buffer_region_to_tile_region"><code class="xref py py-obj docutils literal notranslate"><span class="pre">buffer_region_to_tile_region</span></code></a>(buffer_region, ...)</p></td>
519-
<td><p>Convert a buffer region to a tile region descriptor.</p></td>
520-
</tr>
521-
<tr class="row-odd"><td><p><a class="reference internal" href="#tilelang.language.utils.index_to_coordinates" title="tilelang.language.utils.index_to_coordinates"><code class="xref py py-obj docutils literal notranslate"><span class="pre">index_to_coordinates</span></code></a>(index, shape)</p></td>
518+
<tr class="row-even"><td><p><a class="reference internal" href="#tilelang.language.utils.index_to_coordinates" title="tilelang.language.utils.index_to_coordinates"><code class="xref py py-obj docutils literal notranslate"><span class="pre">index_to_coordinates</span></code></a>(index, shape)</p></td>
522519
<td><p>Convert a flat (linear) index into multi-dimensional coordinates for a given shape.</p></td>
523520
</tr>
524-
<tr class="row-even"><td><p><a class="reference internal" href="#tilelang.language.utils.linear_index" title="tilelang.language.utils.linear_index"><code class="xref py py-obj docutils literal notranslate"><span class="pre">linear_index</span></code></a>(*args)</p></td>
521+
<tr class="row-odd"><td><p><a class="reference internal" href="#tilelang.language.utils.linear_index" title="tilelang.language.utils.linear_index"><code class="xref py py-obj docutils literal notranslate"><span class="pre">linear_index</span></code></a>(*args)</p></td>
525522
<td><p>Compute a flat (linear) index from multi-dimensional coordinates and strides.</p></td>
526523
</tr>
527524
</tbody>
@@ -533,88 +530,45 @@ <h2>Module Contents<a class="headerlink" href="#module-contents" title="Link to
533530
<dl class="py function">
534531
<dt class="sig sig-object py" id="tilelang.language.utils.region">
535532
<span class="sig-prename descclassname"><span class="pre">tilelang.language.utils.</span></span><span class="sig-name descname"><span class="pre">region</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">access_type</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.utils.region" title="Link to this definition"></a></dt>
536-
<dd><p>Create a tile memory-region descriptor for a BufferLoad.</p>
537-
<p>Maps access_type (‘r’, ‘w’, ‘rw’) to the numeric codes expected by the <cite>tl.region</cite> intrinsic
538-
(1, 2, 3 respectively) and returns a tir.Call representing the region with the provided extents.</p>
539-
<dl class="field-list simple">
540-
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
541-
<dd class="field-odd"><ul class="simple">
542-
<li><p><strong>buffer</strong> (<em>tir.BufferLoad</em>) – The BufferLoad that identifies the underlying buffer and indices.</p></li>
543-
<li><p><strong>access_type</strong> (<em>str</em>) – One of ‘r’, ‘w’, or ‘rw’ indicating read, write, or read-write access.</p></li>
544-
<li><p><strong>*args</strong> (<em>tir.PrimExpr</em>) – Extent expressions for each region dimension.</p></li>
545-
</ul>
546-
</dd>
547-
<dt class="field-even">Returns<span class="colon">:</span></dt>
548-
<dd class="field-even"><p>A call to the <cite>tl.region</cite> intrinsic describing the memory region.</p>
549-
</dd>
550-
<dt class="field-odd">Return type<span class="colon">:</span></dt>
551-
<dd class="field-odd"><p>tir.Call</p>
552-
</dd>
553-
<dt class="field-even">Raises<span class="colon">:</span></dt>
554-
<dd class="field-even"><p><strong>KeyError</strong> – If access_type is not one of ‘r’, ‘w’, or ‘rw’.</p>
555-
</dd>
556-
</dl>
557-
</dd></dl>
558-
559-
<dl class="py function">
560-
<dt class="sig sig-object py" id="tilelang.language.utils.buffer_to_tile_region">
561-
<span class="sig-prename descclassname"><span class="pre">tilelang.language.utils.</span></span><span class="sig-name descname"><span class="pre">buffer_to_tile_region</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buffer</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">access_type</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.utils.buffer_to_tile_region" title="Link to this definition"></a></dt>
562-
<dd><p>Convert a TVM buffer to a tile region descriptor.</p>
533+
<dd><p>Create a tl.region call for a BufferLoad and extents.</p>
563534
<dl class="field-list simple">
564535
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
565536
<dd class="field-odd"><ul class="simple">
566-
<li><p><strong>buffer</strong> (<em>tir.Buffer</em>) – The buffer to convert</p></li>
567-
<li><p><strong>access_type</strong> (<em>str</em>) – Type of access - ‘r’ for read, ‘w’ for write, ‘rw’ for read-write</p></li>
537+
<li><p><strong>buffer</strong> (<em>tvm.tir.BufferLoad</em>)</p></li>
538+
<li><p><strong>access_type</strong> (<em>str</em>)</p></li>
539+
<li><p><strong>args</strong> (<em>tvm.tir.PrimExpr</em>)</p></li>
568540
</ul>
569541
</dd>
570-
<dt class="field-even">Returns<span class="colon">:</span></dt>
571-
<dd class="field-even"><p>A region descriptor covering the entire buffer</p>
572-
</dd>
573-
<dt class="field-odd">Return type<span class="colon">:</span></dt>
574-
<dd class="field-odd"><p>tir.Call</p>
575-
</dd>
576542
</dl>
577543
</dd></dl>
578544

579545
<dl class="py function">
580546
<dt class="sig sig-object py" id="tilelang.language.utils.buffer_load_to_tile_region">
581547
<span class="sig-prename descclassname"><span class="pre">tilelang.language.utils.</span></span><span class="sig-name descname"><span class="pre">buffer_load_to_tile_region</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">load</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">access_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">extents</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.utils.buffer_load_to_tile_region" title="Link to this definition"></a></dt>
582-
<dd><p>Convert a buffer load operation to a tile region descriptor.</p>
548+
<dd><p>Convert a BufferLoad to a tl.region call with explicit extents.</p>
583549
<dl class="field-list simple">
584550
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
585551
<dd class="field-odd"><ul class="simple">
586-
<li><p><strong>load</strong> (<em>tir.BufferLoad</em>) – The buffer load operation</p></li>
587-
<li><p><strong>access_type</strong> (<em>str</em>) – Type of access - ‘r’ for read, ‘w’ for write, ‘rw’ for read-write</p></li>
588-
<li><p><strong>extents</strong> (<em>List</em><em>[</em><em>tir.PrimExpr</em><em>]</em>) – List of expressions defining the region size</p></li>
552+
<li><p><strong>load</strong> (<em>tvm.tir.BufferLoad</em>)</p></li>
553+
<li><p><strong>access_type</strong> (<em>str</em>)</p></li>
554+
<li><p><strong>extents</strong> (<em>list</em><em>[</em><em>tvm.tir.PrimExpr</em><em>]</em>)</p></li>
589555
</ul>
590556
</dd>
591-
<dt class="field-even">Returns<span class="colon">:</span></dt>
592-
<dd class="field-even"><p>A region descriptor for the loaded area</p>
593-
</dd>
594-
<dt class="field-odd">Return type<span class="colon">:</span></dt>
595-
<dd class="field-odd"><p>tir.Call</p>
596-
</dd>
597557
</dl>
598558
</dd></dl>
599559

600560
<dl class="py function">
601561
<dt class="sig sig-object py" id="tilelang.language.utils.buffer_region_to_tile_region">
602562
<span class="sig-prename descclassname"><span class="pre">tilelang.language.utils.</span></span><span class="sig-name descname"><span class="pre">buffer_region_to_tile_region</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buffer_region</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">access_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">extents</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#tilelang.language.utils.buffer_region_to_tile_region" title="Link to this definition"></a></dt>
603-
<dd><p>Convert a buffer region to a tile region descriptor.</p>
563+
<dd><p>Clamp extents and return a tl.region call.</p>
604564
<dl class="field-list simple">
605565
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
606566
<dd class="field-odd"><ul class="simple">
607-
<li><p><strong>buffer_region</strong> (<em>tir.BufferRegion</em>) – The buffer region to convert</p></li>
608-
<li><p><strong>access_type</strong> (<em>str</em>) – Type of access - ‘r’ for read, ‘w’ for write, ‘rw’ for read-write</p></li>
567+
<li><p><strong>buffer_region</strong> (<em>tvm.tir.BufferRegion</em>)</p></li>
568+
<li><p><strong>access_type</strong> (<em>str</em>)</p></li>
609569
<li><p><strong>extents</strong> (<em>list</em><em>[</em><em>tvm.tir.PrimExpr</em><em>]</em>)</p></li>
610570
</ul>
611571
</dd>
612-
<dt class="field-even">Returns<span class="colon">:</span></dt>
613-
<dd class="field-even"><p>A region descriptor for the specified buffer region</p>
614-
</dd>
615-
<dt class="field-odd">Return type<span class="colon">:</span></dt>
616-
<dd class="field-odd"><p>tir.Call</p>
617-
</dd>
618572
</dl>
619573
</dd></dl>
620574

@@ -740,7 +694,6 @@ <h2>Module Contents<a class="headerlink" href="#module-contents" title="Link to
740694
<li><a class="reference internal" href="#functions">Functions</a></li>
741695
<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
742696
<li><a class="reference internal" href="#tilelang.language.utils.region"><code class="docutils literal notranslate"><span class="pre">region()</span></code></a></li>
743-
<li><a class="reference internal" href="#tilelang.language.utils.buffer_to_tile_region"><code class="docutils literal notranslate"><span class="pre">buffer_to_tile_region()</span></code></a></li>
744697
<li><a class="reference internal" href="#tilelang.language.utils.buffer_load_to_tile_region"><code class="docutils literal notranslate"><span class="pre">buffer_load_to_tile_region()</span></code></a></li>
745698
<li><a class="reference internal" href="#tilelang.language.utils.buffer_region_to_tile_region"><code class="docutils literal notranslate"><span class="pre">buffer_region_to_tile_region()</span></code></a></li>
746699
<li><a class="reference internal" href="#tilelang.language.utils.index_to_coordinates"><code class="docutils literal notranslate"><span class="pre">index_to_coordinates()</span></code></a></li>

autoapi/tilelang/tileop/gemm/gemm_base/index.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -805,6 +805,16 @@ <h2>Module Contents<a class="headerlink" href="#module-contents" title="Link to
805805
</dl>
806806
</dd></dl>
807807

808+
<dl class="py property">
809+
<dt class="sig sig-object py" id="tilelang.tileop.gemm.gemm_base.GemmBase.mbar">
810+
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">mbar</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">tvm.tir.Buffer</span></em><a class="headerlink" href="#tilelang.tileop.gemm.gemm_base.GemmBase.mbar" title="Link to this definition"></a></dt>
811+
<dd><dl class="field-list simple">
812+
<dt class="field-odd">Return type<span class="colon">:</span></dt>
813+
<dd class="field-odd"><p>tvm.tir.Buffer</p>
814+
</dd>
815+
</dl>
816+
</dd></dl>
817+
808818
<dl class="py property">
809819
<dt class="sig sig-object py" id="tilelang.tileop.gemm.gemm_base.GemmBase.C_coords">
810820
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">C_coords</span></span><a class="headerlink" href="#tilelang.tileop.gemm.gemm_base.GemmBase.C_coords" title="Link to this definition"></a></dt>
@@ -938,6 +948,7 @@ <h2>Module Contents<a class="headerlink" href="#module-contents" title="Link to
938948
<li><a class="reference internal" href="#tilelang.tileop.gemm.gemm_base.GemmBase.wg_wait"><code class="docutils literal notranslate"><span class="pre">GemmBase.wg_wait</span></code></a></li>
939949
<li><a class="reference internal" href="#tilelang.tileop.gemm.gemm_base.GemmBase.policy"><code class="docutils literal notranslate"><span class="pre">GemmBase.policy</span></code></a></li>
940950
<li><a class="reference internal" href="#tilelang.tileop.gemm.gemm_base.GemmBase.mbarptr"><code class="docutils literal notranslate"><span class="pre">GemmBase.mbarptr</span></code></a></li>
951+
<li><a class="reference internal" href="#tilelang.tileop.gemm.gemm_base.GemmBase.mbar"><code class="docutils literal notranslate"><span class="pre">GemmBase.mbar</span></code></a></li>
941952
<li><a class="reference internal" href="#tilelang.tileop.gemm.gemm_base.GemmBase.C_coords"><code class="docutils literal notranslate"><span class="pre">GemmBase.C_coords</span></code></a></li>
942953
<li><a class="reference internal" href="#tilelang.tileop.gemm.gemm_base.GemmBase.get_region_base_offsets"><code class="docutils literal notranslate"><span class="pre">GemmBase.get_region_base_offsets()</span></code></a></li>
943954
<li><a class="reference internal" href="#tilelang.tileop.gemm.gemm_base.GemmBase.A_base_offsets"><code class="docutils literal notranslate"><span class="pre">GemmBase.A_base_offsets</span></code></a></li>

0 commit comments

Comments
 (0)