summaryrefslogtreecommitdiff
path: root/include/internal/database/xgemv.h
diff options
context:
space:
mode:
authorCedric Nugteren <web@cedricnugteren.nl>2016-01-30 11:43:21 +0100
committerCedric Nugteren <web@cedricnugteren.nl>2016-01-30 11:43:21 +0100
commit276e772a2c672ad868ba57e06d55e4991c793207 (patch)
tree015c32f78022e65403dc207c80d2b52458363f68 /include/internal/database/xgemv.h
parent76c91480303dd398b4ff5953a833e493b1409630 (diff)
Added first auto-generated database headers from the Python database; only K40 and Iris supported now
Diffstat (limited to 'include/internal/database/xgemv.h')
-rw-r--r--include/internal/database/xgemv.h101
1 files changed, 30 insertions, 71 deletions
diff --git a/include/internal/database/xgemv.h b/include/internal/database/xgemv.h
index c315500f..ae9fbf30 100644
--- a/include/internal/database/xgemv.h
+++ b/include/internal/database/xgemv.h
@@ -5,9 +5,9 @@
// width of 100 characters per line.
//
// Author(s):
-// Cedric Nugteren <www.cedricnugteren.nl>
+// Database generator <database.py>
//
-// This file populates the database with best-found tuning parameters for the Xgemv kernels.
+// This file populates the database with best-found tuning parameters for the 'Xgemv' kernels.
//
// =================================================================================================
@@ -16,26 +16,21 @@ namespace clblast {
const Database::DatabaseEntry Database::XgemvSingle = {
"Xgemv", Precision::kSingle, {
- { // NVIDIA GPUs
- kDeviceTypeGPU, kDeviceVendorNVIDIA, {
- { "GeForce GTX 480", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- { "Tesla K20m", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- { "Tesla K40m", { {"WGS1",256}, {"WPT1",1}, {"WGS2",256}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",4} } },
- }
- },
- { // AMD GPUs
- kDeviceTypeGPU, kDeviceVendorAMD, {
- { "Tahiti", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
+ { // Intel GPUs
+ kDeviceTypeGPU, "Intel", {
+ { "Iris", { {"WGS1",64}, {"WPT1",2}, {"VW2",1}, {"WGS2",128}, {"WPT2",2}, {"VW3",4}, {"WGS3",64}, {"WPT3",8} } },
+ { "default", { {"WGS1",64}, {"WPT1",2}, {"VW2",1}, {"WGS2",128}, {"WPT2",2}, {"VW3",4}, {"WGS3",64}, {"WPT3",8} } },
}
},
- { // Intel GPUs
- kDeviceTypeGPU, kDeviceVendorIntel, {
- { "Iris", { {"WGS1",256}, {"WPT1",2}, {"WGS2",64}, {"WPT2",4}, {"VW2",4}, {"WGS3",256}, {"WPT3",2}, {"VW3",8} } },
+ { // NVIDIA Corporation GPUs
+ kDeviceTypeGPU, "NVIDIA Corporation", {
+ { "Tesla K40m", { {"WGS1",256}, {"WPT1",1}, {"VW2",1}, {"WGS2",256}, {"WPT2",1}, {"VW3",1}, {"WGS3",128}, {"WPT3",1} } },
+ { "default", { {"WGS1",256}, {"WPT1",1}, {"VW2",1}, {"WGS2",256}, {"WPT2",1}, {"VW3",1}, {"WGS3",128}, {"WPT3",1} } },
}
},
{ // Default
- kDeviceTypeAll, kDeviceVendorAll, {
- { kDefaultDevice, { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
+ kDeviceTypeAll, "default", {
+ { "default", { {"WGS1",64}, {"WPT1",1}, {"VW2",1}, {"WGS2",128}, {"WPT2",1}, {"VW3",1}, {"WGS3",64}, {"WPT3",1} } },
}
},
}
@@ -43,55 +38,35 @@ const Database::DatabaseEntry Database::XgemvSingle = {
// =================================================================================================
-const Database::DatabaseEntry Database::XgemvDouble = {
- "Xgemv", Precision::kDouble, {
- { // NVIDIA GPUs
- kDeviceTypeGPU, kDeviceVendorNVIDIA, {
- { "GeForce GTX 480", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- { "Tesla K20m", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- { "Tesla K40m", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- }
- },
- { // AMD GPUs
- kDeviceTypeGPU, kDeviceVendorAMD, {
- { "Tahiti", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- }
- },
+const Database::DatabaseEntry Database::XgemvComplexSingle = {
+ "Xgemv", Precision::kComplexSingle, {
{ // Intel GPUs
- kDeviceTypeGPU, kDeviceVendorIntel, {
+ kDeviceTypeGPU, "Intel", {
+ { "Iris", { {"WGS1",256}, {"WPT1",1}, {"VW2",1}, {"WGS2",64}, {"WPT2",1}, {"VW3",1}, {"WGS3",64}, {"WPT3",1} } },
+ { "default", { {"WGS1",256}, {"WPT1",1}, {"VW2",1}, {"WGS2",64}, {"WPT2",1}, {"VW3",1}, {"WGS3",64}, {"WPT3",1} } },
}
},
{ // Default
- kDeviceTypeAll, kDeviceVendorAll, {
- { kDefaultDevice, { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
+ kDeviceTypeAll, "default", {
+ { "default", { {"WGS1",256}, {"WPT1",1}, {"VW2",1}, {"WGS2",64}, {"WPT2",1}, {"VW3",1}, {"WGS3",64}, {"WPT3",1} } },
}
},
}
};
+
// =================================================================================================
-const Database::DatabaseEntry Database::XgemvComplexSingle = {
- "Xgemv", Precision::kComplexSingle, {
- { // NVIDIA GPUs
- kDeviceTypeGPU, kDeviceVendorNVIDIA, {
- { "GeForce GTX 480", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- { "Tesla K20m", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- { "Tesla K40m", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- }
- },
- { // AMD GPUs
- kDeviceTypeGPU, kDeviceVendorAMD, {
- { "Tahiti", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- }
- },
- { // Intel GPUs
- kDeviceTypeGPU, kDeviceVendorIntel, {
- { "Iris", { {"WGS1",256}, {"WPT1",1}, {"WGS2",64}, {"WPT2",4}, {"VW2",2}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
+const Database::DatabaseEntry Database::XgemvDouble = {
+ "Xgemv", Precision::kDouble, {
+ { // NVIDIA Corporation GPUs
+ kDeviceTypeGPU, "NVIDIA Corporation", {
+ { "Tesla K40m", { {"WGS1",256}, {"WPT1",1}, {"VW2",1}, {"WGS2",256}, {"WPT2",1}, {"VW3",1}, {"WGS3",256}, {"WPT3",1} } },
+ { "default", { {"WGS1",256}, {"WPT1",1}, {"VW2",1}, {"WGS2",256}, {"WPT2",1}, {"VW3",1}, {"WGS3",256}, {"WPT3",1} } },
}
},
{ // Default
- kDeviceTypeAll, kDeviceVendorAll, {
- { kDefaultDevice, { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
+ kDeviceTypeAll, "default", {
+ { "default", { {"WGS1",256}, {"WPT1",1}, {"VW2",1}, {"WGS2",256}, {"WPT2",1}, {"VW3",1}, {"WGS3",256}, {"WPT3",1} } },
}
},
}
@@ -101,25 +76,9 @@ const Database::DatabaseEntry Database::XgemvComplexSingle = {
const Database::DatabaseEntry Database::XgemvComplexDouble = {
"Xgemv", Precision::kComplexDouble, {
- { // NVIDIA GPUs
- kDeviceTypeGPU, kDeviceVendorNVIDIA, {
- { "GeForce GTX 480", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- { "Tesla K20m", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- { "Tesla K40m", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- }
- },
- { // AMD GPUs
- kDeviceTypeGPU, kDeviceVendorAMD, {
- { "Tahiti", { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
- }
- },
- { // Intel GPUs
- kDeviceTypeGPU, kDeviceVendorIntel, {
- }
- },
{ // Default
- kDeviceTypeAll, kDeviceVendorAll, {
- { kDefaultDevice, { {"WGS1",64}, {"WPT1",1}, {"WGS2",64}, {"WPT2",1}, {"VW2",1}, {"WGS3",64}, {"WPT3",1}, {"VW3",1} } },
+ kDeviceTypeAll, "default", {
+ { "default", { {"WGS1",128}, {"WPT1",1}, {"VW2",1}, {"WGS2",128}, {"WPT2",1}, {"VW3",1}, {"WGS3",128}, {"WPT3",1} } },
}
},
}