PLASMA
Parallel Linear Algebra Software for Multicore Architectures
plasma_core_blas_z.h
1
12#ifndef PLASMA_CORE_BLAS_Z_H
13#define PLASMA_CORE_BLAS_Z_H
14
15#include "plasma_async.h"
16#include "plasma_barrier.h"
17#include "plasma_descriptor.h"
18#include "plasma_types.h"
19#include "plasma_workspace.h"
20#include "plasma_descriptor.h"
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
26#define COMPLEX
27
28/******************************************************************************/
29#ifdef COMPLEX
30double plasma_core_dcabs1(plasma_complex64_t alpha);
31#endif
32
33int plasma_core_zgeadd(plasma_enum_t transa,
34 int m, int n,
35 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
36 plasma_complex64_t beta, plasma_complex64_t *B, int ldb);
37
38int plasma_core_zgelqt(int m, int n, int ib,
39 plasma_complex64_t *A, int lda,
40 plasma_complex64_t *T, int ldt,
41 plasma_complex64_t *tau,
42 plasma_complex64_t *work);
43
44void plasma_core_zgemm(plasma_enum_t transa, plasma_enum_t transb,
45 int m, int n, int k,
46 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
47 const plasma_complex64_t *B, int ldb,
48 plasma_complex64_t beta, plasma_complex64_t *C, int ldc);
49
50int plasma_core_zgeqrt(int m, int n, int ib,
51 plasma_complex64_t *A, int lda,
52 plasma_complex64_t *T, int ldt,
53 plasma_complex64_t *tau,
54 plasma_complex64_t *work);
55
56void plasma_core_zgessq(int m, int n,
57 const plasma_complex64_t *A, int lda,
58 double *scale, double *sumsq);
59
60void plasma_core_zgetrf(plasma_desc_t A, int *ipiv, int ib, int rank, int size,
61 volatile int *max_idx, volatile plasma_complex64_t *max_val,
62 volatile int *info, plasma_barrier_t *barrier);
63
64int plasma_core_zhegst(int itype, plasma_enum_t uplo,
65 int n,
66 plasma_complex64_t *A, int lda,
67 plasma_complex64_t *B, int ldb);
68
69void plasma_core_zhemm(plasma_enum_t side, plasma_enum_t uplo,
70 int m, int n,
71 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
72 const plasma_complex64_t *B, int ldb,
73 plasma_complex64_t beta, plasma_complex64_t *C, int ldc);
74
75void plasma_core_zher2k(plasma_enum_t uplo, plasma_enum_t trans,
76 int n, int k,
77 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
78 const plasma_complex64_t *B, int ldb,
79 double beta, plasma_complex64_t *C, int ldc);
80
81void plasma_core_zherk(plasma_enum_t uplo, plasma_enum_t trans,
82 int n, int k,
83 double alpha, const plasma_complex64_t *A, int lda,
84 double beta, plasma_complex64_t *C, int ldc);
85
86void plasma_core_zhessq(plasma_enum_t uplo,
87 int n,
88 const plasma_complex64_t *A, int lda,
89 double *scale, double *sumsq);
90
91void plasma_core_zsyssq(plasma_enum_t uplo,
92 int n,
93 const plasma_complex64_t *A, int lda,
94 double *scale, double *sumsq);
95
96void plasma_core_zlacpy(plasma_enum_t uplo, plasma_enum_t transa,
97 int m, int n,
98 const plasma_complex64_t *A, int lda,
99 plasma_complex64_t *B, int ldb);
100
101void plasma_core_zlacpy_lapack2tile_band(plasma_enum_t uplo,
102 int it, int jt,
103 int m, int n, int nb, int kl, int ku,
104 const plasma_complex64_t *A, int lda,
105 plasma_complex64_t *B, int ldb);
106
107void plasma_core_zlacpy_tile2lapack_band(plasma_enum_t uplo,
108 int it, int jt,
109 int m, int n, int nb, int kl, int ku,
110 const plasma_complex64_t *B, int ldb,
111 plasma_complex64_t *A, int lda);
112
113void plasma_core_zlange(plasma_enum_t norm,
114 int m, int n,
115 const plasma_complex64_t *A, int lda,
116 double *work, double *result);
117
118void plasma_core_zlanhe(plasma_enum_t norm, plasma_enum_t uplo,
119 int n,
120 const plasma_complex64_t *A, int lda,
121 double *work, double *value);
122
123void plasma_core_zlansy(plasma_enum_t norm, plasma_enum_t uplo,
124 int n,
125 const plasma_complex64_t *A, int lda,
126 double *work, double *value);
127
128void plasma_core_zlantr(plasma_enum_t norm, plasma_enum_t uplo, plasma_enum_t diag,
129 int m, int n,
130 const plasma_complex64_t *A, int lda,
131 double *work, double *value);
132
133void plasma_core_zlascl(plasma_enum_t uplo,
134 double cfrom, double cto,
135 int m, int n,
136 plasma_complex64_t *A, int lda);
137
138void plasma_core_zlaset(plasma_enum_t uplo,
139 int m, int n,
140 plasma_complex64_t alpha, plasma_complex64_t beta,
141 plasma_complex64_t *A, int lda);
142
143void plasma_core_zgeswp(plasma_enum_t colrow,
144 plasma_desc_t A, int k1, int k2, const int *ipiv, int incx);
145
146void plasma_core_zheswp(int rank, int num_threads,
147 int uplo, plasma_desc_t A, int k1, int k2, const int *ipiv,
148 int incx, plasma_barrier_t *barrier);
149
150int plasma_core_zlauum(plasma_enum_t uplo,
151 int n,
152 plasma_complex64_t *A, int lda);
153
154int plasma_core_zpamm(plasma_enum_t op, plasma_enum_t side, plasma_enum_t storev,
155 int m, int n, int k, int l,
156 const plasma_complex64_t *A1, int lda1,
157 plasma_complex64_t *A2, int lda2,
158 const plasma_complex64_t *V, int ldv,
159 plasma_complex64_t *W, int ldw);
160
161int plasma_core_zparfb(plasma_enum_t side, plasma_enum_t trans, plasma_enum_t direct,
162 plasma_enum_t storev,
163 int m1, int n1, int m2, int n2, int k, int l,
164 plasma_complex64_t *A1, int lda1,
165 plasma_complex64_t *A2, int lda2,
166 const plasma_complex64_t *V, int ldv,
167 const plasma_complex64_t *T, int ldt,
168 plasma_complex64_t *work, int ldwork);
169
170int plasma_core_zpemv(plasma_enum_t trans, int storev,
171 int m, int n, int l,
172 plasma_complex64_t alpha,
173 const plasma_complex64_t *A, int lda,
174 const plasma_complex64_t *X, int incx,
175 plasma_complex64_t beta,
176 plasma_complex64_t *Y, int incy,
177 plasma_complex64_t *work);
178
179int plasma_core_zpotrf(plasma_enum_t uplo,
180 int n,
181 plasma_complex64_t *A, int lda);
182
183void plasma_core_zsymm(plasma_enum_t side, plasma_enum_t uplo,
184 int m, int n,
185 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
186 const plasma_complex64_t *B, int ldb,
187 plasma_complex64_t beta, plasma_complex64_t *C, int ldc);
188
189void plasma_core_zsyr2k(
190 plasma_enum_t uplo, plasma_enum_t trans,
191 int n, int k,
192 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
193 const plasma_complex64_t *B, int ldb,
194 plasma_complex64_t beta, plasma_complex64_t *C, int ldc);
195
196void plasma_core_zsyrk(plasma_enum_t uplo, plasma_enum_t trans,
197 int n, int k,
198 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
199 plasma_complex64_t beta, plasma_complex64_t *C, int ldc);
200
201int plasma_core_ztradd(plasma_enum_t uplo, plasma_enum_t transa,
202 int m, int n,
203 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
204 plasma_complex64_t beta, plasma_complex64_t *B, int ldb);
205
206void plasma_core_ztrmm(plasma_enum_t side, plasma_enum_t uplo,
207 plasma_enum_t transa, plasma_enum_t diag,
208 int m, int n,
209 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
210 plasma_complex64_t *B, int ldb);
211
212void plasma_core_ztrsm(plasma_enum_t side, plasma_enum_t uplo,
213 plasma_enum_t transa, plasma_enum_t diag,
214 int m, int n,
215 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
216 plasma_complex64_t *B, int ldb);
217
218void plasma_core_ztrssq(plasma_enum_t uplo, plasma_enum_t diag,
219 int m, int n,
220 const plasma_complex64_t *A, int lda,
221 double *scale, double *sumsq);
222
223int plasma_core_ztrtri(plasma_enum_t uplo, plasma_enum_t diag,
224 int n,
225 plasma_complex64_t *A, int lda);
226
227int plasma_core_ztslqt(int m, int n, int ib,
228 plasma_complex64_t *A1, int lda1,
229 plasma_complex64_t *A2, int lda2,
230 plasma_complex64_t *T, int ldt,
231 plasma_complex64_t *tau,
232 plasma_complex64_t *work);
233
234int plasma_core_ztsmlq(plasma_enum_t side, plasma_enum_t trans,
235 int m1, int n1, int m2, int n2, int k, int ib,
236 plasma_complex64_t *A1, int lda1,
237 plasma_complex64_t *A2, int lda2,
238 const plasma_complex64_t *V, int ldv,
239 const plasma_complex64_t *T, int ldt,
240 plasma_complex64_t *work, int ldwork);
241
242int plasma_core_ztsmqr(plasma_enum_t side, plasma_enum_t trans,
243 int m1, int n1, int m2, int n2, int k, int ib,
244 plasma_complex64_t *A1, int lda1,
245 plasma_complex64_t *A2, int lda2,
246 const plasma_complex64_t *V, int ldv,
247 const plasma_complex64_t *T, int ldt,
248 plasma_complex64_t *work, int ldwork);
249
250int plasma_core_ztsqrt(int m, int n, int ib,
251 plasma_complex64_t *A1, int lda1,
252 plasma_complex64_t *A2, int lda2,
253 plasma_complex64_t *T, int ldt,
254 plasma_complex64_t *tau,
255 plasma_complex64_t *work);
256
257int plasma_core_zttlqt(int m, int n, int ib,
258 plasma_complex64_t *A1, int lda1,
259 plasma_complex64_t *A2, int lda2,
260 plasma_complex64_t *T, int ldt,
261 plasma_complex64_t *tau,
262 plasma_complex64_t *work);
263
264int plasma_core_zttmlq(plasma_enum_t side, plasma_enum_t trans,
265 int m1, int n1, int m2, int n2, int k, int ib,
266 plasma_complex64_t *A1, int lda1,
267 plasma_complex64_t *A2, int lda2,
268 const plasma_complex64_t *V, int ldv,
269 const plasma_complex64_t *T, int ldt,
270 plasma_complex64_t *work, int ldwork);
271
272int plasma_core_zttmqr(plasma_enum_t side, plasma_enum_t trans,
273 int m1, int n1, int m2, int n2, int k, int ib,
274 plasma_complex64_t *A1, int lda1,
275 plasma_complex64_t *A2, int lda2,
276 const plasma_complex64_t *V, int ldv,
277 const plasma_complex64_t *T, int ldt,
278 plasma_complex64_t *work, int ldwork);
279
280int plasma_core_zttqrt(int m, int n, int ib,
281 plasma_complex64_t *A1, int lda1,
282 plasma_complex64_t *A2, int lda2,
283 plasma_complex64_t *T, int ldt,
284 plasma_complex64_t *tau,
285 plasma_complex64_t *work);
286
287int plasma_core_zunmlq(plasma_enum_t side, plasma_enum_t trans,
288 int m, int n, int k, int ib,
289 const plasma_complex64_t *A, int lda,
290 const plasma_complex64_t *T, int ldt,
291 plasma_complex64_t *C, int ldc,
292 plasma_complex64_t *work, int ldwork);
293
294int plasma_core_zunmqr(plasma_enum_t side, plasma_enum_t trans,
295 int m, int n, int k, int ib,
296 const plasma_complex64_t *A, int lda,
297 const plasma_complex64_t *T, int ldt,
298 plasma_complex64_t *C, int ldc,
299 plasma_complex64_t *work, int ldwork);
300
301/******************************************************************************/
302void plasma_core_omp_dzamax(int colrow, int m, int n,
303 const plasma_complex64_t *A, int lda,
304 double *values,
305 plasma_sequence_t *sequence, plasma_request_t *request);
306
307void plasma_core_omp_zgeadd(
308 plasma_enum_t transa, int m, int n,
309 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
310 plasma_complex64_t beta, plasma_complex64_t *B, int ldb,
311 plasma_sequence_t *sequence, plasma_request_t *request);
312
313void plasma_core_omp_zgelqt(int m, int n, int ib,
314 plasma_complex64_t *A, int lda,
315 plasma_complex64_t *T, int ldt,
316 plasma_workspace_t work,
317 plasma_sequence_t *sequence, plasma_request_t *request);
318
319void plasma_core_omp_zgemm(
320 plasma_enum_t transa, plasma_enum_t transb,
321 int m, int n, int k,
322 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
323 const plasma_complex64_t *B, int ldb,
324 plasma_complex64_t beta, plasma_complex64_t *C, int ldc,
325 plasma_sequence_t *sequence, plasma_request_t *request);
326
327void plasma_core_omp_zgeqrt(int m, int n, int ib,
328 plasma_complex64_t *A, int lda,
329 plasma_complex64_t *T, int ldt,
330 plasma_workspace_t work,
331 plasma_sequence_t *sequence, plasma_request_t *request);
332
333void plasma_core_omp_zgessq(int m, int n,
334 const plasma_complex64_t *A, int lda,
335 double *scale, double *sumsq,
336 plasma_sequence_t *sequence, plasma_request_t *request);
337
338void plasma_core_omp_zgessq_aux(int n,
339 const double *scale, const double *sumsq,
340 double *value,
341 plasma_sequence_t *sequence,
342 plasma_request_t *request);
343
344void plasma_core_omp_zhegst(int itype, plasma_enum_t uplo,
345 int n,
346 plasma_complex64_t *A, int lda,
347 plasma_complex64_t *B, int ldb,
348 plasma_sequence_t *sequence, plasma_request_t *request);
349
350void plasma_core_omp_zhemm(
351 plasma_enum_t side, plasma_enum_t uplo,
352 int m, int n,
353 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
354 const plasma_complex64_t *B, int ldb,
355 plasma_complex64_t beta, plasma_complex64_t *C, int ldc,
356 plasma_sequence_t *sequence, plasma_request_t *request);
357
358void plasma_core_omp_zher2k(
359 plasma_enum_t uplo, plasma_enum_t trans,
360 int n, int k,
361 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
362 const plasma_complex64_t *B, int ldb,
363 double beta, plasma_complex64_t *C, int ldc,
364 plasma_sequence_t *sequence, plasma_request_t *request);
365
366void plasma_core_omp_zherk(plasma_enum_t uplo, plasma_enum_t trans,
367 int n, int k,
368 double alpha, const plasma_complex64_t *A, int lda,
369 double beta, plasma_complex64_t *C, int ldc,
370 plasma_sequence_t *sequence, plasma_request_t *request);
371
372void plasma_core_omp_zhessq(plasma_enum_t uplo,
373 int n,
374 const plasma_complex64_t *A, int lda,
375 double *scale, double *sumsq,
376 plasma_sequence_t *sequence, plasma_request_t *request);
377
378void plasma_core_omp_zsyssq(plasma_enum_t uplo,
379 int n,
380 const plasma_complex64_t *A, int lda,
381 double *scale, double *sumsq,
382 plasma_sequence_t *sequence, plasma_request_t *request);
383
384void plasma_core_omp_zsyssq_aux(int m, int n,
385 const double *scale, const double *sumsq,
386 double *value,
387 plasma_sequence_t *sequence,
388 plasma_request_t *request);
389
390void plasma_core_omp_zlacpy(plasma_enum_t uplo, plasma_enum_t transa,
391 int m, int n,
392 const plasma_complex64_t *A, int lda,
393 plasma_complex64_t *B, int ldb,
394 plasma_sequence_t *sequence, plasma_request_t *request);
395
396void plasma_core_omp_zlacpy_lapack2tile_band(plasma_enum_t uplo,
397 int it, int jt,
398 int m, int n, int nb, int kl, int ku,
399 const plasma_complex64_t *A, int lda,
400 plasma_complex64_t *B, int ldb);
401
402void plasma_core_omp_zlacpy_tile2lapack_band(plasma_enum_t uplo,
403 int it, int jt,
404 int m, int n, int nb, int kl, int ku,
405 const plasma_complex64_t *B, int ldb,
406 plasma_complex64_t *A, int lda);
407
408void plasma_core_omp_zlange(plasma_enum_t norm,
409 int m, int n,
410 const plasma_complex64_t *A, int lda,
411 double *work, double *result,
412 plasma_sequence_t *sequence, plasma_request_t *request);
413
414void plasma_core_omp_zlange_aux(plasma_enum_t norm,
415 int m, int n,
416 const plasma_complex64_t *A, int lda,
417 double *value,
418 plasma_sequence_t *sequence,
419 plasma_request_t *request);
420
421void plasma_core_omp_zlanhe(plasma_enum_t norm, plasma_enum_t uplo,
422 int n,
423 const plasma_complex64_t *A, int lda,
424 double *work, double *value,
425 plasma_sequence_t *sequence, plasma_request_t *request);
426
427void plasma_core_omp_zlanhe_aux(plasma_enum_t norm, plasma_enum_t uplo,
428 int n,
429 const plasma_complex64_t *A, int lda,
430 double *value,
431 plasma_sequence_t *sequence,
432 plasma_request_t *request);
433
434void plasma_core_omp_zlansy(plasma_enum_t norm, plasma_enum_t uplo,
435 int n,
436 const plasma_complex64_t *A, int lda,
437 double *work, double *value,
438 plasma_sequence_t *sequence, plasma_request_t *request);
439
440void plasma_core_omp_zlansy_aux(plasma_enum_t norm, plasma_enum_t uplo,
441 int n,
442 const plasma_complex64_t *A, int lda,
443 double *value,
444 plasma_sequence_t *sequence,
445 plasma_request_t *request);
446
447void plasma_core_omp_zlantr(plasma_enum_t norm, plasma_enum_t uplo, plasma_enum_t diag,
448 int m, int n,
449 const plasma_complex64_t *A, int lda,
450 double *work, double *value,
451 plasma_sequence_t *sequence, plasma_request_t *request);
452
453void plasma_core_omp_zlantr_aux(plasma_enum_t norm, plasma_enum_t uplo,
454 plasma_enum_t diag,
455 int m, int n,
456 const plasma_complex64_t *A, int lda,
457 double *value,
458 plasma_sequence_t *sequence,
459 plasma_request_t *request);
460
461void plasma_core_omp_zlascl(plasma_enum_t uplo,
462 double cfrom, double cto,
463 int m, int n,
464 plasma_complex64_t *A, int lda,
465 plasma_sequence_t *sequence, plasma_request_t *request);
466
467void plasma_core_omp_zlaset(plasma_enum_t uplo,
468 int mb, int nb,
469 int i, int j,
470 int m, int n,
471 plasma_complex64_t alpha, plasma_complex64_t beta,
472 plasma_complex64_t *A);
473
474void plasma_core_omp_zlauum(plasma_enum_t uplo,
475 int n,
476 plasma_complex64_t *A, int lda,
477 plasma_sequence_t *sequence, plasma_request_t *request);
478
479void plasma_core_omp_zpotrf(plasma_enum_t uplo,
480 int n,
481 plasma_complex64_t *A, int lda,
482 int iinfo,
483 plasma_sequence_t *sequence, plasma_request_t *request);
484
485void plasma_core_omp_zsymm(
486 plasma_enum_t side, plasma_enum_t uplo,
487 int m, int n,
488 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
489 const plasma_complex64_t *B, int ldb,
490 plasma_complex64_t beta, plasma_complex64_t *C, int ldc,
491 plasma_sequence_t *sequence, plasma_request_t *request);
492
493void plasma_core_omp_zsyr2k(
494 plasma_enum_t uplo, plasma_enum_t trans,
495 int n, int k,
496 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
497 const plasma_complex64_t *B, int ldb,
498 plasma_complex64_t beta, plasma_complex64_t *C, int ldc,
499 plasma_sequence_t *sequence, plasma_request_t *request);
500
501void plasma_core_omp_zsyrk(
502 plasma_enum_t uplo, plasma_enum_t trans,
503 int n, int k,
504 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
505 plasma_complex64_t beta, plasma_complex64_t *C, int ldc,
506 plasma_sequence_t *sequence, plasma_request_t *request);
507
508void plasma_core_omp_ztradd(
509 plasma_enum_t uplo, plasma_enum_t transa,
510 int m, int n,
511 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
512 plasma_complex64_t beta, plasma_complex64_t *B, int ldb,
513 plasma_sequence_t *sequence, plasma_request_t *request);
514
515void plasma_core_omp_ztrmm(
516 plasma_enum_t side, plasma_enum_t uplo,
517 plasma_enum_t transa, plasma_enum_t diag,
518 int m, int n,
519 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
520 plasma_complex64_t *B, int ldb,
521 plasma_sequence_t *sequence, plasma_request_t *request);
522
523void plasma_core_omp_ztrsm(
524 plasma_enum_t side, plasma_enum_t uplo,
525 plasma_enum_t transa, plasma_enum_t diag,
526 int m, int n,
527 plasma_complex64_t alpha, const plasma_complex64_t *A, int lda,
528 plasma_complex64_t *B, int ldb,
529 plasma_sequence_t *sequence, plasma_request_t *request);
530
531void plasma_core_omp_ztrssq(plasma_enum_t uplo, plasma_enum_t diag,
532 int m, int n,
533 const plasma_complex64_t *A, int lda,
534 double *scale, double *sumsq,
535 plasma_sequence_t *sequence, plasma_request_t *request);
536
537void plasma_core_omp_ztrtri(plasma_enum_t uplo, plasma_enum_t diag,
538 int n,
539 plasma_complex64_t *A, int lda,
540 int iinfo,
541 plasma_sequence_t *sequence, plasma_request_t *request);
542
543void plasma_core_omp_ztslqt(int m, int n, int ib,
544 plasma_complex64_t *A1, int lda1,
545 plasma_complex64_t *A2, int lda2,
546 plasma_complex64_t *T, int ldt,
547 plasma_workspace_t work,
548 plasma_sequence_t *sequence, plasma_request_t *request);
549
550void plasma_core_omp_ztsmlq(plasma_enum_t side, plasma_enum_t trans,
551 int m1, int n1, int m2, int n2, int k, int ib,
552 plasma_complex64_t *A1, int lda1,
553 plasma_complex64_t *A2, int lda2,
554 const plasma_complex64_t *V, int ldv,
555 const plasma_complex64_t *T, int ldt,
556 plasma_workspace_t work,
557 plasma_sequence_t *sequence, plasma_request_t *request);
558
559void plasma_core_omp_ztsmqr(plasma_enum_t side, plasma_enum_t trans,
560 int m1, int n1, int m2, int n2, int k, int ib,
561 plasma_complex64_t *A1, int lda1,
562 plasma_complex64_t *A2, int lda2,
563 const plasma_complex64_t *V, int ldv,
564 const plasma_complex64_t *T, int ldt,
565 plasma_workspace_t work,
566 plasma_sequence_t *sequence, plasma_request_t *request);
567
568void plasma_core_omp_ztsqrt(int m, int n, int ib,
569 plasma_complex64_t *A1, int lda1,
570 plasma_complex64_t *A2, int lda2,
571 plasma_complex64_t *T, int ldt,
572 plasma_workspace_t work,
573 plasma_sequence_t *sequence, plasma_request_t *request);
574
575void plasma_core_omp_zttlqt(int m, int n, int ib,
576 plasma_complex64_t *A1, int lda1,
577 plasma_complex64_t *A2, int lda2,
578 plasma_complex64_t *T, int ldt,
579 plasma_workspace_t work,
580 plasma_sequence_t *sequence, plasma_request_t *request);
581
582void plasma_core_omp_zttmlq(plasma_enum_t side, plasma_enum_t trans,
583 int m1, int n1, int m2, int n2, int k, int ib,
584 plasma_complex64_t *A1, int lda1,
585 plasma_complex64_t *A2, int lda2,
586 const plasma_complex64_t *V, int ldv,
587 const plasma_complex64_t *T, int ldt,
588 plasma_workspace_t work,
589 plasma_sequence_t *sequence, plasma_request_t *request);
590
591void plasma_core_omp_zttmqr(plasma_enum_t side, plasma_enum_t trans,
592 int m1, int n1, int m2, int n2, int k, int ib,
593 plasma_complex64_t *A1, int lda1,
594 plasma_complex64_t *A2, int lda2,
595 const plasma_complex64_t *V, int ldv,
596 const plasma_complex64_t *T, int ldt,
597 plasma_workspace_t work,
598 plasma_sequence_t *sequence, plasma_request_t *request);
599
600void plasma_core_omp_zttqrt(int m, int n, int ib,
601 plasma_complex64_t *A1, int lda1,
602 plasma_complex64_t *A2, int lda2,
603 plasma_complex64_t *T, int ldt,
604 plasma_workspace_t work,
605 plasma_sequence_t *sequence, plasma_request_t *request);
606
607void plasma_core_omp_zunmlq(plasma_enum_t side, plasma_enum_t trans,
608 int m, int n, int k, int ib,
609 const plasma_complex64_t *A, int lda,
610 const plasma_complex64_t *T, int ldt,
611 plasma_complex64_t *C, int ldc,
612 plasma_workspace_t work,
613 plasma_sequence_t *sequence, plasma_request_t *request);
614
615void plasma_core_omp_zunmqr(plasma_enum_t side, plasma_enum_t trans,
616 int m, int n, int k, int ib,
617 const plasma_complex64_t *A, int lda,
618 const plasma_complex64_t *T, int ldt,
619 plasma_complex64_t *C, int ldc,
620 plasma_workspace_t work,
621 plasma_sequence_t *sequence, plasma_request_t *request);
622
623#undef COMPLEX
624
625#ifdef __cplusplus
626} // extern "C"
627#endif
628
629#endif // PLASMA_CORE_BLAS_Z_H
double plasma_core_dcabs1(plasma_complex64_t alpha)
Definition: core_dcabs1.c:35
Definition: plasma_descriptor.h:40