diff options
author | Cedric Nugteren <web@cedricnugteren.nl> | 2016-01-30 11:43:21 +0100 |
---|---|---|
committer | Cedric Nugteren <web@cedricnugteren.nl> | 2016-01-30 11:43:21 +0100 |
commit | 276e772a2c672ad868ba57e06d55e4991c793207 (patch) | |
tree | 015c32f78022e65403dc207c80d2b52458363f68 /src | |
parent | 76c91480303dd398b4ff5953a833e493b1409630 (diff) |
Added first auto-generated database headers from the Python database; only K40 and Iris supported now
Diffstat (limited to 'src')
-rw-r--r-- | src/database.cc | 8 | ||||
-rw-r--r-- | src/routines/level3/xgemm.cc | 2 | ||||
-rw-r--r-- | src/routines/level3/xher2k.cc | 2 | ||||
-rw-r--r-- | src/routines/level3/xherk.cc | 2 | ||||
-rw-r--r-- | src/routines/level3/xsyr2k.cc | 2 | ||||
-rw-r--r-- | src/routines/level3/xsyrk.cc | 2 |
6 files changed, 10 insertions, 8 deletions
diff --git a/src/database.cc b/src/database.cc index b7275dad..7f5ac6eb 100644 --- a/src/database.cc +++ b/src/database.cc @@ -34,8 +34,8 @@ const std::vector<Database::DatabaseEntry> Database::database = { XgemmSingle, XgemmDouble, XgemmComplexSingle, XgemmComplexDouble, CopySingle, CopyDouble, CopyComplexSingle, CopyComplexDouble, PadSingle, PadDouble, PadComplexSingle, PadComplexDouble, - TraSingle, TraDouble, TraComplexSingle, TraComplexDouble, - PadTraSingle, PadTraDouble, PadTraComplexSingle, PadTraComplexDouble + TransposeSingle, TransposeDouble, TransposeComplexSingle, TransposeComplexDouble, + PadtransposeSingle, PadtransposeDouble, PadtransposeComplexSingle, PadtransposeComplexDouble }; // ================================================================================================= @@ -78,6 +78,7 @@ Database::Parameters Database::Search(const std::string &this_kernel, const std::string &this_device, const Precision this_precision) const { for (auto &db: database) { + if (db.kernel == this_kernel && db.precision == this_precision) { // Searches for the right vendor and device type, or selects the default if unavailable. This @@ -89,7 +90,8 @@ Database::Parameters Database::Search(const std::string &this_kernel, // Searches for the right device. If the current device is unavailable, selects the vendor // default parameters. This assumes the default is last in the database. for (auto &device: vendor.devices) { - if (device.name == this_device || device.name == kDefaultDevice) { + + if (device.name == this_device || device.name == "default") { // Sets the parameters accordingly return device.parameters; diff --git a/src/routines/level3/xgemm.cc b/src/routines/level3/xgemm.cc index 94aadcad..3961a3fd 100644 --- a/src/routines/level3/xgemm.cc +++ b/src/routines/level3/xgemm.cc @@ -30,7 +30,7 @@ template <> const Precision Xgemm<double2>::precision_ = Precision::kComplexDoub // Constructor: forwards to base class constructor template <typename T> Xgemm<T>::Xgemm(Queue &queue, Event &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"}, precision_) { source_string_ = #include "../../kernels/level3/copy.opencl" #include "../../kernels/level3/pad.opencl" diff --git a/src/routines/level3/xher2k.cc b/src/routines/level3/xher2k.cc index 5b84decb..e9970fd1 100644 --- a/src/routines/level3/xher2k.cc +++ b/src/routines/level3/xher2k.cc @@ -28,7 +28,7 @@ template <> const Precision Xher2k<double2,double>::precision_ = Precision::kCom // Constructor: forwards to base class constructor template <typename T, typename U> Xher2k<T,U>::Xher2k(Queue &queue, Event &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"}, precision_) { source_string_ = #include "../../kernels/level3/copy.opencl" #include "../../kernels/level3/pad.opencl" diff --git a/src/routines/level3/xherk.cc b/src/routines/level3/xherk.cc index 6a915c0b..49fd12af 100644 --- a/src/routines/level3/xherk.cc +++ b/src/routines/level3/xherk.cc @@ -28,7 +28,7 @@ template <> const Precision Xherk<double2,double>::precision_ = Precision::kComp // Constructor: forwards to base class constructor template <typename T, typename U> Xherk<T,U>::Xherk(Queue &queue, Event &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"}, precision_) { source_string_ = #include "../../kernels/level3/copy.opencl" #include "../../kernels/level3/pad.opencl" diff --git a/src/routines/level3/xsyr2k.cc b/src/routines/level3/xsyr2k.cc index de5f1afc..966a000f 100644 --- a/src/routines/level3/xsyr2k.cc +++ b/src/routines/level3/xsyr2k.cc @@ -30,7 +30,7 @@ template <> const Precision Xsyr2k<double2>::precision_ = Precision::kComplexDou // Constructor: forwards to base class constructor template <typename T> Xsyr2k<T>::Xsyr2k(Queue &queue, Event &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"}, precision_) { source_string_ = #include "../../kernels/level3/copy.opencl" #include "../../kernels/level3/pad.opencl" diff --git a/src/routines/level3/xsyrk.cc b/src/routines/level3/xsyrk.cc index d8fc6357..630cb731 100644 --- a/src/routines/level3/xsyrk.cc +++ b/src/routines/level3/xsyrk.cc @@ -30,7 +30,7 @@ template <> const Precision Xsyrk<double2>::precision_ = Precision::kComplexDoub // Constructor: forwards to base class constructor template <typename T> Xsyrk<T>::Xsyrk(Queue &queue, Event &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"}, precision_) { source_string_ = #include "../../kernels/level3/copy.opencl" #include "../../kernels/level3/pad.opencl" |