| CUTLASS CUDA Templates for Linear Algebra Subroutines and Solvers

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

Classes | Namespaces | Functions
device/tensor_fill.h File Reference
`#include <utility>`
`#include <cstdlib>`
`#include <cmath>`
`#include <type_traits>`
`#include <cstdint>`
`#include <cublas_v2.h>`
`#include <curand_kernel.h>`
`#include "cutlass/cutlass.h"`
`#include "cutlass/array.h"`
`#include "cutlass/tensor_view.h"`
`#include "cutlass/util/reference/device/tensor_foreach.h"`
`#include "cutlass/util/distribution.h"`
Include dependency graph for device/tensor_fill.h:

Go to the source code of this file.

## Classes
struct | cutlass::reference::device::detail::RandomGaussianFunc< Element >
struct | cutlass::reference::device::detail::RandomGaussianFunc< Element >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::TensorFillRandomGaussianFunc< Element, Layout >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::TensorFillRandomGaussianFunc< Element, Layout >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::RandomUniformFunc< Element >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::RandomUniformFunc< Element >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::TensorFillRandomUniformFunc< Element, Layout >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::TensorFillRandomUniformFunc< Element, Layout >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::TensorFillDiagonalFunc< Element, Layout >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::TensorFillDiagonalFunc< Element, Layout >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::TensorUpdateDiagonalFunc< Element, Layout >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::TensorUpdateDiagonalFunc< Element, Layout >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::TensorUpdateOffDiagonalFunc< Element, Layout >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::TensorUpdateOffDiagonalFunc< Element, Layout >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::TensorFillLinearFunc< Element, Layout >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::TensorFillLinearFunc< Element, Layout >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::TensorCopyDiagonalInFunc< Element, Layout >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::TensorCopyDiagonalInFunc< Element, Layout >::Params
| Parameters structure. More...
struct | cutlass::reference::device::detail::TensorCopyDiagonalOutFunc< Element, Layout >
| Computes a random Gaussian distribution. More...
struct | cutlass::reference::device::detail::TensorCopyDiagonalOutFunc< Element, Layout >::Params
| Parameters structure. More...

## Namespaces
| cutlass
| cutlass::reference
| cutlass::reference::device
| cutlass::reference::device::detail

## Functions
template<typename FloatType >
CUTLASS_DEVICE FloatType | cutlass::reference::device::detail::random_normal_float (curandState_t *state)
template<>
CUTLASS_DEVICE double | cutlass::reference::device::detail::random_normal_float< double > (curandState_t *state)
template<typename FloatType >
CUTLASS_DEVICE FloatType | cutlass::reference::device::detail::random_uniform_float (curandState_t *state)
template<>
CUTLASS_DEVICE double | cutlass::reference::device::detail::random_uniform_float< double > (curandState_t *state)
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorFillRandomGaussian (TensorView< Element, Layout > view, uint64_t seed, Element mean=Element(0), Element stddev=Element(1), int bits=-1)
| Fills a tensor with random values with a Gaussian distribution. More...
template<typename Element >
void | cutlass::reference::device::BlockFillRandomGaussian (Element *ptr, size_t capacity, uint64_t seed, Element mean=Element(0), Element stddev=Element(1), int bits=-1)
| Fills a tensor with random values with a Gaussian distribution. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorFillRandomUniform (TensorView< Element, Layout > view, uint64_t seed, Element max=Element(1), Element min=Element(0), int bits=-1)
| Fills a tensor with random values with a uniform random distribution. More...
template<typename Element >
void | cutlass::reference::device::BlockFillRandomUniform (Element *ptr, size_t capacity, uint64_t seed, Element max=Element(1), Element min=Element(0), int bits=-1)
| Fills a tensor with random values with a uniform random distribution. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorFillDiagonal (TensorView< Element, Layout > view, Element diag=Element(1), Element other=Element(0))
| Fills a tensor everywhere with a unique value for its diagonal. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorFill (TensorView< Element, Layout > view, Element val=Element(0))
| Fills a tensor with a uniform value. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorFillIdentity (TensorView< Element, Layout > view)
| Fills a tensor's digonal with 1 and 0 everywhere else. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorUpdateDiagonal (TensorView< Element, Layout > view, Element diag=Element(1))
| Writes a uniform value to the diagonal of a tensor without modifying off-diagonal elements. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorUpdateOffDiagonal (TensorView< Element, Layout > view, Element other=Element(1))
| Writes a uniform value to all elements in the tensor without modifying diagonal elements. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorFillLinear (TensorView< Element, Layout > view, Array< Element, Layout::kRank > const &v, Element s=Element(0))
| Fills tensor with a linear combination of its coordinate and another vector. More...
template<typename Element >
void | cutlass::reference::device::BlockFillSequential (Element *ptr, int64_t capacity, Element v=Element(1), Element s=Element(0))
| Fills a block of data with sequential elements. More...
template<typename Element >
void | cutlass::reference::device::BlockFillRandom (Element *ptr, size_t capacity, uint64_t seed, Distribution dist)
| Fills a block of data with sequential elements. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorCopyDiagonalIn (TensorView< Element, Layout > view, Element const *ptr)
| Copies a diagonal in from host memory without modifying off-diagonal elements. More...
template<typename Element , typename Layout >
void | cutlass::reference::device::TensorCopyDiagonalOut (Element *ptr, TensorView< Element, Layout > view)
| Copies the diagonal of a tensor into a dense buffer in host memory. More...