/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck/utility/inner_product.hpp File Reference

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck/utility/inner_product.hpp File Reference#

Composable Kernel: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck/utility/inner_product.hpp File Reference
inner_product.hpp File Reference
#include "data_type.hpp"
#include "type_convert.hpp"

Go to the source code of this file.

Namespaces

 ck
 

Functions

template<typename TA , typename TB , typename TC >
__device__ void ck::inner_product (const TA &a, const TB &b, TC &c)
 
template<>
__device__ void ck::inner_product< float, float, float > (const float &a, const float &b, float &c)
 
template<>
__device__ void ck::inner_product< float2_t, float2_t, float > (const float2_t &a, const float2_t &b, float &c)
 
template<>
__device__ void ck::inner_product< float4_t, float4_t, float > (const float4_t &a, const float4_t &b, float &c)
 
template<>
__device__ void ck::inner_product< bhalf_t, bhalf_t, float > (const bhalf_t &a, const bhalf_t &b, float &c)
 
template<>
__device__ void ck::inner_product< half_t, half_t, float > (const half_t &a, const half_t &b, float &c)
 
template<>
__device__ void ck::inner_product< half2_t, half2_t, float > (const half2_t &a, const half2_t &b, float &c)
 
template<>
__device__ void ck::inner_product< half4_t, half4_t, float > (const half4_t &a, const half4_t &b, float &c)
 
template<>
__device__ void ck::inner_product< half8_t, half8_t, float > (const half8_t &a, const half8_t &b, float &c)
 
template<>
__device__ void ck::inner_product< int8_t, int8_t, int32_t > (const int8_t &a, const int8_t &b, int32_t &c)
 
template<>
__device__ void ck::inner_product< int8x2_t, int8x2_t, int32_t > (const int8x2_t &a, const int8x2_t &b, int32_t &c)
 
template<>
__device__ void ck::inner_product< int8x4_t, int8x4_t, int32_t > (const int8x4_t &a, const int8x4_t &b, int32_t &c)
 
template<>
__device__ void ck::inner_product< int8x8_t, int8x8_t, int32_t > (const int8x8_t &a, const int8x8_t &b, int32_t &c)
 
template<>
__device__ void ck::inner_product< int8x16_t, int8x16_t, int32_t > (const int8x16_t &a, const int8x16_t &b, int32_t &c)