1 
2 // =================================================================================================
3 // This file is part of the CLBlast project. The project is licensed under Apache Version 2.0. This
4 // project loosely follows the Google C++ styleguide and uses a tab-size of two spaces and a max-
5 // width of 100 characters per line.
6 //
7 // Author(s):
8 //   Cedric Nugteren <www.cedricnugteren.nl>
9 //
10 // This file populates the database with best-found tuning parameters for the 'Xtrsv' kernels.
11 //
12 // =================================================================================================
13 
14 namespace clblast {
15 namespace database {
16 // =================================================================================================
17 
18 const DatabaseEntry XtrsvHalf = {
19   "Xtrsv", Precision::kHalf, {"TRSV_BLOCK_SIZE"}, {
20     { // Default
21       kDeviceTypeAll, "default", {
22         { "default", { { kDeviceNameDefault, Params{ 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } },
23       }
24     },
25   }
26 };
27 
28 // =================================================================================================
29 
30 const DatabaseEntry XtrsvSingle = {
31   "Xtrsv", Precision::kSingle, {"TRSV_BLOCK_SIZE"}, {
32     { // Default
33       kDeviceTypeAll, "default", {
34         { "default", { { kDeviceNameDefault, Params{ 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } },
35       }
36     },
37   }
38 };
39 
40 // =================================================================================================
41 
42 const DatabaseEntry XtrsvComplexSingle = {
43   "Xtrsv", Precision::kComplexSingle, {"TRSV_BLOCK_SIZE"}, {
44     { // Default
45       kDeviceTypeAll, "default", {
46         { "default", { { kDeviceNameDefault, Params{ 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } },
47       }
48     },
49   }
50 };
51 
52 // =================================================================================================
53 
54 const DatabaseEntry XtrsvDouble = {
55   "Xtrsv", Precision::kDouble, {"TRSV_BLOCK_SIZE"}, {
56     { // Default
57       kDeviceTypeAll, "default", {
58         { "default", { { kDeviceNameDefault, Params{ 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } },
59       }
60     },
61   }
62 };
63 
64 // =================================================================================================
65 
66 const DatabaseEntry XtrsvComplexDouble = {
67   "Xtrsv", Precision::kComplexDouble, {"TRSV_BLOCK_SIZE"}, {
68     { // Default
69       kDeviceTypeAll, "default", {
70         { "default", { { kDeviceNameDefault, Params{ 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } },
71       }
72     },
73   }
74 };
75 
76 // =================================================================================================
77 } // namespace database
78 } // namespace clblast
79