cutlass/docs/search/classes_0.js
Andrew Kerr fb335f6a5f
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.
2019-11-19 16:55:34 -08:00

39 lines
7.0 KiB
JavaScript

var searchData=
[
['accesstype',['AccessType',['../structcutlass_1_1transform_1_1threadblock_1_1PredicatedTileIterator2dThreadTile_3_01Shape___00_0b878062cc0cd214bf7e17d74ff17e246.html',1,'cutlass::transform::threadblock::PredicatedTileIterator2dThreadTile< Shape_, Element_, layout::PitchLinear, AdvanceRank, ThreadMap_, Transpose_ >']]],
['aligned_5fchunk',['aligned_chunk',['../structcutlass_1_1platform_1_1aligned__chunk.html',1,'cutlass::platform']]],
['aligned_5fstorage',['aligned_storage',['../structcutlass_1_1platform_1_1aligned__storage.html',1,'cutlass::platform']]],
['alignedarray',['AlignedArray',['../classcutlass_1_1AlignedArray.html',1,'cutlass']]],
['alignedbuffer',['AlignedBuffer',['../structcutlass_1_1AlignedBuffer.html',1,'cutlass']]],
['alignedbuffer_3c_20element_2c_20cutlass_3a_3amatrixshape_3a_3akcount_20_3e',['AlignedBuffer< Element, cutlass::MatrixShape::kCount >',['../structcutlass_1_1AlignedBuffer.html',1,'cutlass']]],
['alignedbuffer_3c_20typename_20operator_3a_3aelementa_2c_20cutlass_3a_3amatrixshape_3a_3akcount_20_3e',['AlignedBuffer< typename Operator::ElementA, cutlass::MatrixShape::kCount >',['../structcutlass_1_1AlignedBuffer.html',1,'cutlass']]],
['alignedbuffer_3c_20typename_20operator_3a_3aelementb_2c_20cutlass_3a_3amatrixshape_3a_3akcount_20_3e',['AlignedBuffer< typename Operator::ElementB, cutlass::MatrixShape::kCount >',['../structcutlass_1_1AlignedBuffer.html',1,'cutlass']]],
['alignment_5fof',['alignment_of',['../structcutlass_1_1platform_1_1alignment__of.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20const_20value_5ft_20_3e',['alignment_of< const value_t >',['../structcutlass_1_1platform_1_1alignment__of_3_01const_01value__t_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20const_20volatile_20value_5ft_20_3e',['alignment_of< const volatile value_t >',['../structcutlass_1_1platform_1_1alignment__of_3_01const_01volatile_01value__t_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20double2_20_3e',['alignment_of< double2 >',['../structcutlass_1_1platform_1_1alignment__of_3_01double2_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20double4_20_3e',['alignment_of< double4 >',['../structcutlass_1_1platform_1_1alignment__of_3_01double4_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20float4_20_3e',['alignment_of< float4 >',['../structcutlass_1_1platform_1_1alignment__of_3_01float4_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20int4_20_3e',['alignment_of< int4 >',['../structcutlass_1_1platform_1_1alignment__of_3_01int4_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20long4_20_3e',['alignment_of< long4 >',['../structcutlass_1_1platform_1_1alignment__of_3_01long4_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20longlong2_20_3e',['alignment_of< longlong2 >',['../structcutlass_1_1platform_1_1alignment__of_3_01longlong2_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20longlong4_20_3e',['alignment_of< longlong4 >',['../structcutlass_1_1platform_1_1alignment__of_3_01longlong4_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20uint4_20_3e',['alignment_of< uint4 >',['../structcutlass_1_1platform_1_1alignment__of_3_01uint4_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20ulong4_20_3e',['alignment_of< ulong4 >',['../structcutlass_1_1platform_1_1alignment__of_3_01ulong4_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20ulonglong2_20_3e',['alignment_of< ulonglong2 >',['../structcutlass_1_1platform_1_1alignment__of_3_01ulonglong2_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20ulonglong4_20_3e',['alignment_of< ulonglong4 >',['../structcutlass_1_1platform_1_1alignment__of_3_01ulonglong4_01_4.html',1,'cutlass::platform']]],
['alignment_5fof_3c_20volatile_20value_5ft_20_3e',['alignment_of< volatile value_t >',['../structcutlass_1_1platform_1_1alignment__of_3_01volatile_01value__t_01_4.html',1,'cutlass::platform']]],
['allocation',['allocation',['../structcutlass_1_1device__memory_1_1allocation.html',1,'cutlass::device_memory']]],
['allocation_3c_20element_20_3e',['allocation< Element >',['../structcutlass_1_1device__memory_1_1allocation.html',1,'cutlass::device_memory']]],
['arguments',['Arguments',['../structcutlass_1_1gemm_1_1device_1_1GemmBatched_3_01ElementA___00_01LayoutA___00_01ElementB___00_213d78696663f4231cd52c6a277c60e5.html',1,'cutlass::gemm::device::GemmBatched< ElementA_, LayoutA_, ElementB_, LayoutB_, ElementC_, layout::ColumnMajor, ElementAccumulator_, OperatorClass_, ArchTag_, ThreadblockShape_, WarpShape_, InstructionShape_, EpilogueOutputOp_, ThreadblockSwizzle_, Stages, AlignmentA, AlignmentB, Operator_ >']]],
['arguments',['Arguments',['../structcutlass_1_1gemm_1_1device_1_1Gemm_3_01ElementA___00_01LayoutA___00_01ElementB___00_01Layou1b211cc9c97c022d8fe10f2dd32c8709.html',1,'cutlass::gemm::device::Gemm< ElementA_, LayoutA_, ElementB_, LayoutB_, ElementC_, layout::ColumnMajor, ElementAccumulator_, OperatorClass_, ArchTag_, ThreadblockShape_, WarpShape_, InstructionShape_, EpilogueOutputOp_, ThreadblockSwizzle_, Stages, AlignmentA, AlignmentB, SplitKSerial, Operator_, IsBetaZero >']]],
['arguments',['Arguments',['../structcutlass_1_1gemm_1_1device_1_1Gemm_1_1Arguments.html',1,'cutlass::gemm::device::Gemm']]],
['arguments',['Arguments',['../structcutlass_1_1gemm_1_1device_1_1GemmSplitKParallel_3_01ElementA___00_01LayoutA___00_01Elementafcb1aeaf2035a7ac769d7acc233423b.html',1,'cutlass::gemm::device::GemmSplitKParallel< ElementA_, LayoutA_, ElementB_, LayoutB_, ElementC_, layout::ColumnMajor, ElementAccumulator_, OperatorClass_, ArchTag_, ThreadblockShape_, WarpShape_, InstructionShape_, EpilogueOutputOp_, ConvertScaledOp_, ReductionOp_, ThreadblockSwizzle_, Stages, kAlignmentA, kAlignmentB, Operator_ >']]],
['arguments',['Arguments',['../structcutlass_1_1gemm_1_1device_1_1GemmBatched_1_1Arguments.html',1,'cutlass::gemm::device::GemmBatched']]],
['arguments',['Arguments',['../structcutlass_1_1gemm_1_1device_1_1GemmComplex_1_1Arguments.html',1,'cutlass::gemm::device::GemmComplex']]],
['arguments',['Arguments',['../structcutlass_1_1gemm_1_1device_1_1GemmSplitKParallel_1_1Arguments.html',1,'cutlass::gemm::device::GemmSplitKParallel']]],
['arguments',['Arguments',['../structcutlass_1_1gemm_1_1device_1_1GemmComplex_3_01ElementA___00_01LayoutA___00_01ElementB___00_a3923967cafb5cb9774c320dc24baa77.html',1,'cutlass::gemm::device::GemmComplex< ElementA_, LayoutA_, ElementB_, LayoutB_, ElementC_, layout::ColumnMajor, ElementAccumulator_, OperatorClass_, ArchTag_, ThreadblockShape_, WarpShape_, InstructionShape_, EpilogueOutputOp_, ThreadblockSwizzle_, Stages, TransformA, TransformB, SplitKSerial >']]],
['array_3c_20t_2c_20n_2c_20false_20_3e',['Array< T, N, false >',['../classcutlass_1_1Array_3_01T_00_01N_00_01false_01_4.html',1,'cutlass']]],
['array_3c_20t_2c_20n_2c_20true_20_3e',['Array< T, N, true >',['../classcutlass_1_1Array_3_01T_00_01N_00_01true_01_4.html',1,'cutlass']]]
];