17 #define PLASMA_VERSION_MAJOR 2
18 #define PLASMA_VERSION_MINOR 4
19 #define PLASMA_VERSION_MICRO 6
23 #define CBLAS_SADDR( _val_ ) &(_val_)
30 #define PlasmaInteger 1
31 #define PlasmaRealFloat 2
32 #define PlasmaRealDouble 3
33 #define PlasmaComplexFloat 4
34 #define PlasmaComplexDouble 5
39 typedef int PLASMA_enum;
40 typedef int PLASMA_bool;
41 typedef long PLASMA_index;
42 typedef long PLASMA_size;
47 #define PLASMA_HAS_COMPLEX_H 1
51 # if defined(__INTEL_COMPILER)
54 #define _Complex __ConflictingComplex
58 typedef float _Complex PLASMA_Complex32_t;
59 typedef double _Complex PLASMA_Complex64_t;
63 typedef std::complex<float> PLASMA_Complex32_t;
64 typedef std::complex<double> PLASMA_Complex64_t;
66 #define LAPACK_COMPLEX_CUSTOM
67 #define lapack_complex_float std::complex<float>
68 #define lapack_complex_double std::complex<double>
69 #undef PLASMA_HAS_COMPLEX_H
72 # define isinf !_finite
76 typedef float _Complex PLASMA_Complex32_t;
77 typedef double _Complex PLASMA_Complex64_t;
82 #if defined(__SUNPRO_C) || defined(__SUNPRO_CC) || defined(sun) || defined(__sun)
83 #undef PLASMA_HAS_COMPLEX_H
86 #if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
87 #define PLASMA_DEPRECATED __attribute__((__deprecated__))
89 #define PLASMA_DEPRECATED
92 #ifdef PLASMA_HAS_COMPLEX_H
102 extern double cabs(PLASMA_Complex64_t z);
103 extern PLASMA_Complex64_t conj(PLASMA_Complex64_t z);
105 extern float cabsf(PLASMA_Complex32_t z);
106 extern double cimag(PLASMA_Complex64_t z);
107 extern double creal(PLASMA_Complex64_t z);
165 #define PLASMA_REQUEST_INITIALIZER {PLASMA_SUCCESS}
172 Quark_Sequence *quark_sequence;
188 #define PlasmaCCRB 103
189 #define PlasmaCRRB 104
190 #define PlasmaRCRB 105
191 #define PlasmaRRRB 106
193 #define PlasmaNoTrans 111
194 #define PlasmaTrans 112
195 #define PlasmaConjTrans 113
197 #define PlasmaUpper 121
198 #define PlasmaLower 122
199 #define PlasmaUpperLower 123
201 #define PlasmaNonUnit 131
202 #define PlasmaUnit 132
204 #define PlasmaLeft 141
205 #define PlasmaRight 142
207 #define PlasmaOneNorm 171
208 #define PlasmaRealOneNorm 172
209 #define PlasmaTwoNorm 173
210 #define PlasmaFrobeniusNorm 174
211 #define PlasmaInfNorm 175
212 #define PlasmaRealInfNorm 176
213 #define PlasmaMaxNorm 177
214 #define PlasmaRealMaxNorm 178
216 #define PlasmaDistUniform 201
217 #define PlasmaDistSymmetric 202
218 #define PlasmaDistNormal 203
220 #define PlasmaHermGeev 241
221 #define PlasmaHermPoev 242
222 #define PlasmaNonsymPosv 243
223 #define PlasmaSymPosv 244
225 #define PlasmaNoPacking 291
226 #define PlasmaPackSubdiag 292
227 #define PlasmaPackSupdiag 293
228 #define PlasmaPackColumn 294
229 #define PlasmaPackRow 295
230 #define PlasmaPackLowerBand 296
231 #define PlasmaPackUpeprBand 297
232 #define PlasmaPackAll 298
234 #define PlasmaNoVec 301
235 #define PlasmaVec 302
236 #define PlasmaIvec 303
238 #define PlasmaForward 391
239 #define PlasmaBackward 392
241 #define PlasmaColumnwise 401
242 #define PlasmaRowwise 402
243 #define PlasmaTrd 1001
244 #define PlasmaBrd 1002
249 #define plasma_const_neg(const) (((const-1)^0x01)+1)
254 #define PLASMA_FALSE 0
255 #define PLASMA_TRUE 1
260 #define PLASMA_WARNINGS 1
261 #define PLASMA_ERRORS 2
262 #define PLASMA_AUTOTUNING 3
268 #define PLASMA_CONCURRENCY 1
269 #define PLASMA_TILE_SIZE 2
270 #define PLASMA_INNER_BLOCK_SIZE 3
271 #define PLASMA_SCHEDULING_MODE 4
272 #define PLASMA_HOUSEHOLDER_MODE 5
273 #define PLASMA_HOUSEHOLDER_SIZE 6
274 #define PLASMA_TRANSLATION_MODE 7
276 #define PLASMA_STATIC_SCHEDULING 1
277 #define PLASMA_DYNAMIC_SCHEDULING 2
279 #define PLASMA_FLAT_HOUSEHOLDER 1
280 #define PLASMA_TREE_HOUSEHOLDER 2
282 #define PLASMA_INPLACE 1
283 #define PLASMA_OUTOFPLACE 2
288 #define PLASMA_SUCCESS 0
289 #define PLASMA_ERR_NOT_INITIALIZED -101
290 #define PLASMA_ERR_REINITIALIZED -102
291 #define PLASMA_ERR_NOT_SUPPORTED -103
292 #define PLASMA_ERR_ILLEGAL_VALUE -104
293 #define PLASMA_ERR_NOT_FOUND -105
294 #define PLASMA_ERR_OUT_OF_RESOURCES -106
295 #define PLASMA_ERR_INTERNAL_LIMIT -107
296 #define PLASMA_ERR_UNALLOCATED -108
297 #define PLASMA_ERR_FILESYSTEM -109
298 #define PLASMA_ERR_UNEXPECTED -110
299 #define PLASMA_ERR_SEQUENCE_FLUSHED -111
304 #include <plasma_z.h>
305 #include <plasma_d.h>
306 #include <plasma_c.h>
307 #include <plasma_s.h>
308 #include <plasma_zc.h>
309 #include <plasma_ds.h>
318 int PLASMA_Version(
int *ver_major,
int *ver_minor,
int *ver_micro);
319 int PLASMA_Enable(PLASMA_enum lever);
320 int PLASMA_Disable(PLASMA_enum lever);
321 int PLASMA_Set(PLASMA_enum param,
int value);
322 int PLASMA_Get(PLASMA_enum param,
int *value);
323 int PLASMA_Init(
int cores);
324 int PLASMA_Init_Affinity(
int cores,
int *bindtab);
325 int PLASMA_Finalize();
326 int PLASMA_Desc_Create(
PLASMA_desc **desc,
void *mat, PLASMA_enum dtyp,
int mb,
int nb,
int bsiz,
int lm,
int ln,
int i,
int j,
int m,
int n);
328 int PLASMA_Lapack_to_Tile(
void *Af77,
int LDA,
PLASMA_desc *A);
329 int PLASMA_Tile_to_Lapack(
PLASMA_desc *A,
void *Af77,
int LDA);
334 int PLASMA_Dealloc_Handle(
void **handle);
335 int PLASMA_Dealloc_Handle_Tile(
PLASMA_desc **desc);