CUTLASS 2.0 (#62)
CUTLASS 2.0 Substantially refactored for - Better performance, particularly for native Turing Tensor Cores - Robust and durable templates spanning the design space - Encapsulated functionality embodying modern C++11 programming techniques - Optimized containers and data types for efficient, generic, portable device code Updates to: - Quick start guide - Documentation - Utilities - CUTLASS Profiler Native Turing Tensor Cores - Efficient GEMM kernels targeting Turing Tensor Cores - Mixed-precision floating point, 8-bit integer, 4-bit integer, and binarized operands Coverage of existing CUTLASS functionality: - GEMM kernels targeting CUDA and Tensor Cores in NVIDIA GPUs - Volta Tensor Cores through native mma.sync and through WMMA API - Optimizations such as parallel reductions, threadblock rasterization, and intra-threadblock reductions - Batched GEMM operations - Complex-valued GEMMs Note: this commit and all that follow require a host compiler supporting C++11 or greater.
This commit is contained in:
+22
-22
@@ -1,25 +1,25 @@
|
||||
var searchData=
|
||||
[
|
||||
['h',['h',['../structcutlass_1_1TileCoord.html#ac7c697a6fd23c7f49ff19aa6db4a41a3',1,'cutlass::TileCoord::h() const'],['../structcutlass_1_1TileCoord.html#a1d91ffa0a63ad03431ff79185526f92f',1,'cutlass::TileCoord::h()']]],
|
||||
['hgemm_5fglobal_5ftile_2eh',['hgemm_global_tile.h',['../hgemm__global__tile_8h.html',1,'']]],
|
||||
['hgemm_5fmultiply_5fadd_2eh',['hgemm_multiply_add.h',['../hgemm__multiply__add_8h.html',1,'']]],
|
||||
['hgemm_5fswizzle_2eh',['hgemm_swizzle.h',['../hgemm__swizzle_8h.html',1,'']]],
|
||||
['hgemm_5ftraits_2eh',['hgemm_traits.h',['../hgemm__traits_8h.html',1,'']]],
|
||||
['hgemmconfig',['HgemmConfig',['../structcutlass_1_1gemm_1_1HgemmConfig.html',1,'cutlass::gemm']]],
|
||||
['hgemmcrosswiseglobaltiletraits',['HgemmCrosswiseGlobalTileTraits',['../structcutlass_1_1gemm_1_1HgemmCrosswiseGlobalTileTraits.html',1,'cutlass::gemm']]],
|
||||
['hgemmswizzle',['HgemmSwizzle',['../structcutlass_1_1gemm_1_1HgemmSwizzle.html',1,'cutlass::gemm::HgemmSwizzle< GlobalIterator_ >'],['../structcutlass_1_1gemm_1_1HgemmSwizzle.html#ac3c52e0fee9b37a3dfc39ca168a63d36',1,'cutlass::gemm::HgemmSwizzle::HgemmSwizzle()']]],
|
||||
['hgemmtiletraitshelpera',['HgemmTileTraitsHelperA',['../structcutlass_1_1gemm_1_1HgemmTileTraitsHelperA.html',1,'cutlass::gemm']]],
|
||||
['hgemmtiletraitshelpera_3c_20matrixlayout_3a_3akrowmajor_2c_20gemmconfig_5f_20_3e',['HgemmTileTraitsHelperA< MatrixLayout::kRowMajor, GemmConfig_ >',['../structcutlass_1_1gemm_1_1HgemmTileTraitsHelperA_3_01MatrixLayout_1_1kRowMajor_00_01GemmConfig___01_4.html',1,'cutlass::gemm']]],
|
||||
['hgemmtiletraitshelperb',['HgemmTileTraitsHelperB',['../structcutlass_1_1gemm_1_1HgemmTileTraitsHelperB.html',1,'cutlass::gemm']]],
|
||||
['hgemmtiletraitshelperb_3c_20matrixlayout_3a_3akcolumnmajor_2c_20gemmconfig_5f_20_3e',['HgemmTileTraitsHelperB< MatrixLayout::kColumnMajor, GemmConfig_ >',['../structcutlass_1_1gemm_1_1HgemmTileTraitsHelperB_3_01MatrixLayout_1_1kColumnMajor_00_01GemmConfig___01_4.html',1,'cutlass::gemm']]],
|
||||
['hgemmtraits',['HgemmTraits',['../structcutlass_1_1gemm_1_1HgemmTraits.html',1,'cutlass::gemm']]],
|
||||
['hgemmtraitshelper',['HgemmTraitsHelper',['../structcutlass_1_1gemm_1_1HgemmTraitsHelper.html',1,'cutlass::gemm']]],
|
||||
['hgemmtransformera',['HgemmTransformerA',['../structcutlass_1_1gemm_1_1HgemmTransformerA.html',1,'cutlass::gemm']]],
|
||||
['hgemmtransformera_3c_20matrixlayout_3a_3akcolumnmajor_2c_20iterator_5f_20_3e',['HgemmTransformerA< MatrixLayout::kColumnMajor, Iterator_ >',['../structcutlass_1_1gemm_1_1HgemmTransformerA_3_01MatrixLayout_1_1kColumnMajor_00_01Iterator___01_4.html',1,'cutlass::gemm']]],
|
||||
['hgemmtransformera_3c_20matrixlayout_3a_3akrowmajor_2c_20iterator_5f_20_3e',['HgemmTransformerA< MatrixLayout::kRowMajor, Iterator_ >',['../structcutlass_1_1gemm_1_1HgemmTransformerA_3_01MatrixLayout_1_1kRowMajor_00_01Iterator___01_4.html',1,'cutlass::gemm']]],
|
||||
['hgemmtransformerb',['HgemmTransformerB',['../structcutlass_1_1gemm_1_1HgemmTransformerB.html',1,'cutlass::gemm']]],
|
||||
['hgemmtransformerb_3c_20matrixlayout_3a_3akcolumnmajor_2c_20iterator_5f_20_3e',['HgemmTransformerB< MatrixLayout::kColumnMajor, Iterator_ >',['../structcutlass_1_1gemm_1_1HgemmTransformerB_3_01MatrixLayout_1_1kColumnMajor_00_01Iterator___01_4.html',1,'cutlass::gemm']]],
|
||||
['hgemmtransformerb_3c_20matrixlayout_3a_3akrowmajor_2c_20iterator_5f_20_3e',['HgemmTransformerB< MatrixLayout::kRowMajor, Iterator_ >',['../structcutlass_1_1gemm_1_1HgemmTransformerB_3_01MatrixLayout_1_1kRowMajor_00_01Iterator___01_4.html',1,'cutlass::gemm']]],
|
||||
['hw',['hw',['../structcutlass_1_1TileCoord.html#a0927c4ba212d00f3687034afe6bb8daf',1,'cutlass::TileCoord']]],
|
||||
['hwc',['hwc',['../structcutlass_1_1TileCoord.html#a11bb7593ce7bba2dcedd199322a8b42b',1,'cutlass::TileCoord']]]
|
||||
['h',['h',['../structcutlass_1_1Tensor4DCoord.html#a71dda571a04037e564f238bb9a76f213',1,'cutlass::Tensor4DCoord::h() const '],['../structcutlass_1_1Tensor4DCoord.html#ae399c4159fb4e799c42bd882df2ccce7',1,'cutlass::Tensor4DCoord::h()']]],
|
||||
['half_2eh',['half.h',['../half_8h.html',1,'']]],
|
||||
['half_5ft',['half_t',['../structcutlass_1_1half__t.html#af51056b4916dfea5b3621cdeddab67e9',1,'cutlass::half_t::half_t()'],['../structcutlass_1_1half__t.html#a25f60fd3977cd11e26819cc1d3b0dc07',1,'cutlass::half_t::half_t(half const &x)'],['../structcutlass_1_1half__t.html#a81af113694141b181d96d81f562bb325',1,'cutlass::half_t::half_t(float x)'],['../structcutlass_1_1half__t.html#a4a4ece050c5bb376d419299c228b270e',1,'cutlass::half_t::half_t(double x)'],['../structcutlass_1_1half__t.html#ab6e3d4d165819edabf8b4757d42ccf3c',1,'cutlass::half_t::half_t(int x)'],['../structcutlass_1_1half__t.html#a338d628504f733a23e69f2a60204c1b8',1,'cutlass::half_t::half_t(unsigned x)']]],
|
||||
['half_5ft',['half_t',['../structcutlass_1_1half__t.html',1,'cutlass']]],
|
||||
['has_5fdenorm',['has_denorm',['../structstd_1_1numeric__limits_3_01cutlass_1_1half__t_01_4.html#aaf46b5d03403828c1e6633fb714ffd84',1,'std::numeric_limits< cutlass::half_t >']]],
|
||||
['has_5fdenorm_5floss',['has_denorm_loss',['../structstd_1_1numeric__limits_3_01cutlass_1_1half__t_01_4.html#a8b371f82151fd0238b7da083fa2b87a9',1,'std::numeric_limits< cutlass::half_t >']]],
|
||||
['has_5finfinity',['has_infinity',['../structstd_1_1numeric__limits_3_01cutlass_1_1half__t_01_4.html#a6f7f2fbe6cd7a04803b90b8fa9172098',1,'std::numeric_limits< cutlass::half_t >']]],
|
||||
['has_5fquiet_5fnan',['has_quiet_NaN',['../structstd_1_1numeric__limits_3_01cutlass_1_1half__t_01_4.html#a3d75832e46bc154758e35a03a624ccf8',1,'std::numeric_limits< cutlass::half_t >']]],
|
||||
['has_5fsignaling_5fnan',['has_signaling_NaN',['../structstd_1_1numeric__limits_3_01cutlass_1_1half__t_01_4.html#a68a0d0f6ecc2f3b84f2e71475b2c48bd',1,'std::numeric_limits< cutlass::half_t >']]],
|
||||
['host_5fdata',['host_data',['../classcutlass_1_1HostTensor.html#a7d34307e09d4ea09d68abbf31fe33788',1,'cutlass::HostTensor::host_data()'],['../classcutlass_1_1HostTensor.html#adafe2bee53260d47bc60479c50953f57',1,'cutlass::HostTensor::host_data(LongIndex idx)'],['../classcutlass_1_1HostTensor.html#a3dd62ca461666b3ac7e690e2befecaae',1,'cutlass::HostTensor::host_data() const '],['../classcutlass_1_1HostTensor.html#a7741d51bf7d241d4821e52e47b704c69',1,'cutlass::HostTensor::host_data(LongIndex idx) const ']]],
|
||||
['host_5fdata_5fptr_5foffset',['host_data_ptr_offset',['../classcutlass_1_1HostTensor.html#a252ce9281a40863f32be25d3b40d6373',1,'cutlass::HostTensor']]],
|
||||
['host_5fref',['host_ref',['../classcutlass_1_1HostTensor.html#ac921be812016052c690d2dc808d415f1',1,'cutlass::HostTensor::host_ref(LongIndex ptr_element_offset=0)'],['../classcutlass_1_1HostTensor.html#a3c5b60678dfa105b10c87dfaab4cf395',1,'cutlass::HostTensor::host_ref(LongIndex ptr_element_offset=0) const ']]],
|
||||
['host_5freorder_2eh',['host_reorder.h',['../host__reorder_8h.html',1,'']]],
|
||||
['host_5ftensor_2eh',['host_tensor.h',['../host__tensor_8h.html',1,'']]],
|
||||
['host_5ftype',['host_type',['../structcutlass_1_1TypeTraits.html#a46c611219c13251a56122b385c096b83',1,'cutlass::TypeTraits::host_type()'],['../structcutlass_1_1TypeTraits_3_01int8__t_01_4.html#a97f22781b0e3895fb981693e20f915d6',1,'cutlass::TypeTraits< int8_t >::host_type()'],['../structcutlass_1_1TypeTraits_3_01uint8__t_01_4.html#a38489c4605f497c7d7d8b766935805ed',1,'cutlass::TypeTraits< uint8_t >::host_type()'],['../structcutlass_1_1TypeTraits_3_01int_01_4.html#adf3d967f203fd5010c88d02a90ff80f4',1,'cutlass::TypeTraits< int >::host_type()'],['../structcutlass_1_1TypeTraits_3_01unsigned_01_4.html#ad829a8b3d5aa22ad4777d31fd32fbbf0',1,'cutlass::TypeTraits< unsigned >::host_type()'],['../structcutlass_1_1TypeTraits_3_01int64__t_01_4.html#a40e3692627a4d7697c573f0e90856ff2',1,'cutlass::TypeTraits< int64_t >::host_type()'],['../structcutlass_1_1TypeTraits_3_01uint64__t_01_4.html#aa876cb0da0b4537d2a8af97db58c98b8',1,'cutlass::TypeTraits< uint64_t >::host_type()'],['../structcutlass_1_1TypeTraits_3_01half__t_01_4.html#a6ede104173852286f2b52d7db06a47cb',1,'cutlass::TypeTraits< half_t >::host_type()'],['../structcutlass_1_1TypeTraits_3_01float_01_4.html#a9c54e89b3f094fb201b007367083c4b5',1,'cutlass::TypeTraits< float >::host_type()'],['../structcutlass_1_1TypeTraits_3_01double_01_4.html#abedd7daeba38be5c7c6d3b3753da85b5',1,'cutlass::TypeTraits< double >::host_type()'],['../structcutlass_1_1TypeTraits_3_01complex_3_01half_01_4_01_4.html#ae7f5f02fd2b6307a8fcc3e0d146ec885',1,'cutlass::TypeTraits< complex< half > >::host_type()'],['../structcutlass_1_1TypeTraits_3_01complex_3_01half__t_01_4_01_4.html#a2ccf6efccd8a576ca082ad34240fcaa2',1,'cutlass::TypeTraits< complex< half_t > >::host_type()'],['../structcutlass_1_1TypeTraits_3_01complex_3_01float_01_4_01_4.html#a4e6d27a12f835434a16b0f7bc92ae0d2',1,'cutlass::TypeTraits< complex< float > >::host_type()'],['../structcutlass_1_1TypeTraits_3_01complex_3_01double_01_4_01_4.html#a832a72bde8685698eaba0353b6b2d3af',1,'cutlass::TypeTraits< complex< double > >::host_type()']]],
|
||||
['host_5fview',['host_view',['../classcutlass_1_1HostTensor.html#a75ce60d02c9d8fdcbcaceecc6b3ec7fa',1,'cutlass::HostTensor::host_view(LongIndex ptr_element_offset=0)'],['../classcutlass_1_1HostTensor.html#a232e640ebb4b8cf21b44653d7800c5a7',1,'cutlass::HostTensor::host_view(LongIndex ptr_element_offset=0) const ']]],
|
||||
['hosttensor',['HostTensor',['../classcutlass_1_1HostTensor.html#af50ce8b091c106ac88b75e15ab028868',1,'cutlass::HostTensor::HostTensor()'],['../classcutlass_1_1HostTensor.html#abf381d496b50aad3df4bb72e3d891bac',1,'cutlass::HostTensor::HostTensor(TensorCoord const &extent, bool device_backed=true)'],['../classcutlass_1_1HostTensor.html#a9d71a824b0e1a4f1e8a88abecdff10b0',1,'cutlass::HostTensor::HostTensor(TensorCoord const &extent, Layout const &layout, bool device_backed=true)']]],
|
||||
['hosttensor',['HostTensor',['../classcutlass_1_1HostTensor.html',1,'cutlass']]],
|
||||
['tensor_5fcompare_2eh',['tensor_compare.h',['../host_2tensor__compare_8h.html',1,'']]],
|
||||
['tensor_5felementwise_2eh',['tensor_elementwise.h',['../host_2tensor__elementwise_8h.html',1,'']]],
|
||||
['tensor_5ffill_2eh',['tensor_fill.h',['../host_2tensor__fill_8h.html',1,'']]],
|
||||
['tensor_5fforeach_2eh',['tensor_foreach.h',['../host_2tensor__foreach_8h.html',1,'']]]
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user