summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/internal/database.h8
-rw-r--r--include/internal/database/copy.h18
-rw-r--r--include/internal/database/pad.h18
-rw-r--r--include/internal/database/padtranspose.h18
-rw-r--r--include/internal/database/transpose.h18
-rw-r--r--src/database.cc8
6 files changed, 80 insertions, 8 deletions
diff --git a/include/internal/database.h b/include/internal/database.h
index 5bf69358..f66edcac 100644
--- a/include/internal/database.h
+++ b/include/internal/database.h
@@ -72,10 +72,10 @@ class Database {
static const DatabaseEntry XgemvSingle, XgemvDouble, XgemvComplexSingle, XgemvComplexDouble;
static const DatabaseEntry XgerSingle, XgerDouble, XgerComplexSingle, XgerComplexDouble;
static const DatabaseEntry XgemmSingle, XgemmDouble, XgemmComplexSingle, XgemmComplexDouble;
- static const DatabaseEntry CopySingle, CopyDouble, CopyComplexSingle, CopyComplexDouble;
- static const DatabaseEntry PadSingle, PadDouble, PadComplexSingle, PadComplexDouble;
- static const DatabaseEntry TransposeSingle, TransposeDouble, TransposeComplexSingle, TransposeComplexDouble;
- static const DatabaseEntry PadtransposeSingle, PadtransposeDouble, PadtransposeComplexSingle, PadtransposeComplexDouble;
+ static const DatabaseEntry CopyHalf, CopySingle, CopyDouble, CopyComplexSingle, CopyComplexDouble;
+ static const DatabaseEntry PadHalf, PadSingle, PadDouble, PadComplexSingle, PadComplexDouble;
+ static const DatabaseEntry TransposeHalf, TransposeSingle, TransposeDouble, TransposeComplexSingle, TransposeComplexDouble;
+ static const DatabaseEntry PadtransposeHalf, PadtransposeSingle, PadtransposeDouble, PadtransposeComplexSingle, PadtransposeComplexDouble;
static const std::vector<DatabaseEntry> database;
// The constructor
diff --git a/include/internal/database/copy.h b/include/internal/database/copy.h
index 59a9e03a..b4695868 100644
--- a/include/internal/database/copy.h
+++ b/include/internal/database/copy.h
@@ -14,6 +14,24 @@
namespace clblast {
// =================================================================================================
+const Database::DatabaseEntry Database::CopyHalf = {
+ "Copy", Precision::kHalf, {
+ { // Intel GPUs
+ kDeviceTypeGPU, "Intel", {
+ { "Intel(R) HD Graphics Skylake ULT GT2", { {"COPY_DIMX",32}, {"COPY_DIMY",8}, {"COPY_VW",4}, {"COPY_WPT",4} } },
+ { "default", { {"COPY_DIMX",32}, {"COPY_DIMY",8}, {"COPY_VW",4}, {"COPY_WPT",4} } },
+ }
+ },
+ { // Default
+ kDeviceTypeAll, "default", {
+ { "default", { {"COPY_DIMX",32}, {"COPY_DIMY",8}, {"COPY_VW",4}, {"COPY_WPT",4} } },
+ }
+ },
+ }
+};
+
+// =================================================================================================
+
const Database::DatabaseEntry Database::CopySingle = {
"Copy", Precision::kSingle, {
{ // AMD GPUs
diff --git a/include/internal/database/pad.h b/include/internal/database/pad.h
index d2de19e4..aae7631b 100644
--- a/include/internal/database/pad.h
+++ b/include/internal/database/pad.h
@@ -14,6 +14,24 @@
namespace clblast {
// =================================================================================================
+const Database::DatabaseEntry Database::PadHalf = {
+ "Pad", Precision::kHalf, {
+ { // Intel GPUs
+ kDeviceTypeGPU, "Intel", {
+ { "Intel(R) HD Graphics Skylake ULT GT2", { {"PAD_DIMX",16}, {"PAD_DIMY",8}, {"PAD_WPTX",4}, {"PAD_WPTY",4} } },
+ { "default", { {"PAD_DIMX",16}, {"PAD_DIMY",8}, {"PAD_WPTX",4}, {"PAD_WPTY",4} } },
+ }
+ },
+ { // Default
+ kDeviceTypeAll, "default", {
+ { "default", { {"PAD_DIMX",16}, {"PAD_DIMY",8}, {"PAD_WPTX",4}, {"PAD_WPTY",4} } },
+ }
+ },
+ }
+};
+
+// =================================================================================================
+
const Database::DatabaseEntry Database::PadSingle = {
"Pad", Precision::kSingle, {
{ // AMD GPUs
diff --git a/include/internal/database/padtranspose.h b/include/internal/database/padtranspose.h
index b1db1b21..2d8d47f2 100644
--- a/include/internal/database/padtranspose.h
+++ b/include/internal/database/padtranspose.h
@@ -14,6 +14,24 @@
namespace clblast {
// =================================================================================================
+const Database::DatabaseEntry Database::PadtransposeHalf = {
+ "Padtranspose", Precision::kHalf, {
+ { // Intel GPUs
+ kDeviceTypeGPU, "Intel", {
+ { "Intel(R) HD Graphics Skylake ULT GT2", { {"PADTRA_PAD",0}, {"PADTRA_TILE",8}, {"PADTRA_WPT",2} } },
+ { "default", { {"PADTRA_PAD",0}, {"PADTRA_TILE",8}, {"PADTRA_WPT",2} } },
+ }
+ },
+ { // Default
+ kDeviceTypeAll, "default", {
+ { "default", { {"PADTRA_PAD",0}, {"PADTRA_TILE",8}, {"PADTRA_WPT",2} } },
+ }
+ },
+ }
+};
+
+// =================================================================================================
+
const Database::DatabaseEntry Database::PadtransposeSingle = {
"Padtranspose", Precision::kSingle, {
{ // AMD GPUs
diff --git a/include/internal/database/transpose.h b/include/internal/database/transpose.h
index d87f79a6..8e5ace67 100644
--- a/include/internal/database/transpose.h
+++ b/include/internal/database/transpose.h
@@ -14,6 +14,24 @@
namespace clblast {
// =================================================================================================
+const Database::DatabaseEntry Database::TransposeHalf = {
+ "Transpose", Precision::kHalf, {
+ { // Intel GPUs
+ kDeviceTypeGPU, "Intel", {
+ { "Intel(R) HD Graphics Skylake ULT GT2", { {"TRA_DIM",8}, {"TRA_PAD",0}, {"TRA_SHUFFLE",1}, {"TRA_WPT",8} } },
+ { "default", { {"TRA_DIM",8}, {"TRA_PAD",0}, {"TRA_SHUFFLE",1}, {"TRA_WPT",8} } },
+ }
+ },
+ { // Default
+ kDeviceTypeAll, "default", {
+ { "default", { {"TRA_DIM",8}, {"TRA_PAD",0}, {"TRA_SHUFFLE",1}, {"TRA_WPT",8} } },
+ }
+ },
+ }
+};
+
+// =================================================================================================
+
const Database::DatabaseEntry Database::TransposeSingle = {
"Transpose", Precision::kSingle, {
{ // AMD GPUs
diff --git a/src/database.cc b/src/database.cc
index 74d69c8b..ee9d6ddd 100644
--- a/src/database.cc
+++ b/src/database.cc
@@ -34,10 +34,10 @@ const std::vector<Database::DatabaseEntry> Database::database = {
XgemvSingle, XgemvDouble, XgemvComplexSingle, XgemvComplexDouble,
XgerSingle, XgerDouble, XgerComplexSingle, XgerComplexDouble,
XgemmSingle, XgemmDouble, XgemmComplexSingle, XgemmComplexDouble,
- CopySingle, CopyDouble, CopyComplexSingle, CopyComplexDouble,
- PadSingle, PadDouble, PadComplexSingle, PadComplexDouble,
- TransposeSingle, TransposeDouble, TransposeComplexSingle, TransposeComplexDouble,
- PadtransposeSingle, PadtransposeDouble, PadtransposeComplexSingle, PadtransposeComplexDouble
+ CopyHalf, CopySingle, CopyDouble, CopyComplexSingle, CopyComplexDouble,
+ PadHalf, PadSingle, PadDouble, PadComplexSingle, PadComplexDouble,
+ TransposeHalf, TransposeSingle, TransposeDouble, TransposeComplexSingle, TransposeComplexDouble,
+ PadtransposeHalf, PadtransposeSingle, PadtransposeDouble, PadtransposeComplexSingle, PadtransposeComplexDouble
};
// =================================================================================================