
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.
19 lines
16 KiB
JavaScript
19 lines
16 KiB
JavaScript
var searchData=
|
|
[
|
|
['lanelayout',['LaneLayout',['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShafafd5c61db86cbfe90863578ddd11092.html#a1f24faddd5fae8367bad4af8ff2fea08',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::ColumnMajor, ElementB_, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneLayout()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha8da7a0cfbbe859b701fdd9f2b8566aa7.html#a48f19989a6c2158f65b05003ecc9c677',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::RowMajor, ElementB_, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneLayout()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha84e9f8afb6a4ca9f5dcd219b182d16e7.html#a0324e9579a1d801621325cd0c82b2d99',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::RowMajor, ElementB_, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneLayout()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShab94a11a77dd0565102710907089acee0.html#a1b986b60aa15efb6abf0813d555dac11',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::ColumnMajor, ElementB_, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneLayout()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha34a52cc7b2942e8c290f0032b6779b52.html#a66c65842f2237de04938014b1e443547',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::ColumnMajor, int8_t, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneLayout()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShaaf312aafe9da92ea9d417bcc12a8e7dc.html#a7cb67e3594ca449c7d2aa96a53af4a1b',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneLayout()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha863d4139ccaa713bc4bde32c425f4067.html#a496cf8aeb1401f238ec18fb268b7a04d',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::RowMajor, int8_t, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneLayout()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha2c0d0b7cdb5c4bcb11e83c058eb65345.html#af50d71b203779b393dc572c379bc06e8',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::ColumnMajor, int8_t, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneLayout()']]],
|
|
['lanem',['LaneM',['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShafafd5c61db86cbfe90863578ddd11092.html#a1b3217db1d2c0ed2a5f6ec128a2f240d',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::ColumnMajor, ElementB_, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneM()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha8da7a0cfbbe859b701fdd9f2b8566aa7.html#abc08157c25c1aa3db1309114325b5894',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::RowMajor, ElementB_, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneM()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha84e9f8afb6a4ca9f5dcd219b182d16e7.html#a9db6f5e69a9d1ded6458b201fe43a006',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::RowMajor, ElementB_, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneM()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShab94a11a77dd0565102710907089acee0.html#abbb050a9f8e623ef752a0d524e3f9c41',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::ColumnMajor, ElementB_, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneM()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha34a52cc7b2942e8c290f0032b6779b52.html#a1d4eae7e2ea69cc172dbde0d6819af1b',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::ColumnMajor, int8_t, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneM()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShaaf312aafe9da92ea9d417bcc12a8e7dc.html#aad83ca7a224399e3475bb40d2d33ce99',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneM()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha863d4139ccaa713bc4bde32c425f4067.html#a2891eb4dfe107d5e206d82c9b409f538',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::RowMajor, int8_t, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneM()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha2c0d0b7cdb5c4bcb11e83c058eb65345.html#a02a9cf5168ad4317406a71eb9934dd43',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::ColumnMajor, int8_t, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneM()']]],
|
|
['lanen',['LaneN',['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShafafd5c61db86cbfe90863578ddd11092.html#a314973e2cec1559f54505965cf3c7cdc',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::ColumnMajor, ElementB_, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneN()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha8da7a0cfbbe859b701fdd9f2b8566aa7.html#a7e692bab9288ff9d3fdd0fa20028adcc',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::RowMajor, ElementB_, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneN()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha84e9f8afb6a4ca9f5dcd219b182d16e7.html#ab929adb91ea0dcf95dfc1081a82c6520',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::RowMajor, ElementB_, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneN()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShab94a11a77dd0565102710907089acee0.html#a73a9507bca254ae2811231205144ac7b',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 1 >, ElementA_, layout::ColumnMajor, ElementB_, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneN()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha34a52cc7b2942e8c290f0032b6779b52.html#afd4a52cec8cb61475cc856eb23189af8',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::ColumnMajor, int8_t, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneN()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmShaaf312aafe9da92ea9d417bcc12a8e7dc.html#a8b867e482c60af0034b5f824af18cf4b',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::RowMajor, int8_t, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneN()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha863d4139ccaa713bc4bde32c425f4067.html#aa33a2aa437c69706a61863c182e7d033',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::RowMajor, int8_t, layout::RowMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneN()'],['../structcutlass_1_1gemm_1_1threadblock_1_1DefaultMmaCore_3_01Shape___00_01WarpShape___00_01GemmSha2c0d0b7cdb5c4bcb11e83c058eb65345.html#a6b6a46649ec06c088f45806d8410de41',1,'cutlass::gemm::threadblock::DefaultMmaCore< Shape_, WarpShape_, GemmShape< 1, 1, 4 >, int8_t, layout::ColumnMajor, int8_t, layout::ColumnMajor, ElementC_, LayoutC_, arch::OpClassSimt, 2, Operator_ >::LaneN()']]],
|
|
['layout',['layout',['../structcutlass_1_1library_1_1TensorDescription.html#a7e49f69572602ee1e0dd4a9e7ce6abff',1,'cutlass::library::TensorDescription']]],
|
|
['lda',['lda',['../structcutlass_1_1reduction_1_1BatchedReductionTraits_1_1Params.html#ab14fa69759f1d600a28df4fabaf59c28',1,'cutlass::reduction::BatchedReductionTraits::Params::lda()'],['../structcutlass_1_1library_1_1GemmConfiguration.html#a078d977948a41d286de674ab8e63acd3',1,'cutlass::library::GemmConfiguration::lda()'],['../structcutlass_1_1library_1_1GemmBatchedConfiguration.html#abdcaca1e6774ad57398ab95a86c9a52a',1,'cutlass::library::GemmBatchedConfiguration::lda()'],['../structcutlass_1_1library_1_1GemmArrayConfiguration.html#ab42a789f91762e9bab50b22f598b3519',1,'cutlass::library::GemmArrayConfiguration::lda()'],['../structcutlass_1_1library_1_1GemmPlanarComplexConfiguration.html#ac624dfbc645e1a5bed0a8bd21bae423b',1,'cutlass::library::GemmPlanarComplexConfiguration::lda()'],['../structcutlass_1_1library_1_1GemmPlanarComplexBatchedConfiguration.html#a8960f6d521a82bc357043837df46bca8',1,'cutlass::library::GemmPlanarComplexBatchedConfiguration::lda()']]],
|
|
['ldb',['ldb',['../structcutlass_1_1library_1_1GemmConfiguration.html#ac71c0385302dcf7fd909201af9ffcadd',1,'cutlass::library::GemmConfiguration::ldb()'],['../structcutlass_1_1library_1_1GemmBatchedConfiguration.html#a0ad6ba92a520a05548a3f0f59f6a9fa6',1,'cutlass::library::GemmBatchedConfiguration::ldb()'],['../structcutlass_1_1library_1_1GemmArrayConfiguration.html#afbad9adf0ca66e3019962a6b8c901039',1,'cutlass::library::GemmArrayConfiguration::ldb()'],['../structcutlass_1_1library_1_1GemmPlanarComplexConfiguration.html#ac2b51a2bf486295e03b9a66c32f72d32',1,'cutlass::library::GemmPlanarComplexConfiguration::ldb()'],['../structcutlass_1_1library_1_1GemmPlanarComplexBatchedConfiguration.html#af2c7b53eb1b84f117f5b452590bfe48e',1,'cutlass::library::GemmPlanarComplexBatchedConfiguration::ldb()']]],
|
|
['ldc',['ldc',['../structcutlass_1_1reduction_1_1BatchedReductionTraits_1_1Params.html#a6bdb4dfce17da648b55c7aa68ef5b191',1,'cutlass::reduction::BatchedReductionTraits::Params::ldc()'],['../structcutlass_1_1library_1_1GemmConfiguration.html#a82e5e3864bf83de66496d02919779a2a',1,'cutlass::library::GemmConfiguration::ldc()'],['../structcutlass_1_1library_1_1GemmBatchedConfiguration.html#a2207582d23082fe772bc7e4a16f54901',1,'cutlass::library::GemmBatchedConfiguration::ldc()'],['../structcutlass_1_1library_1_1GemmArrayConfiguration.html#a4d2ef80faea901070d6fdce2f9002c1c',1,'cutlass::library::GemmArrayConfiguration::ldc()'],['../structcutlass_1_1library_1_1GemmPlanarComplexConfiguration.html#aa648783c05556970d48a01670b3f82b0',1,'cutlass::library::GemmPlanarComplexConfiguration::ldc()'],['../structcutlass_1_1library_1_1GemmPlanarComplexBatchedConfiguration.html#a473239045b6c9e93cf514395634fc90c',1,'cutlass::library::GemmPlanarComplexBatchedConfiguration::ldc()']]],
|
|
['ldd',['ldd',['../structcutlass_1_1reduction_1_1BatchedReductionTraits_1_1Params.html#ad24096385e51009866b5aafd90b42ad2',1,'cutlass::reduction::BatchedReductionTraits::Params::ldd()'],['../structcutlass_1_1library_1_1GemmConfiguration.html#a71b24b44a13976c63deee35d78f49026',1,'cutlass::library::GemmConfiguration::ldd()'],['../structcutlass_1_1library_1_1GemmBatchedConfiguration.html#a4dae2fc7399db02c18cccaaf5f0ac585',1,'cutlass::library::GemmBatchedConfiguration::ldd()'],['../structcutlass_1_1library_1_1GemmArrayConfiguration.html#a92796913ed317d3eb75a6a772c1af913',1,'cutlass::library::GemmArrayConfiguration::ldd()'],['../structcutlass_1_1library_1_1GemmPlanarComplexConfiguration.html#a75b936d270913d10d58047cd77c44ecc',1,'cutlass::library::GemmPlanarComplexConfiguration::ldd()'],['../structcutlass_1_1library_1_1GemmPlanarComplexBatchedConfiguration.html#a5c89456cb420e174fb8f36568639d091',1,'cutlass::library::GemmPlanarComplexBatchedConfiguration::ldd()']]],
|
|
['ldsmshapecontiguous',['LdsmShapeContiguous',['../structcutlass_1_1gemm_1_1warp_1_1MmaTensorOpMultiplicandTileIterator_3_01Shape___00_01Operand___07638f8b7761f6e2e2e6918e2c05e739.html#a18e46ed2afcbd4e694dccb7dfbb42545',1,'cutlass::gemm::warp::MmaTensorOpMultiplicandTileIterator< Shape_, Operand_, Element_, cutlass::layout::TensorOpMultiplicandCongruous< sizeof_bits< Element_ >::value, 64 >, InstructionShape_, OpDelta_, 32, PartitionsK_ >::Policy::LdsmShapeContiguous()'],['../structcutlass_1_1gemm_1_1warp_1_1MmaTensorOpMultiplicandTileIterator_3_01Shape___00_01Operand___0784c74bd670999ec23ad8ef9dc55777.html#ae65742246163ec6c911f4d153beecfe6',1,'cutlass::gemm::warp::MmaTensorOpMultiplicandTileIterator< Shape_, Operand_, Element_, cutlass::layout::TensorOpMultiplicandCrosswise< sizeof_bits< Element_ >::value, Crosswise >, InstructionShape_, OpDelta_, 32, PartitionsK_ >::Policy::LdsmShapeContiguous()']]],
|
|
['ldsmshapestrided',['LdsmShapeStrided',['../structcutlass_1_1gemm_1_1warp_1_1MmaTensorOpMultiplicandTileIterator_3_01Shape___00_01Operand___07638f8b7761f6e2e2e6918e2c05e739.html#a8bb90a3c31441e3a45124b0a7feefa93',1,'cutlass::gemm::warp::MmaTensorOpMultiplicandTileIterator< Shape_, Operand_, Element_, cutlass::layout::TensorOpMultiplicandCongruous< sizeof_bits< Element_ >::value, 64 >, InstructionShape_, OpDelta_, 32, PartitionsK_ >::Policy::LdsmShapeStrided()'],['../structcutlass_1_1gemm_1_1warp_1_1MmaTensorOpMultiplicandTileIterator_3_01Shape___00_01Operand___0784c74bd670999ec23ad8ef9dc55777.html#a4e3960dcef4ce7298df62cbf64a4f7d1',1,'cutlass::gemm::warp::MmaTensorOpMultiplicandTileIterator< Shape_, Operand_, Element_, cutlass::layout::TensorOpMultiplicandCrosswise< sizeof_bits< Element_ >::value, Crosswise >, InstructionShape_, OpDelta_, 32, PartitionsK_ >::Policy::LdsmShapeStrided()']]],
|
|
['lhs',['lhs',['../structcutlass_1_1reference_1_1host_1_1detail_1_1TensorEqualsFunc.html#ac2b2361d58c9105d14e369e4b34a5d6a',1,'cutlass::reference::host::detail::TensorEqualsFunc']]],
|
|
['location',['location',['../structcutlass_1_1reference_1_1host_1_1detail_1_1TensorContainsFunc.html#a77a8114df44c697e262f2b6afac6255e',1,'cutlass::reference::host::detail::TensorContainsFunc']]],
|
|
['lock',['lock',['../classcutlass_1_1Semaphore.html#aa68a93d7f787b8c1d1805c070b1e7249',1,'cutlass::Semaphore']]],
|
|
['log_5fextent_5frange',['log_extent_range',['../structcutlass_1_1library_1_1TensorDescription.html#a549398057cf5a4d21baaa1c329d6a8d0',1,'cutlass::library::TensorDescription']]],
|
|
['log_5fstride_5frange',['log_stride_range',['../structcutlass_1_1library_1_1TensorDescription.html#a15d65f72605fcd62f4b7f23f4d461238',1,'cutlass::library::TensorDescription']]]
|
|
];
|