Clamp Struct Reference

Clamp Struct Reference#

Composable Kernel: ck::tensor_operation::element_wise::Clamp Struct Reference
ck::tensor_operation::element_wise::Clamp Struct Reference

#include <unary_element_wise_operation.hpp>

Public Member Functions

 Clamp (float floor=0.f, float ceil=NumericLimits< float >::Max())
template<typename Y, typename X>
__host__ __device__ constexpr void operator() (Y &y, const X &x) const
template<>
__host__ __device__ constexpr void operator() (float &y, const float &x) const
template<>
__host__ __device__ constexpr void operator() (double &y, const double &x) const
template<>
__host__ __device__ constexpr void operator() (half_t &y, const half_t &x) const
template<>
__host__ __device__ constexpr void operator() (half_t &y, const float &x) const
template<>
__host__ __device__ constexpr void operator() (bhalf_t &y, const float &x) const
template<>
__host__ __device__ constexpr void operator() (bhalf_t &y, const bhalf_t &x) const
template<>
__host__ __device__ constexpr void operator() (int &y, const int &x) const
template<>
__host__ __device__ constexpr void operator() (int8_t &y, const int8_t &x) const

Public Attributes

const float floor_
const float ceil_

Static Public Attributes

static constexpr const char * name = "Clamp"

Constructor & Destructor Documentation

◆ Clamp()

ck::tensor_operation::element_wise::Clamp::Clamp ( float floor = 0.f,
float ceil = NumericLimits<float>::Max() )
inline

Member Function Documentation

◆ operator()() [1/9]

template<>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( bhalf_t & y,
const bhalf_t & x ) const
inlineconstexpr

◆ operator()() [2/9]

template<>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( bhalf_t & y,
const float & x ) const
inlineconstexpr

◆ operator()() [3/9]

template<>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( double & y,
const double & x ) const
inlineconstexpr

◆ operator()() [4/9]

template<>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( float & y,
const float & x ) const
inlineconstexpr

◆ operator()() [5/9]

template<>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( half_t & y,
const float & x ) const
inlineconstexpr

◆ operator()() [6/9]

template<>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( half_t & y,
const half_t & x ) const
inlineconstexpr

◆ operator()() [7/9]

template<>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( int & y,
const int & x ) const
inlineconstexpr

◆ operator()() [8/9]

template<>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( int8_t & y,
const int8_t & x ) const
inlineconstexpr

◆ operator()() [9/9]

template<typename Y, typename X>
__host__ __device__ constexpr void ck::tensor_operation::element_wise::Clamp::operator() ( Y & y,
const X & x ) const
constexpr

Member Data Documentation

◆ ceil_

const float ck::tensor_operation::element_wise::Clamp::ceil_

◆ floor_

const float ck::tensor_operation::element_wise::Clamp::floor_

◆ name

const char* ck::tensor_operation::element_wise::Clamp::name = "Clamp"
staticconstexpr

The documentation for this struct was generated from the following file: