diff options
author | Cedric Nugteren <web@cedricnugteren.nl> | 2017-09-08 21:09:05 +0200 |
---|---|---|
committer | Cedric Nugteren <web@cedricnugteren.nl> | 2017-09-08 21:09:05 +0200 |
commit | 91ea7fcde2ac274db50b35fbbdb7deb89fb65b51 (patch) | |
tree | 689b41f39b4af203e9d557526e8d3fe2ebfb556c /src/database/database.hpp | |
parent | 20da5e33a86eda746c17cbdb7bfd295d9f92f074 (diff) |
Introduced the notion of a device-architecture for the database and added device and architecture name mappings
Diffstat (limited to 'src/database/database.hpp')
-rw-r--r-- | src/database/database.hpp | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/database/database.hpp b/src/database/database.hpp index 66cf93d5..e7a79cf9 100644 --- a/src/database/database.hpp +++ b/src/database/database.hpp @@ -23,6 +23,7 @@ #include "utilities/utilities.hpp" #include "database/database_structure.hpp" +#include "database/device_mapping.hpp" namespace clblast { // ================================================================================================= @@ -34,9 +35,6 @@ class Database { // The OpenCL device vendors static const std::string kDeviceVendorAll; - // Alternative names for some OpenCL vendors - static const std::unordered_map<std::string, std::string> kVendorNames; - // The database consists of separate database entries, stored together in a vector static const std::vector<database::DatabaseEntry> database; @@ -61,18 +59,19 @@ class Database { private: // Search method functions, returning a set of parameters (possibly empty) - database::Parameters Search(const std::string &this_kernel, const std::string &this_type, - const std::string &this_vendor, const std::string &this_device, - const Precision this_precision, - const std::vector<database::DatabaseEntry> &db) const; + database::Parameters Search(const std::string &this_kernel, + const std::string &this_vendor, const std::string &this_type, + const std::string &this_device, const std::string &this_architecture, + const Precision this_precision, + const std::vector<database::DatabaseEntry> &db) const; database::Parameters SearchDevice(const std::string &target_device, const std::vector<database::DatabaseDevice> &devices, const std::vector<std::string> ¶meter_names) const; database::Parameters SearchVendorAndType(const std::string &target_vendor, - const std::string &target_type, - const std::string &this_device, - const std::vector<database::DatabaseVendor> &vendors, - const std::vector<std::string> ¶meter_names) const; + const std::string &target_type, + const std::string &this_device, const std::string &this_architecture, + const std::vector<database::DatabaseVendor> &vendors, + const std::vector<std::string> ¶meter_names) const; // Found parameters suitable for this device/kernel std::shared_ptr<database::Parameters> parameters_; |