30 #if !defined(__CUDACC_RTC__) || defined(CUTLASS_NVRTC_HAS_FP16) 31 #include <cuda_fp16.h> 40 template <
size_t kAlignment_>
60 template <
typename Scalar_,
int kLanes_>
90 #if !defined(__CUDACC_RTC__) || defined(CUTLASS_NVRTC_HAS_FP16) 92 template <
int kLanes_>
126 template <
typename Scalar_>
133 template <
typename Element_,
int kLanes_ = 1>
140 template <
typename Element_>
147 template <
typename Scalar_,
int kLanes_>
149 for (
int i = 0; i < Vector<Scalar_, kLanes_>::kRegisters; ++i) {
160 template <
typename T>
166 template <
typename T,
int Lanes>
172 template <
typename T,
int Lanes>
180 template <
typename T>
196 template <
typename T,
int Lanes>
212 template <
typename T,
int Lanes>
Element_ Type
Definition: vector.h:142
CUTLASS_DEVICE void make_zero(Scalar_ &x)
Definition: vector.h:127
T Scalar
Scalar type.
Definition: vector.h:183
struct __align__(1) AlignedStruct< 1 >
Definition: vector.h:44
Scalar_ Scalar
The scalar type.
Definition: vector.h:63
half Scalar
The scalar type.
Definition: vector.h:95
uint32_t registers[kRegisters]
The data in registers.
Definition: vector.h:80
Vector< T, 1 > Vector
Type that is always a vector.
Definition: vector.h:192
CUTLASS_DEVICE Scalar & operator[](uint32_t i)
Accessor to the ith lane.
Definition: vector.h:119
CUTLASS_DEVICE Scalar & operator[](uint32_t i)
Accessor to the ith lane.
Definition: vector.h:85
Traits describing properties of vectors and scalar-as-vectors.
Definition: vector.h:181
static bool const IsVector
True if the type is actually a cutlass::Vector, otherwise false.
Definition: vector.h:189
Scalar scalars[kLanes]
The associated array of scalars.
Definition: vector.h:78
Vector< T, Lanes > Vector
Type that is always a Vector.
Definition: vector.h:224
static int const kLanes
Number of lanes of vector.
Definition: vector.h:186
CUTLASS_DEVICE Scalar const & operator[](uint32_t i) const
Accessor to the ith lane.
Definition: vector.h:115
T Scalar
Scalar type.
Definition: vector.h:215
Vector< Element_, kLanes_ > Type
Definition: vector.h:135
T Scalar
Scalar type.
Definition: vector.h:199
static size_t const kValue
Definition: vector.h:162
AlignedStruct< kVectorSize > aligned_
The aligned storage to make sure we have good alignment.
Definition: vector.h:73
AlignedStruct< kVectorSize > aligned_
The aligned storage to make sure we have good alignment.
Definition: vector.h:105
Vector< T, Lanes > Vector
Type that is always a Vector.
Definition: vector.h:208
CUTLASS_DEVICE Scalar const & operator[](uint32_t i) const
Accessor to the ith lane.
Definition: vector.h:83
Returns the extent of a scalar or vector.
Definition: vector.h:161