summaryrefslogtreecommitdiff
path: root/src/routines/level3/xherk.cc
diff options
context:
space:
mode:
authorCedric Nugteren <web@cedricnugteren.nl>2016-06-17 14:30:37 +0200
committerCedric Nugteren <web@cedricnugteren.nl>2016-06-17 14:30:37 +0200
commitf9947b4d7ffedcf98cdb128de835422f647e7f15 (patch)
treec42d427a23de5d14b3407943d529d18cd9e516f0 /src/routines/level3/xherk.cc
parent536b7fe4bce4b183cb060a1b9045752ae39d842f (diff)
Removed the precision argument from the routines in favor of a single templated function
Diffstat (limited to 'src/routines/level3/xherk.cc')
-rw-r--r--src/routines/level3/xherk.cc10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/routines/level3/xherk.cc b/src/routines/level3/xherk.cc
index af0e32ba..f8ec217a 100644
--- a/src/routines/level3/xherk.cc
+++ b/src/routines/level3/xherk.cc
@@ -19,16 +19,10 @@
namespace clblast {
// =================================================================================================
-// Specific implementations to get the memory-type based on a template argument
-template <> const Precision Xherk<float2,float>::precision_ = Precision::kComplexSingle;
-template <> const Precision Xherk<double2,double>::precision_ = Precision::kComplexDouble;
-
-// =================================================================================================
-
// Constructor: forwards to base class constructor
template <typename T, typename U>
Xherk<T,U>::Xherk(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"
@@ -91,7 +85,7 @@ StatusCode Xherk<T,U>::DoHerk(const Layout layout, const Triangle triangle, cons
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 &&