PLASMA
2.4.5
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
Main Page
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
cblas.h
Go to the documentation of this file.
1
#ifndef CBLAS_H
2
#define CBLAS_H
3
#include <stddef.h>
4
5
/*
6
* Enumerated and derived types
7
*/
8
#define CBLAS_INDEX size_t
/* this may vary between platforms */
9
10
enum
CBLAS_ORDER
{
CblasRowMajor
=101,
CblasColMajor
=102};
11
enum
CBLAS_TRANSPOSE
{
CblasNoTrans
=111,
CblasTrans
=112,
CblasConjTrans
=113};
12
enum
CBLAS_UPLO
{
CblasUpper
=121,
CblasLower
=122};
13
enum
CBLAS_DIAG
{
CblasNonUnit
=131,
CblasUnit
=132};
14
enum
CBLAS_SIDE
{
CblasLeft
=141,
CblasRight
=142};
15
16
/*
17
* ===========================================================================
18
* Prototypes for level 1 BLAS functions (complex are recast as routines)
19
* ===========================================================================
20
*/
21
22
#ifdef __cplusplus
23
extern
"C"
{
24
#endif
25
26
float
cblas_sdsdot
(
const
int
N,
const
float
alpha,
const
float
*X,
27
const
int
incX,
const
float
*Y,
const
int
incY);
28
double
cblas_dsdot
(
const
int
N,
const
float
*X,
const
int
incX,
const
float
*Y,
29
const
int
incY);
30
float
cblas_sdot
(
const
int
N,
const
float
*X,
const
int
incX,
31
const
float
*Y,
const
int
incY);
32
double
cblas_ddot
(
const
int
N,
const
double
*X,
const
int
incX,
33
const
double
*Y,
const
int
incY);
34
35
/*
36
* Functions having prefixes Z and C only
37
*/
38
void
cblas_cdotu_sub
(
const
int
N,
const
void
*X,
const
int
incX,
39
const
void
*Y,
const
int
incY,
void
*dotu);
40
void
cblas_cdotc_sub
(
const
int
N,
const
void
*X,
const
int
incX,
41
const
void
*Y,
const
int
incY,
void
*dotc);
42
43
void
cblas_zdotu_sub
(
const
int
N,
const
void
*X,
const
int
incX,
44
const
void
*Y,
const
int
incY,
void
*dotu);
45
void
cblas_zdotc_sub
(
const
int
N,
const
void
*X,
const
int
incX,
46
const
void
*Y,
const
int
incY,
void
*dotc);
47
48
49
/*
50
* Functions having prefixes S D SC DZ
51
*/
52
float
cblas_snrm2
(
const
int
N,
const
float
*X,
const
int
incX);
53
float
cblas_sasum
(
const
int
N,
const
float
*X,
const
int
incX);
54
55
double
cblas_dnrm2
(
const
int
N,
const
double
*X,
const
int
incX);
56
double
cblas_dasum
(
const
int
N,
const
double
*X,
const
int
incX);
57
58
float
cblas_scnrm2
(
const
int
N,
const
void
*X,
const
int
incX);
59
float
cblas_scasum
(
const
int
N,
const
void
*X,
const
int
incX);
60
61
double
cblas_dznrm2
(
const
int
N,
const
void
*X,
const
int
incX);
62
double
cblas_dzasum
(
const
int
N,
const
void
*X,
const
int
incX);
63
64
65
/*
66
* Functions having standard 4 prefixes (S D C Z)
67
*/
68
CBLAS_INDEX
cblas_isamax
(
const
int
N,
const
float
*X,
const
int
incX);
69
CBLAS_INDEX
cblas_idamax
(
const
int
N,
const
double
*X,
const
int
incX);
70
CBLAS_INDEX
cblas_icamax
(
const
int
N,
const
void
*X,
const
int
incX);
71
CBLAS_INDEX
cblas_izamax
(
const
int
N,
const
void
*X,
const
int
incX);
72
73
/*
74
* ===========================================================================
75
* Prototypes for level 1 BLAS routines
76
* ===========================================================================
77
*/
78
79
/*
80
* Routines with standard 4 prefixes (s, d, c, z)
81
*/
82
void
cblas_sswap
(
const
int
N,
float
*X,
const
int
incX,
83
float
*Y,
const
int
incY);
84
void
cblas_scopy
(
const
int
N,
const
float
*X,
const
int
incX,
85
float
*Y,
const
int
incY);
86
void
cblas_saxpy
(
const
int
N,
const
float
alpha,
const
float
*X,
87
const
int
incX,
float
*Y,
const
int
incY);
88
89
void
cblas_dswap
(
const
int
N,
double
*X,
const
int
incX,
90
double
*Y,
const
int
incY);
91
void
cblas_dcopy
(
const
int
N,
const
double
*X,
const
int
incX,
92
double
*Y,
const
int
incY);
93
void
cblas_daxpy
(
const
int
N,
const
double
alpha,
const
double
*X,
94
const
int
incX,
double
*Y,
const
int
incY);
95
96
void
cblas_cswap
(
const
int
N,
void
*X,
const
int
incX,
97
void
*Y,
const
int
incY);
98
void
cblas_ccopy
(
const
int
N,
const
void
*X,
const
int
incX,
99
void
*Y,
const
int
incY);
100
void
cblas_caxpy
(
const
int
N,
const
void
*alpha,
const
void
*X,
101
const
int
incX,
void
*Y,
const
int
incY);
102
103
void
cblas_zswap
(
const
int
N,
void
*X,
const
int
incX,
104
void
*Y,
const
int
incY);
105
void
cblas_zcopy
(
const
int
N,
const
void
*X,
const
int
incX,
106
void
*Y,
const
int
incY);
107
void
cblas_zaxpy
(
const
int
N,
const
void
*alpha,
const
void
*X,
108
const
int
incX,
void
*Y,
const
int
incY);
109
110
111
/*
112
* Routines with S and D prefix only
113
*/
114
void
cblas_srotg
(
float
*a,
float
*b,
float
*c,
float
*s);
115
void
cblas_srotmg
(
float
*d1,
float
*d2,
float
*b1,
const
float
b2,
float
*P);
116
void
cblas_srot
(
const
int
N,
float
*X,
const
int
incX,
117
float
*Y,
const
int
incY,
const
float
c,
const
float
s);
118
void
cblas_srotm
(
const
int
N,
float
*X,
const
int
incX,
119
float
*Y,
const
int
incY,
const
float
*P);
120
121
void
cblas_drotg
(
double
*a,
double
*b,
double
*c,
double
*s);
122
void
cblas_drotmg
(
double
*d1,
double
*d2,
double
*b1,
const
double
b2,
double
*P);
123
void
cblas_drot
(
const
int
N,
double
*X,
const
int
incX,
124
double
*Y,
const
int
incY,
const
double
c,
const
double
s);
125
void
cblas_drotm
(
const
int
N,
double
*X,
const
int
incX,
126
double
*Y,
const
int
incY,
const
double
*P);
127
128
129
/*
130
* Routines with S D C Z CS and ZD prefixes
131
*/
132
void
cblas_sscal
(
const
int
N,
const
float
alpha,
float
*X,
const
int
incX);
133
void
cblas_dscal
(
const
int
N,
const
double
alpha,
double
*X,
const
int
incX);
134
void
cblas_cscal
(
const
int
N,
const
void
*alpha,
void
*X,
const
int
incX);
135
void
cblas_zscal
(
const
int
N,
const
void
*alpha,
void
*X,
const
int
incX);
136
void
cblas_csscal
(
const
int
N,
const
float
alpha,
void
*X,
const
int
incX);
137
void
cblas_zdscal
(
const
int
N,
const
double
alpha,
void
*X,
const
int
incX);
138
139
/*
140
* ===========================================================================
141
* Prototypes for level 2 BLAS
142
* ===========================================================================
143
*/
144
145
/*
146
* Routines with standard 4 prefixes (S, D, C, Z)
147
*/
148
void
cblas_sgemv
(
const
enum
CBLAS_ORDER
order,
149
const
enum
CBLAS_TRANSPOSE
TransA,
const
int
M,
const
int
N,
150
const
float
alpha,
const
float
*
A
,
const
int
lda,
151
const
float
*X,
const
int
incX,
const
float
beta,
152
float
*Y,
const
int
incY);
153
void
cblas_sgbmv
(
const
enum
CBLAS_ORDER
order,
154
const
enum
CBLAS_TRANSPOSE
TransA,
const
int
M,
const
int
N,
155
const
int
KL,
const
int
KU,
const
float
alpha,
156
const
float
*
A
,
const
int
lda,
const
float
*X,
157
const
int
incX,
const
float
beta,
float
*Y,
const
int
incY);
158
void
cblas_strmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
159
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
160
const
int
N,
const
float
*
A
,
const
int
lda,
161
float
*X,
const
int
incX);
162
void
cblas_stbmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
163
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
164
const
int
N,
const
int
K,
const
float
*
A
,
const
int
lda,
165
float
*X,
const
int
incX);
166
void
cblas_stpmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
167
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
168
const
int
N,
const
float
*Ap,
float
*X,
const
int
incX);
169
void
cblas_strsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
170
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
171
const
int
N,
const
float
*
A
,
const
int
lda,
float
*X,
172
const
int
incX);
173
void
cblas_stbsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
174
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
175
const
int
N,
const
int
K,
const
float
*
A
,
const
int
lda,
176
float
*X,
const
int
incX);
177
void
cblas_stpsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
178
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
179
const
int
N,
const
float
*Ap,
float
*X,
const
int
incX);
180
181
void
cblas_dgemv
(
const
enum
CBLAS_ORDER
order,
182
const
enum
CBLAS_TRANSPOSE
TransA,
const
int
M,
const
int
N,
183
const
double
alpha,
const
double
*
A
,
const
int
lda,
184
const
double
*X,
const
int
incX,
const
double
beta,
185
double
*Y,
const
int
incY);
186
void
cblas_dgbmv
(
const
enum
CBLAS_ORDER
order,
187
const
enum
CBLAS_TRANSPOSE
TransA,
const
int
M,
const
int
N,
188
const
int
KL,
const
int
KU,
const
double
alpha,
189
const
double
*
A
,
const
int
lda,
const
double
*X,
190
const
int
incX,
const
double
beta,
double
*Y,
const
int
incY);
191
void
cblas_dtrmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
192
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
193
const
int
N,
const
double
*
A
,
const
int
lda,
194
double
*X,
const
int
incX);
195
void
cblas_dtbmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
196
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
197
const
int
N,
const
int
K,
const
double
*
A
,
const
int
lda,
198
double
*X,
const
int
incX);
199
void
cblas_dtpmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
200
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
201
const
int
N,
const
double
*Ap,
double
*X,
const
int
incX);
202
void
cblas_dtrsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
203
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
204
const
int
N,
const
double
*
A
,
const
int
lda,
double
*X,
205
const
int
incX);
206
void
cblas_dtbsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
207
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
208
const
int
N,
const
int
K,
const
double
*
A
,
const
int
lda,
209
double
*X,
const
int
incX);
210
void
cblas_dtpsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
211
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
212
const
int
N,
const
double
*Ap,
double
*X,
const
int
incX);
213
214
void
cblas_cgemv
(
const
enum
CBLAS_ORDER
order,
215
const
enum
CBLAS_TRANSPOSE
TransA,
const
int
M,
const
int
N,
216
const
void
*alpha,
const
void
*
A
,
const
int
lda,
217
const
void
*X,
const
int
incX,
const
void
*beta,
218
void
*Y,
const
int
incY);
219
void
cblas_cgbmv
(
const
enum
CBLAS_ORDER
order,
220
const
enum
CBLAS_TRANSPOSE
TransA,
const
int
M,
const
int
N,
221
const
int
KL,
const
int
KU,
const
void
*alpha,
222
const
void
*
A
,
const
int
lda,
const
void
*X,
223
const
int
incX,
const
void
*beta,
void
*Y,
const
int
incY);
224
void
cblas_ctrmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
225
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
226
const
int
N,
const
void
*
A
,
const
int
lda,
227
void
*X,
const
int
incX);
228
void
cblas_ctbmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
229
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
230
const
int
N,
const
int
K,
const
void
*
A
,
const
int
lda,
231
void
*X,
const
int
incX);
232
void
cblas_ctpmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
233
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
234
const
int
N,
const
void
*Ap,
void
*X,
const
int
incX);
235
void
cblas_ctrsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
236
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
237
const
int
N,
const
void
*
A
,
const
int
lda,
void
*X,
238
const
int
incX);
239
void
cblas_ctbsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
240
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
241
const
int
N,
const
int
K,
const
void
*
A
,
const
int
lda,
242
void
*X,
const
int
incX);
243
void
cblas_ctpsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
244
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
245
const
int
N,
const
void
*Ap,
void
*X,
const
int
incX);
246
247
void
cblas_zgemv
(
const
enum
CBLAS_ORDER
order,
248
const
enum
CBLAS_TRANSPOSE
TransA,
const
int
M,
const
int
N,
249
const
void
*alpha,
const
void
*
A
,
const
int
lda,
250
const
void
*X,
const
int
incX,
const
void
*beta,
251
void
*Y,
const
int
incY);
252
void
cblas_zgbmv
(
const
enum
CBLAS_ORDER
order,
253
const
enum
CBLAS_TRANSPOSE
TransA,
const
int
M,
const
int
N,
254
const
int
KL,
const
int
KU,
const
void
*alpha,
255
const
void
*
A
,
const
int
lda,
const
void
*X,
256
const
int
incX,
const
void
*beta,
void
*Y,
const
int
incY);
257
void
cblas_ztrmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
258
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
259
const
int
N,
const
void
*
A
,
const
int
lda,
260
void
*X,
const
int
incX);
261
void
cblas_ztbmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
262
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
263
const
int
N,
const
int
K,
const
void
*
A
,
const
int
lda,
264
void
*X,
const
int
incX);
265
void
cblas_ztpmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
266
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
267
const
int
N,
const
void
*Ap,
void
*X,
const
int
incX);
268
void
cblas_ztrsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
269
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
270
const
int
N,
const
void
*
A
,
const
int
lda,
void
*X,
271
const
int
incX);
272
void
cblas_ztbsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
273
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
274
const
int
N,
const
int
K,
const
void
*
A
,
const
int
lda,
275
void
*X,
const
int
incX);
276
void
cblas_ztpsv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
277
const
enum
CBLAS_TRANSPOSE
TransA,
const
enum
CBLAS_DIAG
Diag,
278
const
int
N,
const
void
*Ap,
void
*X,
const
int
incX);
279
280
281
/*
282
* Routines with S and D prefixes only
283
*/
284
void
cblas_ssymv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
285
const
int
N,
const
float
alpha,
const
float
*
A
,
286
const
int
lda,
const
float
*X,
const
int
incX,
287
const
float
beta,
float
*Y,
const
int
incY);
288
void
cblas_ssbmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
289
const
int
N,
const
int
K,
const
float
alpha,
const
float
*
A
,
290
const
int
lda,
const
float
*X,
const
int
incX,
291
const
float
beta,
float
*Y,
const
int
incY);
292
void
cblas_sspmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
293
const
int
N,
const
float
alpha,
const
float
*Ap,
294
const
float
*X,
const
int
incX,
295
const
float
beta,
float
*Y,
const
int
incY);
296
void
cblas_sger
(
const
enum
CBLAS_ORDER
order,
const
int
M,
const
int
N,
297
const
float
alpha,
const
float
*X,
const
int
incX,
298
const
float
*Y,
const
int
incY,
float
*
A
,
const
int
lda);
299
void
cblas_ssyr
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
300
const
int
N,
const
float
alpha,
const
float
*X,
301
const
int
incX,
float
*
A
,
const
int
lda);
302
void
cblas_sspr
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
303
const
int
N,
const
float
alpha,
const
float
*X,
304
const
int
incX,
float
*Ap);
305
void
cblas_ssyr2
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
306
const
int
N,
const
float
alpha,
const
float
*X,
307
const
int
incX,
const
float
*Y,
const
int
incY,
float
*
A
,
308
const
int
lda);
309
void
cblas_sspr2
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
310
const
int
N,
const
float
alpha,
const
float
*X,
311
const
int
incX,
const
float
*Y,
const
int
incY,
float
*
A
);
312
313
void
cblas_dsymv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
314
const
int
N,
const
double
alpha,
const
double
*
A
,
315
const
int
lda,
const
double
*X,
const
int
incX,
316
const
double
beta,
double
*Y,
const
int
incY);
317
void
cblas_dsbmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
318
const
int
N,
const
int
K,
const
double
alpha,
const
double
*
A
,
319
const
int
lda,
const
double
*X,
const
int
incX,
320
const
double
beta,
double
*Y,
const
int
incY);
321
void
cblas_dspmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
322
const
int
N,
const
double
alpha,
const
double
*Ap,
323
const
double
*X,
const
int
incX,
324
const
double
beta,
double
*Y,
const
int
incY);
325
void
cblas_dger
(
const
enum
CBLAS_ORDER
order,
const
int
M,
const
int
N,
326
const
double
alpha,
const
double
*X,
const
int
incX,
327
const
double
*Y,
const
int
incY,
double
*
A
,
const
int
lda);
328
void
cblas_dsyr
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
329
const
int
N,
const
double
alpha,
const
double
*X,
330
const
int
incX,
double
*
A
,
const
int
lda);
331
void
cblas_dspr
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
332
const
int
N,
const
double
alpha,
const
double
*X,
333
const
int
incX,
double
*Ap);
334
void
cblas_dsyr2
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
335
const
int
N,
const
double
alpha,
const
double
*X,
336
const
int
incX,
const
double
*Y,
const
int
incY,
double
*
A
,
337
const
int
lda);
338
void
cblas_dspr2
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
339
const
int
N,
const
double
alpha,
const
double
*X,
340
const
int
incX,
const
double
*Y,
const
int
incY,
double
*
A
);
341
342
343
/*
344
* Routines with C and Z prefixes only
345
*/
346
void
cblas_chemv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
347
const
int
N,
const
void
*alpha,
const
void
*
A
,
348
const
int
lda,
const
void
*X,
const
int
incX,
349
const
void
*beta,
void
*Y,
const
int
incY);
350
void
cblas_chbmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
351
const
int
N,
const
int
K,
const
void
*alpha,
const
void
*
A
,
352
const
int
lda,
const
void
*X,
const
int
incX,
353
const
void
*beta,
void
*Y,
const
int
incY);
354
void
cblas_chpmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
355
const
int
N,
const
void
*alpha,
const
void
*Ap,
356
const
void
*X,
const
int
incX,
357
const
void
*beta,
void
*Y,
const
int
incY);
358
void
cblas_cgeru
(
const
enum
CBLAS_ORDER
order,
const
int
M,
const
int
N,
359
const
void
*alpha,
const
void
*X,
const
int
incX,
360
const
void
*Y,
const
int
incY,
void
*
A
,
const
int
lda);
361
void
cblas_cgerc
(
const
enum
CBLAS_ORDER
order,
const
int
M,
const
int
N,
362
const
void
*alpha,
const
void
*X,
const
int
incX,
363
const
void
*Y,
const
int
incY,
void
*
A
,
const
int
lda);
364
void
cblas_cher
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
365
const
int
N,
const
float
alpha,
const
void
*X,
const
int
incX,
366
void
*
A
,
const
int
lda);
367
void
cblas_chpr
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
368
const
int
N,
const
float
alpha,
const
void
*X,
369
const
int
incX,
void
*
A
);
370
void
cblas_cher2
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
const
int
N,
371
const
void
*alpha,
const
void
*X,
const
int
incX,
372
const
void
*Y,
const
int
incY,
void
*
A
,
const
int
lda);
373
void
cblas_chpr2
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
const
int
N,
374
const
void
*alpha,
const
void
*X,
const
int
incX,
375
const
void
*Y,
const
int
incY,
void
*Ap);
376
377
void
cblas_zhemv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
378
const
int
N,
const
void
*alpha,
const
void
*
A
,
379
const
int
lda,
const
void
*X,
const
int
incX,
380
const
void
*beta,
void
*Y,
const
int
incY);
381
void
cblas_zhbmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
382
const
int
N,
const
int
K,
const
void
*alpha,
const
void
*
A
,
383
const
int
lda,
const
void
*X,
const
int
incX,
384
const
void
*beta,
void
*Y,
const
int
incY);
385
void
cblas_zhpmv
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
386
const
int
N,
const
void
*alpha,
const
void
*Ap,
387
const
void
*X,
const
int
incX,
388
const
void
*beta,
void
*Y,
const
int
incY);
389
void
cblas_zgeru
(
const
enum
CBLAS_ORDER
order,
const
int
M,
const
int
N,
390
const
void
*alpha,
const
void
*X,
const
int
incX,
391
const
void
*Y,
const
int
incY,
void
*
A
,
const
int
lda);
392
void
cblas_zgerc
(
const
enum
CBLAS_ORDER
order,
const
int
M,
const
int
N,
393
const
void
*alpha,
const
void
*X,
const
int
incX,
394
const
void
*Y,
const
int
incY,
void
*
A
,
const
int
lda);
395
void
cblas_zher
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
396
const
int
N,
const
double
alpha,
const
void
*X,
const
int
incX,
397
void
*
A
,
const
int
lda);
398
void
cblas_zhpr
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
399
const
int
N,
const
double
alpha,
const
void
*X,
400
const
int
incX,
void
*
A
);
401
void
cblas_zher2
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
const
int
N,
402
const
void
*alpha,
const
void
*X,
const
int
incX,
403
const
void
*Y,
const
int
incY,
void
*
A
,
const
int
lda);
404
void
cblas_zhpr2
(
const
enum
CBLAS_ORDER
order,
const
enum
CBLAS_UPLO
Uplo,
const
int
N,
405
const
void
*alpha,
const
void
*X,
const
int
incX,
406
const
void
*Y,
const
int
incY,
void
*Ap);
407
408
/*
409
* ===========================================================================
410
* Prototypes for level 3 BLAS
411
* ===========================================================================
412
*/
413
414
/*
415
* Routines with standard 4 prefixes (S, D, C, Z)
416
*/
417
void
cblas_sgemm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_TRANSPOSE
TransA,
418
const
enum
CBLAS_TRANSPOSE
TransB,
const
int
M,
const
int
N,
419
const
int
K,
const
float
alpha,
const
float
*
A
,
420
const
int
lda,
const
float
*
B
,
const
int
ldb,
421
const
float
beta,
float
*
C
,
const
int
ldc);
422
void
cblas_ssymm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
423
const
enum
CBLAS_UPLO
Uplo,
const
int
M,
const
int
N,
424
const
float
alpha,
const
float
*
A
,
const
int
lda,
425
const
float
*
B
,
const
int
ldb,
const
float
beta,
426
float
*
C
,
const
int
ldc);
427
void
cblas_ssyrk
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
428
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
429
const
float
alpha,
const
float
*
A
,
const
int
lda,
430
const
float
beta,
float
*
C
,
const
int
ldc);
431
void
cblas_ssyr2k
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
432
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
433
const
float
alpha,
const
float
*
A
,
const
int
lda,
434
const
float
*
B
,
const
int
ldb,
const
float
beta,
435
float
*
C
,
const
int
ldc);
436
void
cblas_strmm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
437
const
enum
CBLAS_UPLO
Uplo,
const
enum
CBLAS_TRANSPOSE
TransA,
438
const
enum
CBLAS_DIAG
Diag,
const
int
M,
const
int
N,
439
const
float
alpha,
const
float
*
A
,
const
int
lda,
440
float
*
B
,
const
int
ldb);
441
void
cblas_strsm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
442
const
enum
CBLAS_UPLO
Uplo,
const
enum
CBLAS_TRANSPOSE
TransA,
443
const
enum
CBLAS_DIAG
Diag,
const
int
M,
const
int
N,
444
const
float
alpha,
const
float
*
A
,
const
int
lda,
445
float
*
B
,
const
int
ldb);
446
447
void
cblas_dgemm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_TRANSPOSE
TransA,
448
const
enum
CBLAS_TRANSPOSE
TransB,
const
int
M,
const
int
N,
449
const
int
K,
const
double
alpha,
const
double
*
A
,
450
const
int
lda,
const
double
*
B
,
const
int
ldb,
451
const
double
beta,
double
*
C
,
const
int
ldc);
452
void
cblas_dsymm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
453
const
enum
CBLAS_UPLO
Uplo,
const
int
M,
const
int
N,
454
const
double
alpha,
const
double
*
A
,
const
int
lda,
455
const
double
*
B
,
const
int
ldb,
const
double
beta,
456
double
*
C
,
const
int
ldc);
457
void
cblas_dsyrk
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
458
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
459
const
double
alpha,
const
double
*
A
,
const
int
lda,
460
const
double
beta,
double
*
C
,
const
int
ldc);
461
void
cblas_dsyr2k
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
462
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
463
const
double
alpha,
const
double
*
A
,
const
int
lda,
464
const
double
*
B
,
const
int
ldb,
const
double
beta,
465
double
*
C
,
const
int
ldc);
466
void
cblas_dtrmm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
467
const
enum
CBLAS_UPLO
Uplo,
const
enum
CBLAS_TRANSPOSE
TransA,
468
const
enum
CBLAS_DIAG
Diag,
const
int
M,
const
int
N,
469
const
double
alpha,
const
double
*
A
,
const
int
lda,
470
double
*
B
,
const
int
ldb);
471
void
cblas_dtrsm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
472
const
enum
CBLAS_UPLO
Uplo,
const
enum
CBLAS_TRANSPOSE
TransA,
473
const
enum
CBLAS_DIAG
Diag,
const
int
M,
const
int
N,
474
const
double
alpha,
const
double
*
A
,
const
int
lda,
475
double
*
B
,
const
int
ldb);
476
477
void
cblas_cgemm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_TRANSPOSE
TransA,
478
const
enum
CBLAS_TRANSPOSE
TransB,
const
int
M,
const
int
N,
479
const
int
K,
const
void
*alpha,
const
void
*
A
,
480
const
int
lda,
const
void
*
B
,
const
int
ldb,
481
const
void
*beta,
void
*
C
,
const
int
ldc);
482
void
cblas_csymm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
483
const
enum
CBLAS_UPLO
Uplo,
const
int
M,
const
int
N,
484
const
void
*alpha,
const
void
*
A
,
const
int
lda,
485
const
void
*
B
,
const
int
ldb,
const
void
*beta,
486
void
*
C
,
const
int
ldc);
487
void
cblas_csyrk
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
488
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
489
const
void
*alpha,
const
void
*
A
,
const
int
lda,
490
const
void
*beta,
void
*
C
,
const
int
ldc);
491
void
cblas_csyr2k
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
492
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
493
const
void
*alpha,
const
void
*
A
,
const
int
lda,
494
const
void
*
B
,
const
int
ldb,
const
void
*beta,
495
void
*
C
,
const
int
ldc);
496
void
cblas_ctrmm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
497
const
enum
CBLAS_UPLO
Uplo,
const
enum
CBLAS_TRANSPOSE
TransA,
498
const
enum
CBLAS_DIAG
Diag,
const
int
M,
const
int
N,
499
const
void
*alpha,
const
void
*
A
,
const
int
lda,
500
void
*
B
,
const
int
ldb);
501
void
cblas_ctrsm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
502
const
enum
CBLAS_UPLO
Uplo,
const
enum
CBLAS_TRANSPOSE
TransA,
503
const
enum
CBLAS_DIAG
Diag,
const
int
M,
const
int
N,
504
const
void
*alpha,
const
void
*
A
,
const
int
lda,
505
void
*
B
,
const
int
ldb);
506
507
void
cblas_zgemm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_TRANSPOSE
TransA,
508
const
enum
CBLAS_TRANSPOSE
TransB,
const
int
M,
const
int
N,
509
const
int
K,
const
void
*alpha,
const
void
*
A
,
510
const
int
lda,
const
void
*
B
,
const
int
ldb,
511
const
void
*beta,
void
*
C
,
const
int
ldc);
512
void
cblas_zsymm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
513
const
enum
CBLAS_UPLO
Uplo,
const
int
M,
const
int
N,
514
const
void
*alpha,
const
void
*
A
,
const
int
lda,
515
const
void
*
B
,
const
int
ldb,
const
void
*beta,
516
void
*
C
,
const
int
ldc);
517
void
cblas_zsyrk
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
518
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
519
const
void
*alpha,
const
void
*
A
,
const
int
lda,
520
const
void
*beta,
void
*
C
,
const
int
ldc);
521
void
cblas_zsyr2k
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
522
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
523
const
void
*alpha,
const
void
*
A
,
const
int
lda,
524
const
void
*
B
,
const
int
ldb,
const
void
*beta,
525
void
*
C
,
const
int
ldc);
526
void
cblas_ztrmm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
527
const
enum
CBLAS_UPLO
Uplo,
const
enum
CBLAS_TRANSPOSE
TransA,
528
const
enum
CBLAS_DIAG
Diag,
const
int
M,
const
int
N,
529
const
void
*alpha,
const
void
*
A
,
const
int
lda,
530
void
*
B
,
const
int
ldb);
531
void
cblas_ztrsm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
532
const
enum
CBLAS_UPLO
Uplo,
const
enum
CBLAS_TRANSPOSE
TransA,
533
const
enum
CBLAS_DIAG
Diag,
const
int
M,
const
int
N,
534
const
void
*alpha,
const
void
*
A
,
const
int
lda,
535
void
*
B
,
const
int
ldb);
536
537
538
/*
539
* Routines with prefixes C and Z only
540
*/
541
void
cblas_chemm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
542
const
enum
CBLAS_UPLO
Uplo,
const
int
M,
const
int
N,
543
const
void
*alpha,
const
void
*
A
,
const
int
lda,
544
const
void
*
B
,
const
int
ldb,
const
void
*beta,
545
void
*
C
,
const
int
ldc);
546
void
cblas_cherk
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
547
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
548
const
float
alpha,
const
void
*
A
,
const
int
lda,
549
const
float
beta,
void
*
C
,
const
int
ldc);
550
void
cblas_cher2k
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
551
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
552
const
void
*alpha,
const
void
*
A
,
const
int
lda,
553
const
void
*
B
,
const
int
ldb,
const
float
beta,
554
void
*
C
,
const
int
ldc);
555
556
void
cblas_zhemm
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_SIDE
Side,
557
const
enum
CBLAS_UPLO
Uplo,
const
int
M,
const
int
N,
558
const
void
*alpha,
const
void
*
A
,
const
int
lda,
559
const
void
*
B
,
const
int
ldb,
const
void
*beta,
560
void
*
C
,
const
int
ldc);
561
void
cblas_zherk
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
562
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
563
const
double
alpha,
const
void
*
A
,
const
int
lda,
564
const
double
beta,
void
*
C
,
const
int
ldc);
565
void
cblas_zher2k
(
const
enum
CBLAS_ORDER
Order,
const
enum
CBLAS_UPLO
Uplo,
566
const
enum
CBLAS_TRANSPOSE
Trans,
const
int
N,
const
int
K,
567
const
void
*alpha,
const
void
*
A
,
const
int
lda,
568
const
void
*
B
,
const
int
ldb,
const
double
beta,
569
void
*
C
,
const
int
ldc);
570
571
void
cblas_xerbla
(
int
p,
const
char
*rout,
const
char
*form, ...);
572
573
574
#ifdef __cplusplus
575
}
576
#endif
577
578
579
#endif
plasma_2.4.5
include
cblas.h
Generated on Mon Jul 9 2012 12:45:02 for PLASMA by
1.8.1