diff options
author | Cedric Nugteren <web@cedricnugteren.nl> | 2016-05-25 13:29:53 +0200 |
---|---|---|
committer | Cedric Nugteren <web@cedricnugteren.nl> | 2016-05-25 13:29:53 +0200 |
commit | 9f8745507020961b1c287febc3a5634b46ccb0e9 (patch) | |
tree | ff776b8b8fcf56529eaeada54a6c05c4bdfff264 /src/routines/level3 | |
parent | ac1575056e0f3d7406cc7bcbbdbe71b08feb58ce (diff) |
Added level-3 half-precision routines HGEMM/HSYMM/HSYRK/HSYR2K/HTRMM
Diffstat (limited to 'src/routines/level3')
-rw-r--r-- | src/routines/level3/xsymm.cc | 1 | ||||
-rw-r--r-- | src/routines/level3/xsyr2k.cc | 2 | ||||
-rw-r--r-- | src/routines/level3/xsyrk.cc | 2 | ||||
-rw-r--r-- | src/routines/level3/xtrmm.cc | 1 |
4 files changed, 6 insertions, 0 deletions
diff --git a/src/routines/level3/xsymm.cc b/src/routines/level3/xsymm.cc index a39026f1..d88d4653 100644 --- a/src/routines/level3/xsymm.cc +++ b/src/routines/level3/xsymm.cc @@ -127,6 +127,7 @@ StatusCode Xsymm<T>::DoSymm(const Layout layout, const Side side, const Triangle // ================================================================================================= // Compiles the templated class +template class Xsymm<half>; template class Xsymm<float>; template class Xsymm<double>; template class Xsymm<float2>; diff --git a/src/routines/level3/xsyr2k.cc b/src/routines/level3/xsyr2k.cc index c52e1353..4f86bac5 100644 --- a/src/routines/level3/xsyr2k.cc +++ b/src/routines/level3/xsyr2k.cc @@ -20,6 +20,7 @@ namespace clblast { // ================================================================================================= // Specific implementations to get the memory-type based on a template argument +template <> const Precision Xsyr2k<half>::precision_ = Precision::kHalf; template <> const Precision Xsyr2k<float>::precision_ = Precision::kSingle; template <> const Precision Xsyr2k<double>::precision_ = Precision::kDouble; template <> const Precision Xsyr2k<float2>::precision_ = Precision::kComplexSingle; @@ -203,6 +204,7 @@ StatusCode Xsyr2k<T>::DoSyr2k(const Layout layout, const Triangle triangle, cons // ================================================================================================= // Compiles the templated class +template class Xsyr2k<half>; template class Xsyr2k<float>; template class Xsyr2k<double>; template class Xsyr2k<float2>; diff --git a/src/routines/level3/xsyrk.cc b/src/routines/level3/xsyrk.cc index cfcd4e12..52cb58c0 100644 --- a/src/routines/level3/xsyrk.cc +++ b/src/routines/level3/xsyrk.cc @@ -20,6 +20,7 @@ namespace clblast { // ================================================================================================= // Specific implementations to get the memory-type based on a template argument +template <> const Precision Xsyrk<half>::precision_ = Precision::kHalf; template <> const Precision Xsyrk<float>::precision_ = Precision::kSingle; template <> const Precision Xsyrk<double>::precision_ = Precision::kDouble; template <> const Precision Xsyrk<float2>::precision_ = Precision::kComplexSingle; @@ -175,6 +176,7 @@ StatusCode Xsyrk<T>::DoSyrk(const Layout layout, const Triangle triangle, const // ================================================================================================= // Compiles the templated class +template class Xsyrk<half>; template class Xsyrk<float>; template class Xsyrk<double>; template class Xsyrk<float2>; diff --git a/src/routines/level3/xtrmm.cc b/src/routines/level3/xtrmm.cc index 9e3b27b4..18cbb1c0 100644 --- a/src/routines/level3/xtrmm.cc +++ b/src/routines/level3/xtrmm.cc @@ -130,6 +130,7 @@ StatusCode Xtrmm<T>::DoTrmm(const Layout layout, const Side side, const Triangle // ================================================================================================= // Compiles the templated class +template class Xtrmm<half>; template class Xtrmm<float>; template class Xtrmm<double>; template class Xtrmm<float2>; |