PLASMA
Parallel Linear Algebra Software for Multicore Architectures
plasma_types.h
1 
10 #ifndef ICL_PLASMA_TYPES_H
11 #define ICL_PLASMA_TYPES_H
12 
13 #include <complex.h>
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 /******************************************************************************/
20 #ifdef PLASMA_WITH_MKL
21 #define lapack_complex_float plasma_complex32_t
22 #define lapack_complex_double plasma_complex64_t
23 #endif
24 
25 /***************************************************************************/
32 #ifndef CBLAS_SADDR
33 #define CBLAS_SADDR(var) &(var)
34 #endif
35 
36 /******************************************************************************/
37 enum {
38  PlasmaByte = 0,
39  PlasmaInteger = 1,
40  PlasmaRealFloat = 2,
41  PlasmaRealDouble = 3,
42  PlasmaComplexFloat = 4,
43  PlasmaComplexDouble = 5
44 };
45 
46 /***************************************************************************/
58 enum {
59  PlasmaInvalid = -1,
60 
61  PlasmaNoTrans = 111,
62  PlasmaTrans = 112,
63  PlasmaConjTrans = 113,
64  Plasma_ConjTrans = PlasmaConjTrans,
65 
66  PlasmaUpper = 121,
67  PlasmaLower = 122,
68  PlasmaGeneral = 123,
69  PlasmaGeneralBand = 124,
70 
71  PlasmaNonUnit = 131,
72  PlasmaUnit = 132,
73 
74  PlasmaLeft = 141,
75  PlasmaRight = 142,
76 
77  PlasmaOneNorm = 171,
78  PlasmaRealOneNorm = 172,
79  PlasmaTwoNorm = 173,
80  PlasmaFrobeniusNorm = 174,
81  PlasmaInfNorm = 175,
82  PlasmaRealInfNorm = 176,
83  PlasmaMaxNorm = 177,
84  PlasmaRealMaxNorm = 178,
85 
86  PlasmaForward = 391,
87  PlasmaBackward = 392,
88 
89  PlasmaColumnwise = 401,
90  PlasmaRowwise = 402,
91 
92  PlasmaW = 501,
93  PlasmaA2 = 502
94 };
95 
96 enum {
97  PlasmaSuccess = 0,
98  PlasmaErrorNotInitialized,
99  PlasmaErrorNotSupported,
100  PlasmaErrorIllegalValue,
101  PlasmaErrorOutOfMemory,
102  PlasmaErrorNullParameter,
103  PlasmaErrorInternal,
104  PlasmaErrorSequence,
105  PlasmaErrorComponent,
106  PlasmaErrorEnvironment
107 };
108 
109 enum {
110  PlasmaInplace,
111  PlasmaOutplace
112 };
113 
114 enum {
115  PlasmaFlatHouseholder,
116  PlasmaTreeHouseholder
117 };
118 
119 enum {
120  PlasmaDisabled = 0,
121  PlasmaEnabled = 1
122 };
123 
124 enum {
125  PlasmaTuning,
126  PlasmaNb,
127  PlasmaIb,
128  PlasmaInplaceOutplace,
129  PlasmaNumPanelThreads,
130  PlasmaHouseholderMode
131 };
132 
133 /******************************************************************************/
134 typedef int plasma_enum_t;
135 
136 typedef float _Complex plasma_complex32_t;
137 typedef double _Complex plasma_complex64_t;
138 
139 /******************************************************************************/
140 plasma_enum_t plasma_diag_const(char lapack_char);
141 plasma_enum_t plasma_direct_const(char lapack_char);
142 plasma_enum_t plasma_norm_const(char lapack_char);
143 plasma_enum_t plasma_side_const(char lapack_char);
144 plasma_enum_t plasma_storev_const(char lapack_char);
145 plasma_enum_t plasma_trans_const(char lapack_char);
146 plasma_enum_t plasma_uplo_const(char lapack_char);
147 
148 #ifdef __cplusplus
149 } // extern "C"
150 #endif
151 
152 #endif // ICL_PLASMA_TYPES_H
plasma_enum_t plasma_storev_const(char lapack_char)
Definition: constants.c:95
plasma_enum_t plasma_diag_const(char lapack_char)
Definition: constants.c:32
plasma_enum_t plasma_direct_const(char lapack_char)
Definition: constants.c:45
plasma_enum_t plasma_side_const(char lapack_char)
Definition: constants.c:81
plasma_enum_t plasma_trans_const(char lapack_char)
Definition: constants.c:109
plasma_enum_t plasma_norm_const(char lapack_char)
Definition: constants.c:61
plasma_enum_t plasma_uplo_const(char lapack_char)
Definition: constants.c:124