2018-05-17 02:44:56 +08:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=9" / >
< meta name = "generator" content = "Doxygen 1.8.14" / >
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< title > Cutlass: platform.h File Reference< / title >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "search/searchdata.js" > < / script >
< script type = "text/javascript" src = "search/search.js" > < / script >
< script type = "text/x-mathjax-config" >
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
< / script > < script type = "text/javascript" async src = "http://cdn.mathjax.org/mathjax/latest/MathJax.js" > < / script >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< / head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr style = "height: 56px;" >
< td id = "projectalign" style = "padding-left: 0.5em;" >
< div id = "projectname" > Cutlass
< / div >
< div id = "projectbrief" > CUDA Templates for Linear Algebra Subroutines and Solvers< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3& dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
< / script >
< script type = "text/javascript" src = "menudata.js" > < / script >
< script type = "text/javascript" src = "menu.js" > < / script >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3& dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */< / script >
< div id = "main-nav" > < / div >
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< iframe src = "javascript:void(0)" frameborder = "0"
name="MSearchResults" id="MSearchResults">
< / iframe >
< / div >
< div id = "nav-path" class = "navpath" >
< ul >
< li class = "navelem" > < a class = "el" href = "dir_1417ee5ebebc309c36b7962f26a92c39.html" > cutlass< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_c5917a9a879e9a6c73eaf5237444ab84.html" > util< / a > < / li > < / ul >
< / div >
< / div > <!-- top -->
< div class = "header" >
< div class = "summary" >
< a href = "#nested-classes" > Classes< / a > |
< a href = "#namespaces" > Namespaces< / a > |
< a href = "#define-members" > Macros< / a > |
< a href = "#typedef-members" > Typedefs< / a > |
< a href = "#func-members" > Functions< / a > < / div >
< div class = "headertitle" >
< div class = "title" > platform.h File Reference< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< p > C++ features that may be otherwise unimplemented for CUDA device functions.
< a href = "#details" > More...< / a > < / p >
< div class = "textblock" > < code > #include < stdint.h> < / code > < br / >
< code > #include < algorithm> < / code > < br / >
< code > #include < cstddef> < / code > < br / >
< code > #include < functional> < / code > < br / >
< code > #include < utility> < / code > < br / >
2018-09-20 05:02:08 +08:00
< code > #include " < a class = "el" href = "cutlass_8h_source.html" > cutlass/cutlass.h< / a > " < / code > < br / >
2018-05-17 02:44:56 +08:00
< / div >
< p > < a href = "platform_8h_source.html" > Go to the source code of this file.< / a > < / p >
< table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "nested-classes" > < / a >
Classes< / h2 > < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1plus.html" > cutlass::platform::plus< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "structcutlass_1_1platform_1_1plus.html" title = "platform::plus " > platform::plus< / a > < a href = "structcutlass_1_1platform_1_1plus.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1less.html" > cutlass::platform::less< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::less < a href = "structcutlass_1_1platform_1_1less.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1greater.html" > cutlass::platform::greater< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::greater < a href = "structcutlass_1_1platform_1_1greater.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1integral__constant.html" > cutlass::platform::integral_constant< value_t, V > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::integral_constant < a href = "structcutlass_1_1platform_1_1integral__constant.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1integral__constant.html" > cutlass::platform::integral_constant< value_t, V > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::integral_constant < a href = "structcutlass_1_1platform_1_1integral__constant.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1bool__constant.html" > cutlass::platform::bool_constant< V > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::bool_constant < a href = "structcutlass_1_1platform_1_1bool__constant.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1nullptr__t.html" > cutlass::platform::nullptr_t< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::nullptr_t < a href = "structcutlass_1_1platform_1_1nullptr__t.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1enable__if.html" > cutlass::platform::enable_if< C, T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::enable_if (true specialization) < a href = "structcutlass_1_1platform_1_1enable__if.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1enable__if_3_01false_00_01T_01_4.html" > cutlass::platform::enable_if< false, T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::enable_if (false specialization) < a href = "structcutlass_1_1platform_1_1enable__if_3_01false_00_01T_01_4.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1conditional.html" > cutlass::platform::conditional< B, T, F > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::conditional (true specialization) < a href = "structcutlass_1_1platform_1_1conditional.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1conditional_3_01false_00_01T_00_01F_01_4.html" > cutlass::platform::conditional< false, T, F > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::conditional (false specialization) < a href = "structcutlass_1_1platform_1_1conditional_3_01false_00_01T_00_01F_01_4.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1remove__const.html" > cutlass::platform::remove_const< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::remove_const (non-const specialization) < a href = "structcutlass_1_1platform_1_1remove__const.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1remove__const_3_01const_01T_01_4.html" > cutlass::platform::remove_const< const T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::remove_const (const specialization) < a href = "structcutlass_1_1platform_1_1remove__const_3_01const_01T_01_4.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1remove__volatile.html" > cutlass::platform::remove_volatile< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::remove_volatile (non-volatile specialization) < a href = "structcutlass_1_1platform_1_1remove__volatile.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1remove__volatile_3_01volatile_01T_01_4.html" > cutlass::platform::remove_volatile< volatile T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::remove_volatile (volatile specialization) < a href = "structcutlass_1_1platform_1_1remove__volatile_3_01volatile_01T_01_4.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1remove__cv.html" > cutlass::platform::remove_cv< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::remove_cv < a href = "structcutlass_1_1platform_1_1remove__cv.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__same.html" > cutlass::platform::is_same< A, B > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_same (false specialization) < a href = "structcutlass_1_1platform_1_1is__same.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__same_3_01A_00_01A_01_4.html" > cutlass::platform::is_same< A, A > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_same (true specialization) < a href = "structcutlass_1_1platform_1_1is__same_3_01A_00_01A_01_4.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__base__of__helper.html" > cutlass::platform::is_base_of_helper< BaseT, DerivedT > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Helper for std::is_base_of. < a href = "structcutlass_1_1platform_1_1is__base__of__helper.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__base__of__helper_1_1dummy.html" > cutlass::platform::is_base_of_helper< BaseT, DerivedT > ::dummy< B, D > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__base__of.html" > cutlass::platform::is_base_of< BaseT, DerivedT > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_base_of < a href = "structcutlass_1_1platform_1_1is__base__of.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__volatile.html" > cutlass::platform::is_volatile< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_volatile < a href = "structcutlass_1_1platform_1_1is__volatile.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__volatile_3_01volatile_01T_01_4.html" > cutlass::platform::is_volatile< volatile T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__pointer__helper.html" > cutlass::platform::is_pointer_helper< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Helper for std::is_pointer (false specialization) < a href = "structcutlass_1_1platform_1_1is__pointer__helper.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__pointer__helper_3_01T_01_5_01_4.html" > cutlass::platform::is_pointer_helper< T * > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Helper for std::is_pointer (true specialization) < a href = "structcutlass_1_1platform_1_1is__pointer__helper_3_01T_01_5_01_4.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__pointer.html" > cutlass::platform::is_pointer< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_pointer < a href = "structcutlass_1_1platform_1_1is__pointer.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__void.html" > cutlass::platform::is_void< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_void < a href = "structcutlass_1_1platform_1_1is__void.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral.html" > cutlass::platform::is_integral< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_integral < a href = "structcutlass_1_1platform_1_1is__integral.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01char_01_4.html" > cutlass::platform::is_integral< char > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01signed_01char_01_4.html" > cutlass::platform::is_integral< signed char > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01unsigned_01char_01_4.html" > cutlass::platform::is_integral< unsigned char > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01short_01_4.html" > cutlass::platform::is_integral< short > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01unsigned_01short_01_4.html" > cutlass::platform::is_integral< unsigned short > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01int_01_4.html" > cutlass::platform::is_integral< int > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01unsigned_01int_01_4.html" > cutlass::platform::is_integral< unsigned int > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01long_01_4.html" > cutlass::platform::is_integral< long > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01unsigned_01long_01_4.html" > cutlass::platform::is_integral< unsigned long > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01long_01long_01_4.html" > cutlass::platform::is_integral< long long > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01unsigned_01long_01long_01_4.html" > cutlass::platform::is_integral< unsigned long long > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01volatile_01T_01_4.html" > cutlass::platform::is_integral< volatile T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01const_01T_01_4.html" > cutlass::platform::is_integral< const T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__integral_3_01const_01volatile_01T_01_4.html" > cutlass::platform::is_integral< const volatile T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__floating__point.html" > cutlass::platform::is_floating_point< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_floating_point < a href = "structcutlass_1_1platform_1_1is__floating__point.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__arithmetic.html" > cutlass::platform::is_arithmetic< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_arithmetic < a href = "structcutlass_1_1platform_1_1is__arithmetic.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__fundamental.html" > cutlass::platform::is_fundamental< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::is_fundamental < a href = "structcutlass_1_1platform_1_1is__fundamental.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1is__trivially__copyable.html" > cutlass::platform::is_trivially_copyable< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of.html" > cutlass::platform::alignment_of< value_t > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::alignment_of < a href = "structcutlass_1_1platform_1_1alignment__of.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_1_1pad.html" > cutlass::platform::alignment_of< value_t > ::pad< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01int4_01_4.html" > cutlass::platform::alignment_of< int4 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01uint4_01_4.html" > cutlass::platform::alignment_of< uint4 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01float4_01_4.html" > cutlass::platform::alignment_of< float4 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01long4_01_4.html" > cutlass::platform::alignment_of< long4 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01ulong4_01_4.html" > cutlass::platform::alignment_of< ulong4 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01longlong2_01_4.html" > cutlass::platform::alignment_of< longlong2 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01ulonglong2_01_4.html" > cutlass::platform::alignment_of< ulonglong2 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01double2_01_4.html" > cutlass::platform::alignment_of< double2 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01longlong4_01_4.html" > cutlass::platform::alignment_of< longlong4 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01ulonglong4_01_4.html" > cutlass::platform::alignment_of< ulonglong4 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01double4_01_4.html" > cutlass::platform::alignment_of< double4 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01volatile_01value__t_01_4.html" > cutlass::platform::alignment_of< volatile value_t > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01const_01value__t_01_4.html" > cutlass::platform::alignment_of< const value_t > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1alignment__of_3_01const_01volatile_01value__t_01_4.html" > cutlass::platform::alignment_of< const volatile value_t > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1aligned__chunk.html" > cutlass::platform::aligned_chunk< Align > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1aligned__storage.html" > cutlass::platform::aligned_storage< Len, Align > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::aligned_storage < a href = "structcutlass_1_1platform_1_1aligned__storage.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1default__delete.html" > cutlass::platform::default_delete< T > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Default deleter. < a href = "structcutlass_1_1platform_1_1default__delete.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structcutlass_1_1platform_1_1default__delete_3_01T[]_4.html" > cutlass::platform::default_delete< T[]> < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Partial specialization for deleting array types. < a href = "structcutlass_1_1platform_1_1default__delete_3_01T[]_4.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classcutlass_1_1platform_1_1unique__ptr.html" > cutlass::platform::unique_ptr< T, Deleter > < / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::unique_ptr < a href = "classcutlass_1_1platform_1_1unique__ptr.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "namespaces" > < / a >
Namespaces< / h2 > < / td > < / tr >
< tr class = "memitem:namespacecutlass" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass.html" > cutlass< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:namespacecutlass_1_1platform" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html" > cutlass::platform< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "define-members" > < / a >
Macros< / h2 > < / td > < / tr >
< tr class = "memitem:a189faadd7f99f6c354db09acbb2aafcd" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "platform_8h.html#a189faadd7f99f6c354db09acbb2aafcd" > noexcept< / a > < / td > < / tr >
< tr class = "memdesc:a189faadd7f99f6c354db09acbb2aafcd" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > noexcept, constexpr < a href = "#a189faadd7f99f6c354db09acbb2aafcd" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a189faadd7f99f6c354db09acbb2aafcd" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a72f0657181cca64b44eb186b707eb380" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > < / td > < / tr >
< tr class = "separator:a72f0657181cca64b44eb186b707eb380" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab979d9d4b4923f7c54d6caa6e1a61936" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "platform_8h.html#ab979d9d4b4923f7c54d6caa6e1a61936" > nullptr< / a >       0< / td > < / tr >
< tr class = "memdesc:ab979d9d4b4923f7c54d6caa6e1a61936" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > nullptr < a href = "#ab979d9d4b4923f7c54d6caa6e1a61936" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ab979d9d4b4923f7c54d6caa6e1a61936" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:acd148999a5caeba8f6fd52e7e288e659" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "platform_8h.html#acd148999a5caeba8f6fd52e7e288e659" > __platform_cat_< / a > (a, b)      a##b< / td > < / tr >
< tr class = "memdesc:acd148999a5caeba8f6fd52e7e288e659" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > static_assert < a href = "#acd148999a5caeba8f6fd52e7e288e659" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:acd148999a5caeba8f6fd52e7e288e659" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aece7fe71be5aaf8d12dc9e2372f97de4" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "platform_8h.html#aece7fe71be5aaf8d12dc9e2372f97de4" > __platform_cat< / a > (a, b)      < a class = "el" href = "platform_8h.html#acd148999a5caeba8f6fd52e7e288e659" > __platform_cat_< / a > (a, b)< / td > < / tr >
< tr class = "separator:aece7fe71be5aaf8d12dc9e2372f97de4" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:adde4c9ea91b753491851361a4198c009" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "platform_8h.html#adde4c9ea91b753491851361a4198c009" > static_assert< / a > (__e, __m)      typedef int < a class = "el" href = "platform_8h.html#aece7fe71be5aaf8d12dc9e2372f97de4" > __platform_cat< / a > (AsSeRt, __LINE__)[(__e) ? 1 : -1]< / td > < / tr >
< tr class = "separator:adde4c9ea91b753491851361a4198c009" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:abd31f291635329bc15292954f1f01d38" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "platform_8h.html#abd31f291635329bc15292954f1f01d38" > __NV_STD_MAX< / a > (a, b)      (((b) > (a)) ? (b) : (a))< / td > < / tr >
< tr class = "memdesc:abd31f291635329bc15292954f1f01d38" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Select maximum(a, b) < a href = "#abd31f291635329bc15292954f1f01d38" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:abd31f291635329bc15292954f1f01d38" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a39e234a3e3b0018b58df720bcb143420" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "platform_8h.html#a39e234a3e3b0018b58df720bcb143420" > __NV_STD_MIN< / a > (a, b)      (((b) < (a)) ? (b) : (a))< / td > < / tr >
< tr class = "memdesc:a39e234a3e3b0018b58df720bcb143420" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Select minimum(a, b) < a href = "#a39e234a3e3b0018b58df720bcb143420" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a39e234a3e3b0018b58df720bcb143420" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "typedef-members" > < / a >
Typedefs< / h2 > < / td > < / tr >
< tr class = "memitem:a0eddc4a3921e137f31fd8014be96e807" > < td class = "memItemLeft" align = "right" valign = "top" > typedef integral_constant< bool, true >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a0eddc4a3921e137f31fd8014be96e807" > cutlass::platform::true_type< / a > < / td > < / tr >
< tr class = "memdesc:a0eddc4a3921e137f31fd8014be96e807" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The type used as a compile-time boolean with true value. < a href = "namespacecutlass_1_1platform.html#a0eddc4a3921e137f31fd8014be96e807" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a0eddc4a3921e137f31fd8014be96e807" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ad8c95b2109070847b13d355120344380" > < td class = "memItemLeft" align = "right" valign = "top" > typedef integral_constant< bool, false >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#ad8c95b2109070847b13d355120344380" > cutlass::platform::false_type< / a > < / td > < / tr >
< tr class = "memdesc:ad8c95b2109070847b13d355120344380" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The type used as a compile-time boolean with false value. < a href = "namespacecutlass_1_1platform.html#ad8c95b2109070847b13d355120344380" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ad8c95b2109070847b13d355120344380" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "func-members" > < / a >
Functions< / h2 > < / td > < / tr >
< tr class = "memitem:a57c071d2a7305dd4ec60542e66b0c81c" > < td class = "memTemplParams" colspan = "2" > template< typename T > < / td > < / tr >
< tr class = "memitem:a57c071d2a7305dd4ec60542e66b0c81c" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > const T &   < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a57c071d2a7305dd4ec60542e66b0c81c" > cutlass::platform::min< / a > (const T & a, const T & b)< / td > < / tr >
< tr class = "memdesc:a57c071d2a7305dd4ec60542e66b0c81c" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::min < a href = "namespacecutlass_1_1platform.html#a57c071d2a7305dd4ec60542e66b0c81c" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a57c071d2a7305dd4ec60542e66b0c81c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af6a9a165e53d7e85ae121d5789aa03e0" > < td class = "memTemplParams" colspan = "2" > template< typename T > < / td > < / tr >
< tr class = "memitem:af6a9a165e53d7e85ae121d5789aa03e0" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > const T &   < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#af6a9a165e53d7e85ae121d5789aa03e0" > cutlass::platform::max< / a > (const T & a, const T & b)< / td > < / tr >
< tr class = "memdesc:af6a9a165e53d7e85ae121d5789aa03e0" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > std::max < a href = "namespacecutlass_1_1platform.html#af6a9a165e53d7e85ae121d5789aa03e0" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:af6a9a165e53d7e85ae121d5789aa03e0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab9b8306ae9dc21fa646c49b68fa8e197" > < td class = "memTemplParams" colspan = "2" > template< class T1 , class T2 > < / td > < / tr >
< tr class = "memitem:ab9b8306ae9dc21fa646c49b68fa8e197" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#ab9b8306ae9dc21fa646c49b68fa8e197" > cutlass::platform::operator==< / a > (const pair< T1, T2 > & lhs, const pair< T1, T2 > & rhs)< / td > < / tr >
< tr class = "separator:ab9b8306ae9dc21fa646c49b68fa8e197" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a248f49adf09654d2cd04bd2760ab2566" > < td class = "memTemplParams" colspan = "2" > template< class T1 , class T2 > < / td > < / tr >
< tr class = "memitem:a248f49adf09654d2cd04bd2760ab2566" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a248f49adf09654d2cd04bd2760ab2566" > cutlass::platform::operator!=< / a > (const pair< T1, T2 > & lhs, const pair< T1, T2 > & rhs)< / td > < / tr >
< tr class = "separator:a248f49adf09654d2cd04bd2760ab2566" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a412dbdbc678ecd12b55fcad4ef4155bd" > < td class = "memTemplParams" colspan = "2" > template< class T1 , class T2 > < / td > < / tr >
< tr class = "memitem:a412dbdbc678ecd12b55fcad4ef4155bd" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a412dbdbc678ecd12b55fcad4ef4155bd" > cutlass::platform::operator< < / a > (const pair< T1, T2 > & lhs, const pair< T1, T2 > & rhs)< / td > < / tr >
< tr class = "separator:a412dbdbc678ecd12b55fcad4ef4155bd" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a41d573133357bd555f78d33afc1152d3" > < td class = "memTemplParams" colspan = "2" > template< class T1 , class T2 > < / td > < / tr >
< tr class = "memitem:a41d573133357bd555f78d33afc1152d3" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a41d573133357bd555f78d33afc1152d3" > cutlass::platform::operator< =< / a > (const pair< T1, T2 > & lhs, const pair< T1, T2 > & rhs)< / td > < / tr >
< tr class = "separator:a41d573133357bd555f78d33afc1152d3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a9e8e698d40b8df881991fde9ba2a1b12" > < td class = "memTemplParams" colspan = "2" > template< class T1 , class T2 > < / td > < / tr >
< tr class = "memitem:a9e8e698d40b8df881991fde9ba2a1b12" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a9e8e698d40b8df881991fde9ba2a1b12" > cutlass::platform::operator> < / a > (const pair< T1, T2 > & lhs, const pair< T1, T2 > & rhs)< / td > < / tr >
< tr class = "separator:a9e8e698d40b8df881991fde9ba2a1b12" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab0f21e67c0a4b5c6952042b502c6816f" > < td class = "memTemplParams" colspan = "2" > template< class T1 , class T2 > < / td > < / tr >
< tr class = "memitem:ab0f21e67c0a4b5c6952042b502c6816f" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > < a class = "el" href = "platform_8h.html#a72f0657181cca64b44eb186b707eb380" > constexpr< / a > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#ab0f21e67c0a4b5c6952042b502c6816f" > cutlass::platform::operator> =< / a > (const pair< T1, T2 > & lhs, const pair< T1, T2 > & rhs)< / td > < / tr >
< tr class = "separator:ab0f21e67c0a4b5c6952042b502c6816f" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a90ce74c7faa4e27c888ce56e957b73d5" > < td class = "memTemplParams" colspan = "2" > template< class T1 , class T2 > < / td > < / tr >
< tr class = "memitem:a90ce74c7faa4e27c888ce56e957b73d5" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "cutlass_8h.html#a28c2443a142676d3d71effdae1a986b1" > CUTLASS_HOST_DEVICE< / a > std::pair< T1, T2 >   < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a90ce74c7faa4e27c888ce56e957b73d5" > cutlass::platform::make_pair< / a > (T1 t, T2 u)< / td > < / tr >
< tr class = "separator:a90ce74c7faa4e27c888ce56e957b73d5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ac9068e2d027ffdf5cd564deecc2cb9e8" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:ac9068e2d027ffdf5cd564deecc2cb9e8" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#ac9068e2d027ffdf5cd564deecc2cb9e8" > cutlass::platform::__align__< / a > (1) aligned_chunk< 1 > < / td > < / tr >
< tr class = "separator:ac9068e2d027ffdf5cd564deecc2cb9e8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a0bcb016704ec57f9499e662ba6156f98" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:a0bcb016704ec57f9499e662ba6156f98" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a0bcb016704ec57f9499e662ba6156f98" > cutlass::platform::__align__< / a > (2) aligned_chunk< 2 > < / td > < / tr >
< tr class = "separator:a0bcb016704ec57f9499e662ba6156f98" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a71be5af25eeffa4077777f919e67d8da" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:a71be5af25eeffa4077777f919e67d8da" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a71be5af25eeffa4077777f919e67d8da" > cutlass::platform::__align__< / a > (4) aligned_chunk< 4 > < / td > < / tr >
< tr class = "separator:a71be5af25eeffa4077777f919e67d8da" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a42440254a16d4b6b95b95cc3360ee372" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:a42440254a16d4b6b95b95cc3360ee372" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a42440254a16d4b6b95b95cc3360ee372" > cutlass::platform::__align__< / a > (8) aligned_chunk< 8 > < / td > < / tr >
< tr class = "separator:a42440254a16d4b6b95b95cc3360ee372" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a91d5e970d6ebe619914f40a9510bdb1e" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:a91d5e970d6ebe619914f40a9510bdb1e" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a91d5e970d6ebe619914f40a9510bdb1e" > cutlass::platform::__align__< / a > (16) aligned_chunk< 16 > < / td > < / tr >
< tr class = "separator:a91d5e970d6ebe619914f40a9510bdb1e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a210f4d360b1f9c3d074e71129fe4c0d9" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:a210f4d360b1f9c3d074e71129fe4c0d9" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a210f4d360b1f9c3d074e71129fe4c0d9" > cutlass::platform::__align__< / a > (32) aligned_chunk< 32 > < / td > < / tr >
< tr class = "separator:a210f4d360b1f9c3d074e71129fe4c0d9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae792b1c7ada1a33e306cd552f583bdce" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:ae792b1c7ada1a33e306cd552f583bdce" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#ae792b1c7ada1a33e306cd552f583bdce" > cutlass::platform::__align__< / a > (64) aligned_chunk< 64 > < / td > < / tr >
< tr class = "separator:ae792b1c7ada1a33e306cd552f583bdce" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5712ec4fed335a9b7f863fb3abe3c5eb" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:a5712ec4fed335a9b7f863fb3abe3c5eb" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a5712ec4fed335a9b7f863fb3abe3c5eb" > cutlass::platform::__align__< / a > (128) aligned_chunk< 128 > < / td > < / tr >
< tr class = "separator:a5712ec4fed335a9b7f863fb3abe3c5eb" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a595cc98db29fb4d59772d2e2f52e347a" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:a595cc98db29fb4d59772d2e2f52e347a" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a595cc98db29fb4d59772d2e2f52e347a" > cutlass::platform::__align__< / a > (256) aligned_chunk< 256 > < / td > < / tr >
< tr class = "separator:a595cc98db29fb4d59772d2e2f52e347a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae70bb5d14a66500b47d2e3f83063d4a5" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:ae70bb5d14a66500b47d2e3f83063d4a5" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#ae70bb5d14a66500b47d2e3f83063d4a5" > cutlass::platform::__align__< / a > (512) aligned_chunk< 512 > < / td > < / tr >
< tr class = "separator:ae70bb5d14a66500b47d2e3f83063d4a5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a181e44e9c66f704175590727aaa9e5a1" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:a181e44e9c66f704175590727aaa9e5a1" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a181e44e9c66f704175590727aaa9e5a1" > cutlass::platform::__align__< / a > (1024) aligned_chunk< 1024 > < / td > < / tr >
< tr class = "separator:a181e44e9c66f704175590727aaa9e5a1" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae72c8fa997bb251d4140dceb03147154" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:ae72c8fa997bb251d4140dceb03147154" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#ae72c8fa997bb251d4140dceb03147154" > cutlass::platform::__align__< / a > (2048) aligned_chunk< 2048 > < / td > < / tr >
< tr class = "separator:ae72c8fa997bb251d4140dceb03147154" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ada29683f1b408ae7b73cc8fbe2108628" > < td class = "memTemplParams" colspan = "2" > template< > < / td > < / tr >
< tr class = "memitem:ada29683f1b408ae7b73cc8fbe2108628" > < td class = "memTemplItemLeft" align = "right" valign = "top" > struct  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#ada29683f1b408ae7b73cc8fbe2108628" > cutlass::platform::__align__< / a > (4096) aligned_chunk< 4096 > < / td > < / tr >
< tr class = "separator:ada29683f1b408ae7b73cc8fbe2108628" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3e83320a39137d92042eb0bf93be9678" > < td class = "memTemplParams" colspan = "2" > template< typename T , typename Deleter > < / td > < / tr >
< tr class = "memitem:a3e83320a39137d92042eb0bf93be9678" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacecutlass_1_1platform.html#a3e83320a39137d92042eb0bf93be9678" > cutlass::platform::swap< / a > (unique_ptr< T, Deleter > & lhs, unique_ptr< T, Deleter > & rhs) < a class = "el" href = "platform_8h.html#a189faadd7f99f6c354db09acbb2aafcd" > noexcept< / a > < / td > < / tr >
< tr class = "memdesc:a3e83320a39137d92042eb0bf93be9678" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Specializes the swap algorithm. < a href = "namespacecutlass_1_1platform.html#a3e83320a39137d92042eb0bf93be9678" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a3e83320a39137d92042eb0bf93be9678" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table >
< a name = "details" id = "details" > < / a > < h2 class = "groupheader" > Detailed Description< / h2 >
< div class = "textblock" > < p > This file has three components:< / p >
< p > (1) Macros:< / p > < ul >
< li > Empty macro defines for C++ keywords not supported by the current version of C++. These simply allow compilation to proceed (but do not provide the added semantics).< ul >
< li > < code > noexcept< / code > < / li >
< li > < code > constexpr< / code > < / li >
< li > < code > nullptr< / code > < / li >
< li > < code > static_assert< / code > < / li >
< / ul >
< / li >
< li > Macro functions that we need in constant expressions because the C++ equivalents require constexpr compiler support. These are prefixed with < code > __NV_STD_*< / code > < ul >
< li > < code > __NV_STD_MAX< / code > < / li >
< li > < code > __NV_STD_MIN< / code > < / li >
< / ul >
< / li >
< / ul >
< p > (2) Re-implementations of STL functions and types:< / p > < ul >
< li > C++ features that need the < code > < b > device< / b > < / code > annotation. These are placed into the < code > platform< / code > namespace.< ul >
< li > < code > plus< / code > < / li >
< li > < code > less< / code > < / li >
< li > < code > greater< / code > < / li >
< li > < code > min< / code > < / li >
< li > < code > max< / code > < / li >
< li > < code > methods< / code > on std::pair (==, !=, < , < =, > , > =, and < a class = "el" href = "namespacecutlass_1_1platform.html#a90ce74c7faa4e27c888ce56e957b73d5" > make_pair()< / a > )< / li >
< / ul >
< / li >
< / ul >
< p > (3) Stop-gap implementations of unsupported STL functions and types:< / p > < ul >
< li > STL functions and types defined by C++ 11/14/17/etc. that are not provided by the current version of C++. These are placed into the < code > platform< / code > namespace< ul >
< li > < code > integral_constant< / code > < / li >
< li > < code > nullptr_t< / code > < / li >
< li > < code > true_type< / code > < / li >
< li > < code > false_type< / code > < / li >
< li > < code > bool_constant< / code > < / li >
< li > < code > enable_if< / code > < / li >
< li > < code > conditional< / code > < / li >
< li > < code > is_same< / code > < / li >
< li > < code > is_base_of< / code > < / li >
< li > < code > remove_const< / code > < / li >
< li > < code > remove_volatile< / code > < / li >
< li > < code > remove_cv< / code > < / li >
< li > < code > is_volatile< / code > < / li >
< li > < code > is_pointer< / code > < / li >
< li > < code > is_void< / code > < / li >
< li > < code > is_integral< / code > < / li >
< li > < code > is_floating_point< / code > < / li >
< li > < code > is_arithmetic< / code > < / li >
< li > < code > is_fundamental< / code > < / li >
< li > < code > is_trivially_copyable< / code > < / li >
< li > < code > alignment_of< / code > < / li >
< li > < code > aligned_storage< / code > < / li >
< / ul >
< / li >
< / ul >
< p > (4) Functions and types that are STL-like (but aren't in the STL):< / p > < ul >
< li > < code > TODO:< / code > min and max functors?< / li >
< / ul >
< p > The idea is that, as we drop support for older compilers, we can simply #define the < code > __NV_STD_XYZ< / code > macros and < code > platform< / code > namespace to alias their C++ counterparts (or trivially find-and-replace their occurrences in code text). < / p >
< / div > < h2 class = "groupheader" > Macro Definition Documentation< / h2 >
< a id = "abd31f291635329bc15292954f1f01d38" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#abd31f291635329bc15292954f1f01d38" > ◆ < / a > < / span > __NV_STD_MAX< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define __NV_STD_MAX< / td >
< td > (< / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > a, < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > b  < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td >       (((b) > (a)) ? (b) : (a))< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a39e234a3e3b0018b58df720bcb143420" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a39e234a3e3b0018b58df720bcb143420" > ◆ < / a > < / span > __NV_STD_MIN< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define __NV_STD_MIN< / td >
< td > (< / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > a, < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > b  < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td >       (((b) < (a)) ? (b) : (a))< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "aece7fe71be5aaf8d12dc9e2372f97de4" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aece7fe71be5aaf8d12dc9e2372f97de4" > ◆ < / a > < / span > __platform_cat< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define __platform_cat< / td >
< td > (< / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > a, < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > b  < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td >       < a class = "el" href = "platform_8h.html#acd148999a5caeba8f6fd52e7e288e659" > __platform_cat_< / a > (a, b)< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "acd148999a5caeba8f6fd52e7e288e659" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#acd148999a5caeba8f6fd52e7e288e659" > ◆ < / a > < / span > __platform_cat_< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define __platform_cat_< / td >
< td > (< / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > a, < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > b  < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td >       a##b< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a72f0657181cca64b44eb186b707eb380" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a72f0657181cca64b44eb186b707eb380" > ◆ < / a > < / span > constexpr< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define constexpr< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a189faadd7f99f6c354db09acbb2aafcd" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a189faadd7f99f6c354db09acbb2aafcd" > ◆ < / a > < / span > noexcept< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define noexcept< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "ab979d9d4b4923f7c54d6caa6e1a61936" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab979d9d4b4923f7c54d6caa6e1a61936" > ◆ < / a > < / span > nullptr< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define nullptr      0< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "adde4c9ea91b753491851361a4198c009" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#adde4c9ea91b753491851361a4198c009" > ◆ < / a > < / span > static_assert< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define static_assert< / td >
< td > (< / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > __e, < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" >   < / td >
< td class = "paramname" > __m  < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td >       typedef int < a class = "el" href = "platform_8h.html#aece7fe71be5aaf8d12dc9e2372f97de4" > __platform_cat< / a > (AsSeRt, __LINE__)[(__e) ? 1 : -1]< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< / div > <!-- contents -->
<!-- start footer part -->
< hr class = "footer" / > < address class = "footer" > < small >
2018-10-27 05:54:58 +08:00
Generated on Fri Oct 26 2018 14:53:34 for Cutlass by   < a href = "http://www.doxygen.org/index.html" >
2018-05-17 02:44:56 +08:00
< img class = "footer" src = "doxygen.png" alt = "doxygen" / >
< / a > 1.8.14
< / small > < / address >
< / body >
< / html >