diff options
Diffstat (limited to 'src/routines/level3/xsyrk.cc')
-rw-r--r-- | src/routines/level3/xsyrk.cc | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/src/routines/level3/xsyrk.cc b/src/routines/level3/xsyrk.cc index 88623ad4..ccf8710c 100644 --- a/src/routines/level3/xsyrk.cc +++ b/src/routines/level3/xsyrk.cc @@ -19,19 +19,10 @@ 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; -template <> const Precision Xsyrk<double2>::precision_ = Precision::kComplexDouble; - -// ================================================================================================= - // Constructor: forwards to base class constructor template <typename T> Xsyrk<T>::Xsyrk(Queue &queue, EventPointer event, const std::string &name): - Routine<T>(queue, event, name, {"Copy","Pad","Transpose","Padtranspose","Xgemm"}, precision_) { + Routine<T>(queue, event, name, {"Copy","Pad","Transpose","Padtranspose","Xgemm"}, PrecisionValue<T>()) { source_string_ = #include "../../kernels/level3/level3.opencl" #include "../../kernels/level3/copy_fast.opencl" @@ -89,7 +80,7 @@ StatusCode Xsyrk<T>::DoSyrk(const Layout layout, const Triangle triangle, const try { // Loads the program from the database - const auto program = GetProgramFromCache(context_, precision_, routine_name_); + const auto program = GetProgramFromCache(context_, PrecisionValue<T>(), routine_name_); // Determines whether or not temporary matrices are needed auto a_no_temp = a_one == n_ceiled && a_two == k_ceiled && a_ld == n_ceiled && a_offset == 0 && |