<ahref="tile__traits__standard_8h.html">Go to the documentation of this file.</a><divclass="fragment"><divclass="line"><aname="l00001"></a><spanclass="lineno"> 1</span> <spanclass="comment">/***************************************************************************************************</span></div><divclass="line"><aname="l00002"></a><spanclass="lineno"> 2</span> <spanclass="comment"> * Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved.</span></div><divclass="line"><aname="l00003"></a><spanclass="lineno"> 3</span> <spanclass="comment"> *</span></div><divclass="line"><aname="l00004"></a><spanclass="lineno"> 4</span> <spanclass="comment"> * Redistribution and use in source and binary forms, with or without modification, are permitted</span></div><divclass="line"><aname="l00005"></a><spanclass="lineno"> 5</span> <spanclass="comment"> * provided that the following conditions are met:</span></div><divclass="line"><aname="l00006"></a><spanclass="lineno"> 6</span> <spanclass="comment"> * * Redistributions of source code must retain the above copyright notice, this list of</span></div><divclass="line"><aname="l00007"></a><spanclass="lineno"> 7</span> <spanclass="comment"> * conditions and the following disclaimer.</span></div><divclass="line"><aname="l00008"></a><spanclass="lineno"> 8</span> <spanclass="comment"> * * Redistributions in binary form must reproduce the above copyright notice, this list of</span></div><divclass="line"><aname="l00009"></a><spanclass="lineno"> 9</span> <spanclass="comment"> * conditions and the following disclaimer in the documentation and/or other materials</span></div><divclass="line"><aname="l00010"></a><spanclass="lineno"> 10</span> <spanclass="comment"> * provided with the distribution.</span></div><divclass="line"><aname="l00011"></a><spanclass="lineno"> 11</span> <spanclass="comment"> * * Neither the name of the NVIDIA CORPORATION nor the names of its contributors may be used</span></div><divclass="line"><aname="l00012"></a><spanclass="lineno"> 12</span> <spanclass="comment"> * to endorse or promote products derived from this software without specific prior written</span></div><divclass="line"><aname="l00013"></a><spanclass="lineno"> 13</span> <spanclass="comment"> * permission.</span></div><divclass="line"><aname="l00014"></a><spanclass="lineno"> 14</span> <spanclass="comment"> *</span></div><divclass="line"><aname="l00015"></a><spanclass="lineno"> 15</span> <spanclass="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR</span></div><divclass="line"><aname="l00016"></a><spanclass="lineno"> 16</span> <spanclass="comment"> * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND</span></div><divclass="line"><aname="l00017"></a><spanclass="lineno"> 17</span> <spanclass="comment"> * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL NVIDIA CORPORATION BE LIABLE</span></div><divclass="line"><aname="l00018"></a><spanclass="lineno"> 18</span> <spanclass="comment"> * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,</span></div><divclass="line"><aname="l00019"></a><spanclass="lineno"> 19</span> <spanclass="comment"> * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;</span></div><divclass="line"><aname="l00020"></a><spanclass="lineno"> 20</span> <spanclass="comment"> * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,</span></div><divclass="line"><aname="l00021"></a><spanclass="lineno"> 21</span> <spanclass="comment"> * STRICT LIABILITY, OR TOR (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div><divclass="line"><anam
<divclass="ttc"id="structcutlass_1_1TileTraitsStandard_html_a1e8f90991e179d13971b84494c989d25"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStandard.html#a1e8f90991e179d13971b84494c989d25">cutlass::TileTraitsStandard::kWarpCount</a></div><divclass="ttdeci">static int const kWarpCount</div><divclass="ttdoc">Number of participating warps. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:205</div></div>
<divclass="ttc"id="tile__iterator_8h_html"><divclass="ttname"><ahref="tile__iterator_8h.html">tile_iterator.h</a></div><divclass="ttdoc">Defines the Tile Traits concept and iterators for loading and storing to tiles efficiently. </div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_html_a8b1d3fe590f426ce11d597bb98c51bd4"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake.html#a8b1d3fe590f426ce11d597bb98c51bd4">cutlass::TileTraitsWarpRake::kWarpsStrided</a></div><divclass="ttdeci">static int const kWarpsStrided</div><divclass="ttdoc">Warps strip-mined across strided dimension. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:157</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsContiguousMajor_html_a53d10552356855bf7379632e72bbe0c9"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsContiguousMajor.html#a53d10552356855bf7379632e72bbe0c9">cutlass::TileTraitsContiguousMajor::kThreads</a></div><divclass="ttdeci">static int const kThreads</div><divclass="ttdoc">Number of participating threads. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:105</div></div>
<divclass="ttc"id="namespacecutlass_html_a7419519fa453a121dfa5f26bf87318d9"><divclass="ttname"><ahref="namespacecutlass.html#a7419519fa453a121dfa5f26bf87318d9">cutlass::make_Coord</a></div><divclass="ttdeci">CUTLASS_HOST_DEVICE Coord< 1 > make_Coord(int _0)</div><divclass="ttdoc">Helper to make a 2-element coordinate. </div><divclass="ttdef"><b>Definition:</b> coord.h:368</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_1_1ThreadOffset_html"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake_1_1ThreadOffset.html">cutlass::TileTraitsWarpRake::ThreadOffset</a></div><divclass="ttdoc">Computes the thread offset in (H, W) based on thread ID. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:172</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStrideMajor_html_a2b6ad449269a178018f02b8cc64ddb85"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStrideMajor.html#a2b6ad449269a178018f02b8cc64ddb85">cutlass::TileTraitsStrideMajor::kThreads</a></div><divclass="ttdeci">static int const kThreads</div><divclass="ttdoc">Number of participating threads. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:72</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStandard_html"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStandard.html">cutlass::TileTraitsStandard</a></div><divclass="ttdoc">Chooses &#39;best&#39; shape to enable warp raking along contiguous dimension if possible. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:194</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_html_adcd658d9daf286368a9d51c8c1647f89"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake.html#adcd658d9daf286368a9d51c8c1647f89">cutlass::TileTraitsWarpRake::Tile</a></div><divclass="ttdeci">Tile_ Tile</div><divclass="ttdoc">Shape of tile. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:137</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_html_aede0832e95df911b1e6e3f1cc9e593ce"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake.html#aede0832e95df911b1e6e3f1cc9e593ce">cutlass::TileTraitsWarpRake::kWarpsContiguous</a></div><divclass="ttdeci">static int const kWarpsContiguous</div><divclass="ttdoc">Warps stripmined contiguous dimension. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:160</div></div>
<divclass="ttc"id="structcutlass_1_1TiledThreadOffset_html_a7290b6ca9ef0bede634f69bd05450fa2"><divclass="ttname"><ahref="structcutlass_1_1TiledThreadOffset.html#a7290b6ca9ef0bede634f69bd05450fa2">cutlass::TiledThreadOffset::operator()</a></div><divclass="ttdeci">CUTLASS_HOST_DEVICE Coord< 4 > operator()() const</div><divclass="ttdoc">Computes the logical coordinate from thread shape. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:42</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_html_a3ce218b223c5716af40c316899324bbe"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake.html#a3ce218b223c5716af40c316899324bbe">cutlass::TileTraitsWarpRake::Delta</a></div><divclass="ttdeci">Shape< 1, kWarpsStrided, kWarpSize > Delta</div><divclass="ttdoc">The same warp rakes along the contiguous dimension. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:166</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_1_1ThreadOffset_html_a0e4edffb19218ccbf77995f6d20df000"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake_1_1ThreadOffset.html#a0e4edffb19218ccbf77995f6d20df000">cutlass::TileTraitsWarpRake::ThreadOffset::operator()</a></div><divclass="ttdeci">CUTLASS_HOST_DEVICE Coord< 4 > operator()() const</div><divclass="ttdoc">Basic thread offset function computed from a thread shape. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:175</div></div>
<divclass="ttc"id="structcutlass_1_1TiledThreadOffset_html"><divclass="ttname"><ahref="structcutlass_1_1TiledThreadOffset.html">cutlass::TiledThreadOffset</a></div><divclass="ttdoc">Basic thread offset function computed from a thread shape. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:39</div></div>
<divclass="ttc"id="structcutlass_1_1Shape_html_a3a20d9062bba613c160bb2cd14f80a5e"><divclass="ttname"><ahref="structcutlass_1_1Shape.html#a3a20d9062bba613c160bb2cd14f80a5e">cutlass::Shape::kH</a></div><divclass="ttdeci">static int const kH</div><divclass="ttdoc">The height of the cube. </div><divclass="ttdef"><b>Definition:</b> shape.h:68</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_html_a11d943e15e397cbc5233b09071dff642"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake.html#a11d943e15e397cbc5233b09071dff642">cutlass::TileTraitsWarpRake::kThreads</a></div><divclass="ttdeci">static int const kThreads</div><divclass="ttdoc">Number of participating threads. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:140</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStrideMajor_html_a47404b4527b101e286347714aea687d5"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStrideMajor.html#a47404b4527b101e286347714aea687d5">cutlass::TileTraitsStrideMajor::Delta</a></div><divclass="ttdeci">Shape< 1, ThreadShape::kH, 1, 1 > Delta</div><divclass="ttdoc">Delta along each dimension. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:86</div></div>
<divclass="ttc"id="platform_8h_html_a39e234a3e3b0018b58df720bcb143420"><divclass="ttname"><ahref="platform_8h.html#a39e234a3e3b0018b58df720bcb143420">__NV_STD_MIN</a></div><divclass="ttdeci">#define __NV_STD_MIN(a, b)</div><divclass="ttdoc">Select minimum(a, b) </div><divclass="ttdef"><b>Definition:</b> platform.h:168</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStandard_html_a5e04777205c7a292602880c59d6b43c8"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStandard.html#a5e04777205c7a292602880c59d6b43c8">cutlass::TileTraitsStandard::kAccessSize</a></div><divclass="ttdeci">static int const kAccessSize</div><divclass="ttdoc">By default, do not do scalar loads. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:208</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStandard_html_aee3fee526bc4d4820c03665a2f5f166b"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStandard.html#aee3fee526bc4d4820c03665a2f5f166b">cutlass::TileTraitsStandard::Tile</a></div><divclass="ttdeci">Tile_ Tile</div><divclass="ttdoc">Shape of tile. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:196</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStrideMajor_html_afbb78ece048b868475d4a6802e6894ac"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStrideMajor.html#afbb78ece048b868475d4a6802e6894ac">cutlass::TileTraitsStrideMajor::Tile</a></div><divclass="ttdeci">Tile_ Tile</div><divclass="ttdoc">Shape of tile. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:69</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_html_a7a03abe44862077351b0a0a2818d214d"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake.html#a7a03abe44862077351b0a0a2818d214d">cutlass::TileTraitsWarpRake::kWarpCount</a></div><divclass="ttdeci">static int const kWarpCount</div><divclass="ttdoc">Number of participating warps. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:146</div></div>
<divclass="ttc"id="structcutlass_1_1Shape_html"><divclass="ttname"><ahref="structcutlass_1_1Shape.html">cutlass::Shape</a></div><divclass="ttdoc">A Shape implementing Layout Concept describing the dimensions of a cube. </div><divclass="ttdef"><b>Definition:</b> shape.h:64</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStrideMajor_html_ae8d14a3c6871072febfd75ed08aba32c"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStrideMajor.html#ae8d14a3c6871072febfd75ed08aba32c">cutlass::TileTraitsStrideMajor::ThreadOffset</a></div><divclass="ttdeci">TiledThreadOffset< ThreadShape > ThreadOffset</div><divclass="ttdoc">Computes the initial offset. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:92</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsContiguousMajor_html_a1607d53544302c12278793bc9b283763"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsContiguousMajor.html#a1607d53544302c12278793bc9b283763">cutlass::TileTraitsContiguousMajor::Tile</a></div><divclass="ttdeci">Tile_ Tile</div><divclass="ttdoc">Shape of tile. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:102</div></div>
<divclass="ttc"id="structcutlass_1_1Shape_html_a78836a20250ff24c25a6622ad818b421"><divclass="ttname"><ahref="structcutlass_1_1Shape.html#a78836a20250ff24c25a6622ad818b421">cutlass::Shape::kW</a></div><divclass="ttdeci">static int const kW</div><divclass="ttdoc">The width of the cube. </div><divclass="ttdef"><b>Definition:</b> shape.h:70</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsWarpRake_html"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsWarpRake.html">cutlass::TileTraitsWarpRake</a></div><divclass="ttdoc">Tiling in which warps rake across the contiguous dimension. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:135</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStandard_html_ae9f40eb177c440f01adcc2fe9ca7ec10"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStandard.html#ae9f40eb177c440f01adcc2fe9ca7ec10">cutlass::TileTraitsStandard::kWarpSize</a></div><divclass="ttdeci">static int const kWarpSize</div><divclass="ttdoc">Hard-coded warp size. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:202</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsContiguousMajor_html_ab1a4945bf562debeee1af813288e5896"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsContiguousMajor.html#ab1a4945bf562debeee1af813288e5896">cutlass::TileTraitsContiguousMajor::Delta</a></div><divclass="ttdeci">Shape< 1, 1, kThreads > Delta</div><divclass="ttdoc">Delta between each thread&#39;s access. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:122</div></div>
<divclass="ttc"id="structcutlass_1_1ShapeCount_html"><divclass="ttname"><ahref="structcutlass_1_1ShapeCount.html">cutlass::ShapeCount</a></div><divclass="ttdoc">Compute derived counted of a Layout Concept based class. </div><divclass="ttdef"><b>Definition:</b> shape.h:79</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsContiguousMajor_html_a823ba83e9ca680da0af7d63be772a351"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsContiguousMajor.html#a823ba83e9ca680da0af7d63be772a351">cutlass::TileTraitsContiguousMajor::ThreadOffset</a></div><divclass="ttdeci">TiledThreadOffset< ThreadShape > ThreadOffset</div><divclass="ttdoc">Computes the initial offset. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:128</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsStandard_html_a9cbcbe09aa6e9465b63dd22d59435af1"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsStandard.html#a9cbcbe09aa6e9465b63dd22d59435af1">cutlass::TileTraitsStandard::kThreads</a></div><divclass="ttdeci">static int const kThreads</div><divclass="ttdoc">Number of participating threads. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:199</div></div>
<divclass="ttc"id="structcutlass_1_1TileTraitsContiguousMajor_html_a425a20b642ae8736c12626b2de9b8b82"><divclass="ttname"><ahref="structcutlass_1_1TileTraitsContiguousMajor.html#a425a20b642ae8736c12626b2de9b8b82">cutlass::TileTraitsContiguousMajor::Iterations</a></div><divclass="ttdeci">Shape< 1, Tile::kH, Tile::kW/kThreads > Iterations</div><divclass="ttdoc">Number of iterations. </div><divclass="ttdef"><b>Definition:</b> tile_traits_standard.h:125</div></div>