clBLAS  2.0
clBLAS.h
1 /* ************************************************************************
2  * Copyright 2013 Advanced Micro Devices, Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  * ************************************************************************/
16 
17 
18 
19 #ifndef CLBLAS_H_
20 #define CLBLAS_H_
21 
32 #if defined(__APPLE__) || defined(__MACOSX)
33 #include <OpenCL/cl.h>
34 #else
35 #include <CL/cl.h>
36 #endif
37 
38 #include <clBLAS-complex.h>
39 
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
43 
75 
76 
78 typedef enum clblasOrder_ {
79  clblasRowMajor,
80  clblasColumnMajor
81 } clblasOrder;
82 
84 typedef enum clblasTranspose_ {
85  clblasNoTrans,
86  clblasTrans,
87  clblasConjTrans
89 } clblasTranspose;
90 
94 typedef enum clblasUplo_ {
95  clblasUpper,
96  clblasLower
97 } clblasUplo;
98 
102 typedef enum clblasDiag_ {
103  clblasUnit,
104  clblasNonUnit
105 } clblasDiag;
106 
108 typedef enum clblasSide_ {
109  clblasLeft,
111  clblasRight
113 } clblasSide;
114 
123 typedef enum clblasStatus_ {
124  clblasSuccess = CL_SUCCESS,
125  clblasInvalidValue = CL_INVALID_VALUE,
126  clblasInvalidCommandQueue = CL_INVALID_COMMAND_QUEUE,
127  clblasInvalidContext = CL_INVALID_CONTEXT,
128  clblasInvalidMemObject = CL_INVALID_MEM_OBJECT,
129  clblasInvalidDevice = CL_INVALID_DEVICE,
130  clblasInvalidEventWaitList = CL_INVALID_EVENT_WAIT_LIST,
131  clblasOutOfResources = CL_OUT_OF_RESOURCES,
132  clblasOutOfHostMemory = CL_OUT_OF_HOST_MEMORY,
133  clblasInvalidOperation = CL_INVALID_OPERATION,
134  clblasCompilerNotAvailable = CL_COMPILER_NOT_AVAILABLE,
135  clblasBuildProgramFailure = CL_BUILD_PROGRAM_FAILURE,
136  /* Extended error codes */
137  clblasNotImplemented = -1024,
138  clblasNotInitialized,
139  clblasInvalidMatA,
140  clblasInvalidMatB,
141  clblasInvalidMatC,
142  clblasInvalidVecX,
143  clblasInvalidVecY,
144  clblasInvalidDim,
145  clblasInvalidLeadDimA,
146  clblasInvalidLeadDimB,
147  clblasInvalidLeadDimC,
148  clblasInvalidIncX,
149  clblasInvalidIncY,
150  clblasInsufficientMemMatA,
151  clblasInsufficientMemMatB,
152  clblasInsufficientMemMatC,
153  clblasInsufficientMemVecX,
154  clblasInsufficientMemVecY
155 } clblasStatus;
156 
157 
164 
176 clblasStatus
177 clblasGetVersion(cl_uint* major, cl_uint* minor, cl_uint* patch);
178 
185 
200 clblasStatus
201 clblasSetup(void);
202 
212 void
213 clblasTeardown(void);
214 
224 
231 
276 clblasStatus
278  size_t N,
279  cl_mem X,
280  size_t offx,
281  int incx,
282  cl_mem Y,
283  size_t offy,
284  int incy,
285  cl_uint numCommandQueues,
286  cl_command_queue *commandQueues,
287  cl_uint numEventsInWaitList,
288  const cl_event *eventWaitList,
289  cl_event *events);
290 
325 clblasStatus
327  size_t N,
328  cl_mem X,
329  size_t offx,
330  int incx,
331  cl_mem Y,
332  size_t offy,
333  int incy,
334  cl_uint numCommandQueues,
335  cl_command_queue *commandQueues,
336  cl_uint numEventsInWaitList,
337  const cl_event *eventWaitList,
338  cl_event *events);
339 
367 clblasStatus
369  size_t N,
370  cl_mem X,
371  size_t offx,
372  int incx,
373  cl_mem Y,
374  size_t offy,
375  int incy,
376  cl_uint numCommandQueues,
377  cl_command_queue *commandQueues,
378  cl_uint numEventsInWaitList,
379  const cl_event *eventWaitList,
380  cl_event *events);
381 
409 clblasStatus
411  size_t N,
412  cl_mem X,
413  size_t offx,
414  int incx,
415  cl_mem Y,
416  size_t offy,
417  int incy,
418  cl_uint numCommandQueues,
419  cl_command_queue *commandQueues,
420  cl_uint numEventsInWaitList,
421  const cl_event *eventWaitList,
422  cl_event *events);
423 
432 
475 clblasStatus
477  size_t N,
478  cl_float alpha,
479  cl_mem X,
480  size_t offx,
481  int incx,
482  cl_uint numCommandQueues,
483  cl_command_queue *commandQueues,
484  cl_uint numEventsInWaitList,
485  const cl_event *eventWaitList,
486  cl_event *events);
519 clblasStatus
521  size_t N,
522  cl_double alpha,
523  cl_mem X,
524  size_t offx,
525  int incx,
526  cl_uint numCommandQueues,
527  cl_command_queue *commandQueues,
528  cl_uint numEventsInWaitList,
529  const cl_event *eventWaitList,
530  cl_event *events);
531 
557 clblasStatus
559  size_t N,
560  cl_float2 alpha,
561  cl_mem X,
562  size_t offx,
563  int incx,
564  cl_uint numCommandQueues,
565  cl_command_queue *commandQueues,
566  cl_uint numEventsInWaitList,
567  const cl_event *eventWaitList,
568  cl_event *events);
569 
595 clblasStatus
597  size_t N,
598  cl_double2 alpha,
599  cl_mem X,
600  size_t offx,
601  int incx,
602  cl_uint numCommandQueues,
603  cl_command_queue *commandQueues,
604  cl_uint numEventsInWaitList,
605  const cl_event *eventWaitList,
606  cl_event *events);
607 
615 
658 clblasStatus
660  size_t N,
661  cl_float alpha,
662  cl_mem X,
663  size_t offx,
664  int incx,
665  cl_uint numCommandQueues,
666  cl_command_queue *commandQueues,
667  cl_uint numEventsInWaitList,
668  const cl_event *eventWaitList,
669  cl_event *events);
702 clblasStatus
704  size_t N,
705  cl_double alpha,
706  cl_mem X,
707  size_t offx,
708  int incx,
709  cl_uint numCommandQueues,
710  cl_command_queue *commandQueues,
711  cl_uint numEventsInWaitList,
712  const cl_event *eventWaitList,
713  cl_event *events);
714 
723 
769 clblasStatus
771  size_t N,
772  const cl_mem X,
773  size_t offx,
774  int incx,
775  cl_mem Y,
776  size_t offy,
777  int incy,
778  cl_uint numCommandQueues,
779  cl_command_queue *commandQueues,
780  cl_uint numEventsInWaitList,
781  const cl_event *eventWaitList,
782  cl_event *events);
783 
819 clblasStatus
821  size_t N,
822  const cl_mem X,
823  size_t offx,
824  int incx,
825  cl_mem Y,
826  size_t offy,
827  int incy,
828  cl_uint numCommandQueues,
829  cl_command_queue *commandQueues,
830  cl_uint numEventsInWaitList,
831  const cl_event *eventWaitList,
832  cl_event *events);
833 
862 clblasStatus
864  size_t N,
865  const cl_mem X,
866  size_t offx,
867  int incx,
868  cl_mem Y,
869  size_t offy,
870  int incy,
871  cl_uint numCommandQueues,
872  cl_command_queue *commandQueues,
873  cl_uint numEventsInWaitList,
874  const cl_event *eventWaitList,
875  cl_event *events);
876 
905 clblasStatus
907  size_t N,
908  const cl_mem X,
909  size_t offx,
910  int incx,
911  cl_mem Y,
912  size_t offy,
913  int incy,
914  cl_uint numCommandQueues,
915  cl_command_queue *commandQueues,
916  cl_uint numEventsInWaitList,
917  const cl_event *eventWaitList,
918  cl_event *events);
919 
927 
974 clblasStatus
976  size_t N,
977  cl_float alpha,
978  const cl_mem X,
979  size_t offx,
980  int incx,
981  cl_mem Y,
982  size_t offy,
983  int incy,
984  cl_uint numCommandQueues,
985  cl_command_queue *commandQueues,
986  cl_uint numEventsInWaitList,
987  const cl_event *eventWaitList,
988  cl_event *events);
989 
1026 clblasStatus
1027 clblasDaxpy(
1028  size_t N,
1029  cl_double alpha,
1030  const cl_mem X,
1031  size_t offx,
1032  int incx,
1033  cl_mem Y,
1034  size_t offy,
1035  int incy,
1036  cl_uint numCommandQueues,
1037  cl_command_queue *commandQueues,
1038  cl_uint numEventsInWaitList,
1039  const cl_event *eventWaitList,
1040  cl_event *events);
1041 
1071 clblasStatus
1072 clblasCaxpy(
1073  size_t N,
1074  cl_float2 alpha,
1075  const cl_mem X,
1076  size_t offx,
1077  int incx,
1078  cl_mem Y,
1079  size_t offy,
1080  int incy,
1081  cl_uint numCommandQueues,
1082  cl_command_queue *commandQueues,
1083  cl_uint numEventsInWaitList,
1084  const cl_event *eventWaitList,
1085  cl_event *events);
1086 
1116 clblasStatus
1117 clblasZaxpy(
1118  size_t N,
1119  cl_double2 alpha,
1120  const cl_mem X,
1121  size_t offx,
1122  int incx,
1123  cl_mem Y,
1124  size_t offy,
1125  int incy,
1126  cl_uint numCommandQueues,
1127  cl_command_queue *commandQueues,
1128  cl_uint numEventsInWaitList,
1129  const cl_event *eventWaitList,
1130  cl_event *events);
1131 
1140 
1188 clblasStatus
1189 clblasSdot(
1190  size_t N,
1191  cl_mem dotProduct,
1192  size_t offDP,
1193  const cl_mem X,
1194  size_t offx,
1195  int incx,
1196  const cl_mem Y,
1197  size_t offy,
1198  int incy,
1199  cl_mem scratchBuff,
1200  cl_uint numCommandQueues,
1201  cl_command_queue *commandQueues,
1202  cl_uint numEventsInWaitList,
1203  const cl_event *eventWaitList,
1204  cl_event *events);
1205 
1243 clblasStatus
1244 clblasDdot(
1245  size_t N,
1246  cl_mem dotProduct,
1247  size_t offDP,
1248  const cl_mem X,
1249  size_t offx,
1250  int incx,
1251  const cl_mem Y,
1252  size_t offy,
1253  int incy,
1254  cl_mem scratchBuff,
1255  cl_uint numCommandQueues,
1256  cl_command_queue *commandQueues,
1257  cl_uint numEventsInWaitList,
1258  const cl_event *eventWaitList,
1259  cl_event *events);
1260 
1261 
1293 clblasStatus
1294 clblasCdotu(
1295  size_t N,
1296  cl_mem dotProduct,
1297  size_t offDP,
1298  const cl_mem X,
1299  size_t offx,
1300  int incx,
1301  const cl_mem Y,
1302  size_t offy,
1303  int incy,
1304  cl_mem scratchBuff,
1305  cl_uint numCommandQueues,
1306  cl_command_queue *commandQueues,
1307  cl_uint numEventsInWaitList,
1308  const cl_event *eventWaitList,
1309  cl_event *events);
1310 
1311 
1345 clblasStatus
1346 clblasZdotu(
1347  size_t N,
1348  cl_mem dotProduct,
1349  size_t offDP,
1350  const cl_mem X,
1351  size_t offx,
1352  int incx,
1353  const cl_mem Y,
1354  size_t offy,
1355  int incy,
1356  cl_mem scratchBuff,
1357  cl_uint numCommandQueues,
1358  cl_command_queue *commandQueues,
1359  cl_uint numEventsInWaitList,
1360  const cl_event *eventWaitList,
1361  cl_event *events);
1362 
1363 
1395 clblasStatus
1396 clblasCdotc(
1397  size_t N,
1398  cl_mem dotProduct,
1399  size_t offDP,
1400  const cl_mem X,
1401  size_t offx,
1402  int incx,
1403  const cl_mem Y,
1404  size_t offy,
1405  int incy,
1406  cl_mem scratchBuff,
1407  cl_uint numCommandQueues,
1408  cl_command_queue *commandQueues,
1409  cl_uint numEventsInWaitList,
1410  const cl_event *eventWaitList,
1411  cl_event *events);
1412 
1413 
1447 clblasStatus
1448 clblasZdotc(
1449  size_t N,
1450  cl_mem dotProduct,
1451  size_t offDP,
1452  const cl_mem X,
1453  size_t offx,
1454  int incx,
1455  const cl_mem Y,
1456  size_t offy,
1457  int incy,
1458  cl_mem scratchBuff,
1459  cl_uint numCommandQueues,
1460  cl_command_queue *commandQueues,
1461  cl_uint numEventsInWaitList,
1462  const cl_event *eventWaitList,
1463  cl_event *events);
1464 
1473 
1515 clblasStatus
1516 clblasSrotg(
1517  cl_mem SA,
1518  size_t offSA,
1519  cl_mem SB,
1520  size_t offSB,
1521  cl_mem C,
1522  size_t offC,
1523  cl_mem S,
1524  size_t offS,
1525  cl_uint numCommandQueues,
1526  cl_command_queue *commandQueues,
1527  cl_uint numEventsInWaitList,
1528  const cl_event *eventWaitList,
1529  cl_event *events);
1530 
1567 clblasStatus
1568 clblasDrotg(
1569  cl_mem DA,
1570  size_t offDA,
1571  cl_mem DB,
1572  size_t offDB,
1573  cl_mem C,
1574  size_t offC,
1575  cl_mem S,
1576  size_t offS,
1577  cl_uint numCommandQueues,
1578  cl_command_queue *commandQueues,
1579  cl_uint numEventsInWaitList,
1580  const cl_event *eventWaitList,
1581  cl_event *events);
1582 
1612 clblasStatus
1613 clblasCrotg(
1614  cl_mem CA,
1615  size_t offCA,
1616  cl_mem CB,
1617  size_t offCB,
1618  cl_mem C,
1619  size_t offC,
1620  cl_mem S,
1621  size_t offS,
1622  cl_uint numCommandQueues,
1623  cl_command_queue *commandQueues,
1624  cl_uint numEventsInWaitList,
1625  const cl_event *eventWaitList,
1626  cl_event *events);
1627 
1657 clblasStatus
1658 clblasZrotg(
1659  cl_mem CA,
1660  size_t offCA,
1661  cl_mem CB,
1662  size_t offCB,
1663  cl_mem C,
1664  size_t offC,
1665  cl_mem S,
1666  size_t offS,
1667  cl_uint numCommandQueues,
1668  cl_command_queue *commandQueues,
1669  cl_uint numEventsInWaitList,
1670  const cl_event *eventWaitList,
1671  cl_event *events);
1672 
1680 
1731 clblasStatus
1732 clblasSrotmg(
1733  cl_mem SD1,
1734  size_t offSD1,
1735  cl_mem SD2,
1736  size_t offSD2,
1737  cl_mem SX1,
1738  size_t offSX1,
1739  const cl_mem SY1,
1740  size_t offSY1,
1741  cl_mem SPARAM,
1742  size_t offSparam,
1743  cl_uint numCommandQueues,
1744  cl_command_queue *commandQueues,
1745  cl_uint numEventsInWaitList,
1746  const cl_event *eventWaitList,
1747  cl_event *events);
1748 
1794 clblasStatus
1795 clblasDrotmg(
1796  cl_mem DD1,
1797  size_t offDD1,
1798  cl_mem DD2,
1799  size_t offDD2,
1800  cl_mem DX1,
1801  size_t offDX1,
1802  const cl_mem DY1,
1803  size_t offDY1,
1804  cl_mem DPARAM,
1805  size_t offDparam,
1806  cl_uint numCommandQueues,
1807  cl_command_queue *commandQueues,
1808  cl_uint numEventsInWaitList,
1809  const cl_event *eventWaitList,
1810  cl_event *events);
1811 
1820 
1866 clblasStatus
1867 clblasSrot(
1868  size_t N,
1869  cl_mem X,
1870  size_t offx,
1871  int incx,
1872  cl_mem Y,
1873  size_t offy,
1874  int incy,
1875  cl_float C,
1876  cl_float S,
1877  cl_uint numCommandQueues,
1878  cl_command_queue *commandQueues,
1879  cl_uint numEventsInWaitList,
1880  const cl_event *eventWaitList,
1881  cl_event *events);
1882 
1918 clblasStatus
1919 clblasDrot(
1920  size_t N,
1921  cl_mem X,
1922  size_t offx,
1923  int incx,
1924  cl_mem Y,
1925  size_t offy,
1926  int incy,
1927  cl_double C,
1928  cl_double S,
1929  cl_uint numCommandQueues,
1930  cl_command_queue *commandQueues,
1931  cl_uint numEventsInWaitList,
1932  const cl_event *eventWaitList,
1933  cl_event *events);
1934 
1963 clblasStatus
1964 clblasCsrot(
1965  size_t N,
1966  cl_mem X,
1967  size_t offx,
1968  int incx,
1969  cl_mem Y,
1970  size_t offy,
1971  int incy,
1972  cl_float C,
1973  cl_float S,
1974  cl_uint numCommandQueues,
1975  cl_command_queue *commandQueues,
1976  cl_uint numEventsInWaitList,
1977  const cl_event *eventWaitList,
1978  cl_event *events);
1979 
2010 clblasStatus
2011 clblasZdrot(
2012  size_t N,
2013  cl_mem X,
2014  size_t offx,
2015  int incx,
2016  cl_mem Y,
2017  size_t offy,
2018  int incy,
2019  cl_double C,
2020  cl_double S,
2021  cl_uint numCommandQueues,
2022  cl_command_queue *commandQueues,
2023  cl_uint numEventsInWaitList,
2024  const cl_event *eventWaitList,
2025  cl_event *events);
2026 
2034 
2086 clblasStatus
2087 clblasSrotm(
2088  size_t N,
2089  cl_mem X,
2090  size_t offx,
2091  int incx,
2092  cl_mem Y,
2093  size_t offy,
2094  int incy,
2095  const cl_mem SPARAM,
2096  size_t offSparam,
2097  cl_uint numCommandQueues,
2098  cl_command_queue *commandQueues,
2099  cl_uint numEventsInWaitList,
2100  const cl_event *eventWaitList,
2101  cl_event *events);
2102 
2144 clblasStatus
2145 clblasDrotm(
2146  size_t N,
2147  cl_mem X,
2148  size_t offx,
2149  int incx,
2150  cl_mem Y,
2151  size_t offy,
2152  int incy,
2153  const cl_mem DPARAM,
2154  size_t offDparam,
2155  cl_uint numCommandQueues,
2156  cl_command_queue *commandQueues,
2157  cl_uint numEventsInWaitList,
2158  const cl_event *eventWaitList,
2159  cl_event *events);
2160 
2168 
2214 clblasStatus
2215 clblasSnrm2(
2216  size_t N,
2217  cl_mem NRM2,
2218  size_t offNRM2,
2219  const cl_mem X,
2220  size_t offx,
2221  int incx,
2222  cl_mem scratchBuff,
2223  cl_uint numCommandQueues,
2224  cl_command_queue *commandQueues,
2225  cl_uint numEventsInWaitList,
2226  const cl_event *eventWaitList,
2227  cl_event *events);
2228 
2264 clblasStatus
2265 clblasDnrm2(
2266  size_t N,
2267  cl_mem NRM2,
2268  size_t offNRM2,
2269  const cl_mem X,
2270  size_t offx,
2271  int incx,
2272  cl_mem scratchBuff,
2273  cl_uint numCommandQueues,
2274  cl_command_queue *commandQueues,
2275  cl_uint numEventsInWaitList,
2276  const cl_event *eventWaitList,
2277  cl_event *events);
2278 
2308 clblasStatus
2309 clblasScnrm2(
2310  size_t N,
2311  cl_mem NRM2,
2312  size_t offNRM2,
2313  const cl_mem X,
2314  size_t offx,
2315  int incx,
2316  cl_mem scratchBuff,
2317  cl_uint numCommandQueues,
2318  cl_command_queue *commandQueues,
2319  cl_uint numEventsInWaitList,
2320  const cl_event *eventWaitList,
2321  cl_event *events);
2322 
2355 clblasStatus
2356 clblasDznrm2(
2357  size_t N,
2358  cl_mem NRM2,
2359  size_t offNRM2,
2360  const cl_mem X,
2361  size_t offx,
2362  int incx,
2363  cl_mem scratchBuff,
2364  cl_uint numCommandQueues,
2365  cl_command_queue *commandQueues,
2366  cl_uint numEventsInWaitList,
2367  const cl_event *eventWaitList,
2368  cl_event *events);
2369 
2377 
2423 clblasStatus
2424 clblasiSamax(
2425  size_t N,
2426  cl_mem iMax,
2427  size_t offiMax,
2428  const cl_mem X,
2429  size_t offx,
2430  int incx,
2431  cl_mem scratchBuff,
2432  cl_uint numCommandQueues,
2433  cl_command_queue *commandQueues,
2434  cl_uint numEventsInWaitList,
2435  const cl_event *eventWaitList,
2436  cl_event *events);
2473 clblasStatus
2474 clblasiDamax(
2475  size_t N,
2476  cl_mem iMax,
2477  size_t offiMax,
2478  const cl_mem X,
2479  size_t offx,
2480  int incx,
2481  cl_mem scratchBuff,
2482  cl_uint numCommandQueues,
2483  cl_command_queue *commandQueues,
2484  cl_uint numEventsInWaitList,
2485  const cl_event *eventWaitList,
2486  cl_event *events);
2487 
2516 clblasStatus
2517 clblasiCamax(
2518  size_t N,
2519  cl_mem iMax,
2520  size_t offiMax,
2521  const cl_mem X,
2522  size_t offx,
2523  int incx,
2524  cl_mem scratchBuff,
2525  cl_uint numCommandQueues,
2526  cl_command_queue *commandQueues,
2527  cl_uint numEventsInWaitList,
2528  const cl_event *eventWaitList,
2529  cl_event *events);
2530 
2562 clblasStatus
2563 clblasiZamax(
2564  size_t N,
2565  cl_mem iMax,
2566  size_t offiMax,
2567  const cl_mem X,
2568  size_t offx,
2569  int incx,
2570  cl_mem scratchBuff,
2571  cl_uint numCommandQueues,
2572  cl_command_queue *commandQueues,
2573  cl_uint numEventsInWaitList,
2574  const cl_event *eventWaitList,
2575  cl_event *events);
2576 
2584 
2629 clblasStatus
2630 clblasSasum(
2631  size_t N,
2632  cl_mem asum,
2633  size_t offAsum,
2634  const cl_mem X,
2635  size_t offx,
2636  int incx,
2637  cl_mem scratchBuff,
2638  cl_uint numCommandQueues,
2639  cl_command_queue *commandQueues,
2640  cl_uint numEventsInWaitList,
2641  const cl_event *eventWaitList,
2642  cl_event *events);
2643 
2678 clblasStatus
2679 clblasDasum(
2680  size_t N,
2681  cl_mem asum,
2682  size_t offAsum,
2683  const cl_mem X,
2684  size_t offx,
2685  int incx,
2686  cl_mem scratchBuff,
2687  cl_uint numCommandQueues,
2688  cl_command_queue *commandQueues,
2689  cl_uint numEventsInWaitList,
2690  const cl_event *eventWaitList,
2691  cl_event *events);
2692 
2693 
2721 clblasStatus
2722 clblasScasum(
2723  size_t N,
2724  cl_mem asum,
2725  size_t offAsum,
2726  const cl_mem X,
2727  size_t offx,
2728  int incx,
2729  cl_mem scratchBuff,
2730  cl_uint numCommandQueues,
2731  cl_command_queue *commandQueues,
2732  cl_uint numEventsInWaitList,
2733  const cl_event *eventWaitList,
2734  cl_event *events);
2735 
2736 
2766 clblasStatus
2767 clblasDzasum(
2768  size_t N,
2769  cl_mem asum,
2770  size_t offAsum,
2771  const cl_mem X,
2772  size_t offx,
2773  int incx,
2774  cl_mem scratchBuff,
2775  cl_uint numCommandQueues,
2776  cl_command_queue *commandQueues,
2777  cl_uint numEventsInWaitList,
2778  const cl_event *eventWaitList,
2779  cl_event *events);
2780 
2790 
2798 
2844 clblasStatus
2845 clblasSgemv(
2846  clblasOrder order,
2847  clblasTranspose transA,
2848  size_t M,
2849  size_t N,
2850  cl_float alpha,
2851  const cl_mem A,
2852  size_t offA,
2853  size_t lda,
2854  const cl_mem x,
2855  size_t offx,
2856  int incx,
2857  cl_float beta,
2858  cl_mem y,
2859  size_t offy,
2860  int incy,
2861  cl_uint numCommandQueues,
2862  cl_command_queue *commandQueues,
2863  cl_uint numEventsInWaitList,
2864  const cl_event *eventWaitList,
2865  cl_event *events);
2866 
2917 clblasStatus
2918 clblasDgemv(
2919  clblasOrder order,
2920  clblasTranspose transA,
2921  size_t M,
2922  size_t N,
2923  cl_double alpha,
2924  const cl_mem A,
2925  size_t offA,
2926  size_t lda,
2927  const cl_mem x,
2928  size_t offx,
2929  int incx,
2930  cl_double beta,
2931  cl_mem y,
2932  size_t offy,
2933  int incy,
2934  cl_uint numCommandQueues,
2935  cl_command_queue *commandQueues,
2936  cl_uint numEventsInWaitList,
2937  const cl_event *eventWaitList,
2938  cl_event *events);
2939 
2983 clblasStatus
2984 clblasCgemv(
2985  clblasOrder order,
2986  clblasTranspose transA,
2987  size_t M,
2988  size_t N,
2989  FloatComplex alpha,
2990  const cl_mem A,
2991  size_t offA,
2992  size_t lda,
2993  const cl_mem x,
2994  size_t offx,
2995  int incx,
2996  FloatComplex beta,
2997  cl_mem y,
2998  size_t offy,
2999  int incy,
3000  cl_uint numCommandQueues,
3001  cl_command_queue *commandQueues,
3002  cl_uint numEventsInWaitList,
3003  const cl_event *eventWaitList,
3004  cl_event *events);
3005 
3051 clblasStatus
3052 clblasZgemv(
3053  clblasOrder order,
3054  clblasTranspose transA,
3055  size_t M,
3056  size_t N,
3057  DoubleComplex alpha,
3058  const cl_mem A,
3059  size_t offA,
3060  size_t lda,
3061  const cl_mem x,
3062  size_t offx,
3063  int incx,
3064  DoubleComplex beta,
3065  cl_mem y,
3066  size_t offy,
3067  int incy,
3068  cl_uint numCommandQueues,
3069  cl_command_queue *commandQueues,
3070  cl_uint numEventsInWaitList,
3071  const cl_event *eventWaitList,
3072  cl_event *events);
3073 
3082 
3124 clblasStatus
3125 clblasSsymv(
3126  clblasOrder order,
3127  clblasUplo uplo,
3128  size_t N,
3129  cl_float alpha,
3130  const cl_mem A,
3131  size_t offA,
3132  size_t lda,
3133  const cl_mem x,
3134  size_t offx,
3135  int incx,
3136  cl_float beta,
3137  cl_mem y,
3138  size_t offy,
3139  int incy,
3140  cl_uint numCommandQueues,
3141  cl_command_queue *commandQueues,
3142  cl_uint numEventsInWaitList,
3143  const cl_event *eventWaitList,
3144  cl_event *events);
3145 
3194 clblasStatus
3195 clblasDsymv(
3196  clblasOrder order,
3197  clblasUplo uplo,
3198  size_t N,
3199  cl_double alpha,
3200  const cl_mem A,
3201  size_t offA,
3202  size_t lda,
3203  const cl_mem x,
3204  size_t offx,
3205  int incx,
3206  cl_double beta,
3207  cl_mem y,
3208  size_t offy,
3209  int incy,
3210  cl_uint numCommandQueues,
3211  cl_command_queue *commandQueues,
3212  cl_uint numEventsInWaitList,
3213  const cl_event *eventWaitList,
3214  cl_event *events);
3215 
3224 
3280 clblasStatus
3281 clblasChemv(
3282  clblasOrder order,
3283  clblasUplo uplo,
3284  size_t N,
3285  FloatComplex alpha,
3286  const cl_mem A,
3287  size_t offa,
3288  size_t lda,
3289  const cl_mem X,
3290  size_t offx,
3291  int incx,
3292  FloatComplex beta,
3293  cl_mem Y,
3294  size_t offy,
3295  int incy,
3296  cl_uint numCommandQueues,
3297  cl_command_queue *commandQueues,
3298  cl_uint numEventsInWaitList,
3299  const cl_event *eventWaitList,
3300  cl_event *events);
3301 
3341 clblasStatus
3342 clblasZhemv(
3343  clblasOrder order,
3344  clblasUplo uplo,
3345  size_t N,
3346  DoubleComplex alpha,
3347  const cl_mem A,
3348  size_t offa,
3349  size_t lda,
3350  const cl_mem X,
3351  size_t offx,
3352  int incx,
3353  DoubleComplex beta,
3354  cl_mem Y,
3355  size_t offy,
3356  int incy,
3357  cl_uint numCommandQueues,
3358  cl_command_queue *commandQueues,
3359  cl_uint numEventsInWaitList,
3360  const cl_event *eventWaitList,
3361  cl_event *events);
3367 
3368 
3369 
3375 
3427 clblasStatus
3428 clblasStrmv(
3429  clblasOrder order,
3430  clblasUplo uplo,
3431  clblasTranspose trans,
3432  clblasDiag diag,
3433  size_t N,
3434  const cl_mem A,
3435  size_t offa,
3436  size_t lda,
3437  cl_mem X,
3438  size_t offx,
3439  int incx,
3440  cl_mem scratchBuff,
3441  cl_uint numCommandQueues,
3442  cl_command_queue *commandQueues,
3443  cl_uint numEventsInWaitList,
3444  const cl_event *eventWaitList,
3445  cl_event *events);
3446 
3490 clblasStatus
3491 clblasDtrmv(
3492  clblasOrder order,
3493  clblasUplo uplo,
3494  clblasTranspose trans,
3495  clblasDiag diag,
3496  size_t N,
3497  const cl_mem A,
3498  size_t offa,
3499  size_t lda,
3500  cl_mem X,
3501  size_t offx,
3502  int incx,
3503  cl_mem scratchBuff,
3504  cl_uint numCommandQueues,
3505  cl_command_queue *commandQueues,
3506  cl_uint numEventsInWaitList,
3507  const cl_event *eventWaitList,
3508  cl_event *events);
3509 
3543 clblasStatus
3544 clblasCtrmv(
3545  clblasOrder order,
3546  clblasUplo uplo,
3547  clblasTranspose trans,
3548  clblasDiag diag,
3549  size_t N,
3550  const cl_mem A,
3551  size_t offa,
3552  size_t lda,
3553  cl_mem X,
3554  size_t offx,
3555  int incx,
3556  cl_mem scratchBuff,
3557  cl_uint numCommandQueues,
3558  cl_command_queue *commandQueues,
3559  cl_uint numEventsInWaitList,
3560  const cl_event *eventWaitList,
3561  cl_event *events);
3562 
3596 clblasStatus
3597 clblasZtrmv(
3598  clblasOrder order,
3599  clblasUplo uplo,
3600  clblasTranspose trans,
3601  clblasDiag diag,
3602  size_t N,
3603  const cl_mem A,
3604  size_t offa,
3605  size_t lda,
3606  cl_mem X,
3607  size_t offx,
3608  int incx,
3609  cl_mem scratchBuff,
3610  cl_uint numCommandQueues,
3611  cl_command_queue *commandQueues,
3612  cl_uint numEventsInWaitList,
3613  const cl_event *eventWaitList,
3614  cl_event *events);
3615 
3616 
3624 
3673 clblasStatus
3674 clblasStrsv(
3675  clblasOrder order,
3676  clblasUplo uplo,
3677  clblasTranspose trans,
3678  clblasDiag diag,
3679  size_t N,
3680  const cl_mem A,
3681  size_t offa,
3682  size_t lda,
3683  cl_mem X,
3684  size_t offx,
3685  int incx,
3686  cl_uint numCommandQueues,
3687  cl_command_queue *commandQueues,
3688  cl_uint numEventsInWaitList,
3689  const cl_event *eventWaitList,
3690  cl_event *events);
3691 
3733 clblasStatus
3734 clblasDtrsv(
3735  clblasOrder order,
3736  clblasUplo uplo,
3737  clblasTranspose trans,
3738  clblasDiag diag,
3739  size_t N,
3740  const cl_mem A,
3741  size_t offa,
3742  size_t lda,
3743  cl_mem X,
3744  size_t offx,
3745  int incx,
3746  cl_uint numCommandQueues,
3747  cl_command_queue *commandQueues,
3748  cl_uint numEventsInWaitList,
3749  const cl_event *eventWaitList,
3750  cl_event *events);
3751 
3752 
3784 clblasStatus
3785 clblasCtrsv(
3786  clblasOrder order,
3787  clblasUplo uplo,
3788  clblasTranspose trans,
3789  clblasDiag diag,
3790  size_t N,
3791  const cl_mem A,
3792  size_t offa,
3793  size_t lda,
3794  cl_mem X,
3795  size_t offx,
3796  int incx,
3797  cl_uint numCommandQueues,
3798  cl_command_queue *commandQueues,
3799  cl_uint numEventsInWaitList,
3800  const cl_event *eventWaitList,
3801  cl_event *events);
3802 
3803 
3835 clblasStatus
3836 clblasZtrsv(
3837  clblasOrder order,
3838  clblasUplo uplo,
3839  clblasTranspose trans,
3840  clblasDiag diag,
3841  size_t N,
3842  const cl_mem A,
3843  size_t offa,
3844  size_t lda,
3845  cl_mem X,
3846  size_t offx,
3847  int incx,
3848  cl_uint numCommandQueues,
3849  cl_command_queue *commandQueues,
3850  cl_uint numEventsInWaitList,
3851  const cl_event *eventWaitList,
3852  cl_event *events);
3853 
3861 
3918 clblasStatus
3919 clblasSger(
3920  clblasOrder order,
3921  size_t M,
3922  size_t N,
3923  cl_float alpha,
3924  const cl_mem X,
3925  size_t offx,
3926  int incx,
3927  const cl_mem Y,
3928  size_t offy,
3929  int incy,
3930  cl_mem A,
3931  size_t offa,
3932  size_t lda,
3933  cl_uint numCommandQueues,
3934  cl_command_queue *commandQueues,
3935  cl_uint numEventsInWaitList,
3936  const cl_event *eventWaitList,
3937  cl_event *events);
3938 
3985 clblasStatus
3986 clblasDger(
3987  clblasOrder order,
3988  size_t M,
3989  size_t N,
3990  cl_double alpha,
3991  const cl_mem X,
3992  size_t offx,
3993  int incx,
3994  const cl_mem Y,
3995  size_t offy,
3996  int incy,
3997  cl_mem A,
3998  size_t offa,
3999  size_t lda,
4000  cl_uint numCommandQueues,
4001  cl_command_queue *commandQueues,
4002  cl_uint numEventsInWaitList,
4003  const cl_event *eventWaitList,
4004  cl_event *events);
4012 
4069 clblasStatus
4070 clblasCgeru(
4071  clblasOrder order,
4072  size_t M,
4073  size_t N,
4074  cl_float2 alpha,
4075  const cl_mem X,
4076  size_t offx,
4077  int incx,
4078  const cl_mem Y,
4079  size_t offy,
4080  int incy,
4081  cl_mem A ,
4082  size_t offa,
4083  size_t lda,
4084  cl_uint numCommandQueues,
4085  cl_command_queue *commandQueues,
4086  cl_uint numEventsInWaitList,
4087  const cl_event *eventWaitList,
4088  cl_event *events);
4089 
4130 clblasStatus
4131 clblasZgeru(
4132  clblasOrder order,
4133  size_t M,
4134  size_t N,
4135  cl_double2 alpha,
4136  const cl_mem X,
4137  size_t offx,
4138  int incx,
4139  const cl_mem Y,
4140  size_t offy,
4141  int incy,
4142  cl_mem A,
4143  size_t offa,
4144  size_t lda,
4145  cl_uint numCommandQueues,
4146  cl_command_queue *commandQueues,
4147  cl_uint numEventsInWaitList,
4148  const cl_event *eventWaitList,
4149  cl_event *events);
4157 
4215 clblasStatus
4216 clblasCgerc(
4217  clblasOrder order,
4218  size_t M,
4219  size_t N,
4220  cl_float2 alpha,
4221  const cl_mem X,
4222  size_t offx,
4223  int incx,
4224  const cl_mem Y,
4225  size_t offy,
4226  int incy,
4227  cl_mem A ,
4228  size_t offa,
4229  size_t lda,
4230  cl_uint numCommandQueues,
4231  cl_command_queue *commandQueues,
4232  cl_uint numEventsInWaitList,
4233  const cl_event *eventWaitList,
4234  cl_event *events);
4235 
4276 clblasStatus
4277 clblasZgerc(
4278  clblasOrder order,
4279  size_t M,
4280  size_t N,
4281  cl_double2 alpha,
4282  const cl_mem X,
4283  size_t offx,
4284  int incx,
4285  const cl_mem Y,
4286  size_t offy,
4287  int incy,
4288  cl_mem A,
4289  size_t offa,
4290  size_t lda,
4291  cl_uint numCommandQueues,
4292  cl_command_queue *commandQueues,
4293  cl_uint numEventsInWaitList,
4294  const cl_event *eventWaitList,
4295  cl_event *events);
4296 
4297 
4357 clblasStatus
4358 clblasSsyr(
4359  clblasOrder order,
4360  clblasUplo uplo,
4361  size_t N,
4362  cl_float alpha,
4363  const cl_mem X,
4364  size_t offx,
4365  int incx,
4366  cl_mem A,
4367  size_t offa,
4368  size_t lda,
4369  cl_uint numCommandQueues,
4370  cl_command_queue* commandQueues,
4371  cl_uint numEventsInWaitList,
4372  const cl_event* eventWaitList,
4373  cl_event* events);
4374 
4410 clblasStatus
4411 clblasDsyr(
4412  clblasOrder order,
4413  clblasUplo uplo,
4414  size_t N,
4415  cl_double alpha,
4416  const cl_mem X,
4417  size_t offx,
4418  int incx,
4419  cl_mem A,
4420  size_t offa,
4421  size_t lda,
4422  cl_uint numCommandQueues,
4423  cl_command_queue* commandQueues,
4424  cl_uint numEventsInWaitList,
4425  const cl_event* eventWaitList,
4426  cl_event* events);
4487 clblasStatus
4488 clblasCher(
4489  clblasOrder order,
4490  clblasUplo uplo,
4491  size_t N,
4492  cl_float alpha,
4493  const cl_mem X,
4494  size_t offx,
4495  int incx,
4496  cl_mem A,
4497  size_t offa,
4498  size_t lda,
4499  cl_uint numCommandQueues,
4500  cl_command_queue* commandQueues,
4501  cl_uint numEventsInWaitList,
4502  const cl_event* eventWaitList,
4503  cl_event* events);
4543 clblasStatus
4544 clblasZher(
4545  clblasOrder order,
4546  clblasUplo uplo,
4547  size_t N,
4548  cl_double alpha,
4549  const cl_mem X,
4550  size_t offx,
4551  int incx,
4552  cl_mem A,
4553  size_t offa,
4554  size_t lda,
4555  cl_uint numCommandQueues,
4556  cl_command_queue* commandQueues,
4557  cl_uint numEventsInWaitList,
4558  const cl_event* eventWaitList,
4559  cl_event* events);
4623 clblasStatus
4624 clblasSsyr2(
4625  clblasOrder order,
4626  clblasUplo uplo,
4627  size_t N,
4628  cl_float alpha,
4629  const cl_mem X,
4630  size_t offx,
4631  int incx,
4632  const cl_mem Y,
4633  size_t offy,
4634  int incy,
4635  cl_mem A,
4636  size_t offa,
4637  size_t lda,
4638  cl_uint numCommandQueues,
4639  cl_command_queue* commandQueues,
4640  cl_uint numEventsInWaitList,
4641  const cl_event* eventWaitList,
4642  cl_event* events);
4643 
4696 clblasStatus
4697 clblasDsyr2(
4698  clblasOrder order,
4699  clblasUplo uplo,
4700  size_t N,
4701  cl_double alpha,
4702  const cl_mem X,
4703  size_t offx,
4704  int incx,
4705  const cl_mem Y,
4706  size_t offy,
4707  int incy,
4708  cl_mem A,
4709  size_t offa,
4710  size_t lda,
4711  cl_uint numCommandQueues,
4712  cl_command_queue* commandQueues,
4713  cl_uint numEventsInWaitList,
4714  const cl_event* eventWaitList,
4715  cl_event* events);
4716 
4779 clblasStatus
4780 clblasCher2(
4781  clblasOrder order,
4782  clblasUplo uplo,
4783  size_t N,
4784  cl_float2 alpha,
4785  const cl_mem X,
4786  size_t offx,
4787  int incx,
4788  const cl_mem Y,
4789  size_t offy,
4790  int incy,
4791  cl_mem A,
4792  size_t offa,
4793  size_t lda,
4794  cl_uint numCommandQueues,
4795  cl_command_queue* commandQueues,
4796  cl_uint numEventsInWaitList,
4797  const cl_event* eventWaitList,
4798  cl_event* events);
4799 
4800 
4838 clblasStatus
4839 clblasZher2(
4840  clblasOrder order,
4841  clblasUplo uplo,
4842  size_t N,
4843  cl_double2 alpha,
4844  const cl_mem X,
4845  size_t offx,
4846  int incx,
4847  const cl_mem Y,
4848  size_t offy,
4849  int incy,
4850  cl_mem A,
4851  size_t offa,
4852  size_t lda,
4853  cl_uint numCommandQueues,
4854  cl_command_queue* commandQueues,
4855  cl_uint numEventsInWaitList,
4856  const cl_event* eventWaitList,
4857  cl_event* events);
4858 
4865 
4871 
4920 clblasStatus
4921 clblasStpmv(
4922  clblasOrder order,
4923  clblasUplo uplo,
4924  clblasTranspose trans,
4925  clblasDiag diag,
4926  size_t N,
4927  const cl_mem AP,
4928  size_t offa,
4929  cl_mem X,
4930  size_t offx,
4931  int incx,
4932  cl_mem scratchBuff,
4933  cl_uint numCommandQueues,
4934  cl_command_queue *commandQueues,
4935  cl_uint numEventsInWaitList,
4936  const cl_event *eventWaitList,
4937  cl_event *events);
4938 
4980 clblasStatus
4981 clblasDtpmv(
4982  clblasOrder order,
4983  clblasUplo uplo,
4984  clblasTranspose trans,
4985  clblasDiag diag,
4986  size_t N,
4987  const cl_mem AP,
4988  size_t offa,
4989  cl_mem X,
4990  size_t offx,
4991  int incx,
4992  cl_mem scratchBuff,
4993  cl_uint numCommandQueues,
4994  cl_command_queue *commandQueues,
4995  cl_uint numEventsInWaitList,
4996  const cl_event *eventWaitList,
4997  cl_event *events);
4998 
5030 clblasStatus
5031 clblasCtpmv(
5032  clblasOrder order,
5033  clblasUplo uplo,
5034  clblasTranspose trans,
5035  clblasDiag diag,
5036  size_t N,
5037  const cl_mem AP,
5038  size_t offa,
5039  cl_mem X,
5040  size_t offx,
5041  int incx,
5042  cl_mem scratchBuff,
5043  cl_uint numCommandQueues,
5044  cl_command_queue *commandQueues,
5045  cl_uint numEventsInWaitList,
5046  const cl_event *eventWaitList,
5047  cl_event *events);
5048 
5080 clblasStatus
5081 clblasZtpmv(
5082  clblasOrder order,
5083  clblasUplo uplo,
5084  clblasTranspose trans,
5085  clblasDiag diag,
5086  size_t N,
5087  const cl_mem AP,
5088  size_t offa,
5089  cl_mem X,
5090  size_t offx,
5091  int incx,
5092  cl_mem scratchBuff,
5093  cl_uint numCommandQueues,
5094  cl_command_queue *commandQueues,
5095  cl_uint numEventsInWaitList,
5096  const cl_event *eventWaitList,
5097  cl_event *events);
5107 
5155 clblasStatus
5156 clblasStpsv(
5157  clblasOrder order,
5158  clblasUplo uplo,
5159  clblasTranspose trans,
5160  clblasDiag diag,
5161  size_t N,
5162  const cl_mem A,
5163  size_t offa,
5164  cl_mem X,
5165  size_t offx,
5166  int incx,
5167  cl_uint numCommandQueues,
5168  cl_command_queue *commandQueues,
5169  cl_uint numEventsInWaitList,
5170  const cl_event *eventWaitList,
5171  cl_event *events);
5172 
5225 clblasStatus
5226 clblasDtpsv(
5227  clblasOrder order,
5228  clblasUplo uplo,
5229  clblasTranspose trans,
5230  clblasDiag diag,
5231  size_t N,
5232  const cl_mem A,
5233  size_t offa,
5234  cl_mem X,
5235  size_t offx,
5236  int incx,
5237  cl_uint numCommandQueues,
5238  cl_command_queue *commandQueues,
5239  cl_uint numEventsInWaitList,
5240  const cl_event *eventWaitList,
5241  cl_event *events);
5242 
5290 clblasStatus
5291 clblasCtpsv(
5292  clblasOrder order,
5293  clblasUplo uplo,
5294  clblasTranspose trans,
5295  clblasDiag diag,
5296  size_t N,
5297  const cl_mem A,
5298  size_t offa,
5299  cl_mem X,
5300  size_t offx,
5301  int incx,
5302  cl_uint numCommandQueues,
5303  cl_command_queue *commandQueues,
5304  cl_uint numEventsInWaitList,
5305  const cl_event *eventWaitList,
5306  cl_event *events);
5307 
5355 clblasStatus
5356 clblasZtpsv(
5357  clblasOrder order,
5358  clblasUplo uplo,
5359  clblasTranspose trans,
5360  clblasDiag diag,
5361  size_t N,
5362  const cl_mem A,
5363  size_t offa,
5364  cl_mem X,
5365  size_t offx,
5366  int incx,
5367  cl_uint numCommandQueues,
5368  cl_command_queue *commandQueues,
5369  cl_uint numEventsInWaitList,
5370  const cl_event *eventWaitList,
5371  cl_event *events);
5381 
5434 clblasStatus
5435 clblasSspmv(
5436  clblasOrder order,
5437  clblasUplo uplo,
5438  size_t N,
5439  cl_float alpha,
5440  const cl_mem AP,
5441  size_t offa,
5442  const cl_mem X,
5443  size_t offx,
5444  int incx,
5445  cl_float beta,
5446  cl_mem Y,
5447  size_t offy,
5448  int incy,
5449  cl_uint numCommandQueues,
5450  cl_command_queue *commandQueues,
5451  cl_uint numEventsInWaitList,
5452  const cl_event *eventWaitList,
5453  cl_event *events);
5454 
5497 clblasStatus
5498 clblasDspmv(
5499  clblasOrder order,
5500  clblasUplo uplo,
5501  size_t N,
5502  cl_double alpha,
5503  const cl_mem AP,
5504  size_t offa,
5505  const cl_mem X,
5506  size_t offx,
5507  int incx,
5508  cl_double beta,
5509  cl_mem Y,
5510  size_t offy,
5511  int incy,
5512  cl_uint numCommandQueues,
5513  cl_command_queue *commandQueues,
5514  cl_uint numEventsInWaitList,
5515  const cl_event *eventWaitList,
5516  cl_event *events);
5527 
5580 clblasStatus
5581 clblasChpmv(
5582  clblasOrder order,
5583  clblasUplo uplo,
5584  size_t N,
5585  cl_float2 alpha,
5586  const cl_mem AP,
5587  size_t offa,
5588  const cl_mem X,
5589  size_t offx,
5590  int incx,
5591  cl_float2 beta,
5592  cl_mem Y,
5593  size_t offy,
5594  int incy,
5595  cl_uint numCommandQueues,
5596  cl_command_queue *commandQueues,
5597  cl_uint numEventsInWaitList,
5598  const cl_event *eventWaitList,
5599  cl_event *events);
5600 
5644 clblasStatus
5645 clblasZhpmv(
5646  clblasOrder order,
5647  clblasUplo uplo,
5648  size_t N,
5649  cl_double2 alpha,
5650  const cl_mem AP,
5651  size_t offa,
5652  const cl_mem X,
5653  size_t offx,
5654  int incx,
5655  cl_double2 beta,
5656  cl_mem Y,
5657  size_t offy,
5658  int incy,
5659  cl_uint numCommandQueues,
5660  cl_command_queue *commandQueues,
5661  cl_uint numEventsInWaitList,
5662  const cl_event *eventWaitList,
5663  cl_event *events);
5721 clblasStatus
5722 clblasSspr(
5723  clblasOrder order,
5724  clblasUplo uplo,
5725  size_t N,
5726  cl_float alpha,
5727  const cl_mem X,
5728  size_t offx,
5729  int incx,
5730  cl_mem AP,
5731  size_t offa,
5732  cl_uint numCommandQueues,
5733  cl_command_queue* commandQueues,
5734  cl_uint numEventsInWaitList,
5735  const cl_event* eventWaitList,
5736  cl_event* events);
5775 clblasStatus
5776 clblasDspr(
5777  clblasOrder order,
5778  clblasUplo uplo,
5779  size_t N,
5780  cl_double alpha,
5781  const cl_mem X,
5782  size_t offx,
5783  int incx,
5784  cl_mem AP,
5785  size_t offa,
5786  cl_uint numCommandQueues,
5787  cl_command_queue* commandQueues,
5788  cl_uint numEventsInWaitList,
5789  const cl_event* eventWaitList,
5790  cl_event* events);
5847 clblasStatus
5848 clblasChpr(
5849  clblasOrder order,
5850  clblasUplo uplo,
5851  size_t N,
5852  cl_float alpha,
5853  const cl_mem X,
5854  size_t offx,
5855  int incx,
5856  cl_mem AP,
5857  size_t offa,
5858  cl_uint numCommandQueues,
5859  cl_command_queue* commandQueues,
5860  cl_uint numEventsInWaitList,
5861  const cl_event* eventWaitList,
5862  cl_event* events);
5900 clblasStatus
5901 clblasZhpr(
5902  clblasOrder order,
5903  clblasUplo uplo,
5904  size_t N,
5905  cl_double alpha,
5906  const cl_mem X,
5907  size_t offx,
5908  int incx,
5909  cl_mem AP,
5910  size_t offa,
5911  cl_uint numCommandQueues,
5912  cl_command_queue* commandQueues,
5913  cl_uint numEventsInWaitList,
5914  const cl_event* eventWaitList,
5915  cl_event* events);
5976 clblasStatus
5977 clblasSspr2(
5978  clblasOrder order,
5979  clblasUplo uplo,
5980  size_t N,
5981  cl_float alpha,
5982  const cl_mem X,
5983  size_t offx,
5984  int incx,
5985  const cl_mem Y,
5986  size_t offy,
5987  int incy,
5988  cl_mem AP,
5989  size_t offa,
5990  cl_uint numCommandQueues,
5991  cl_command_queue* commandQueues,
5992  cl_uint numEventsInWaitList,
5993  const cl_event* eventWaitList,
5994  cl_event* events);
6036 clblasStatus
6037 clblasDspr2(
6038  clblasOrder order,
6039  clblasUplo uplo,
6040  size_t N,
6041  cl_double alpha,
6042  const cl_mem X,
6043  size_t offx,
6044  int incx,
6045  const cl_mem Y,
6046  size_t offy,
6047  int incy,
6048  cl_mem AP,
6049  size_t offa,
6050  cl_uint numCommandQueues,
6051  cl_command_queue* commandQueues,
6052  cl_uint numEventsInWaitList,
6053  const cl_event* eventWaitList,
6054  cl_event* events);
6114 clblasStatus
6115 clblasChpr2(
6116  clblasOrder order,
6117  clblasUplo uplo,
6118  size_t N,
6119  cl_float2 alpha,
6120  const cl_mem X,
6121  size_t offx,
6122  int incx,
6123  const cl_mem Y,
6124  size_t offy,
6125  int incy,
6126  cl_mem AP,
6127  size_t offa,
6128  cl_uint numCommandQueues,
6129  cl_command_queue* commandQueues,
6130  cl_uint numEventsInWaitList,
6131  const cl_event* eventWaitList,
6132  cl_event* events);
6133 
6134 
6170 clblasStatus
6171 clblasZhpr2(
6172  clblasOrder order,
6173  clblasUplo uplo,
6174  size_t N,
6175  cl_double2 alpha,
6176  const cl_mem X,
6177  size_t offx,
6178  int incx,
6179  const cl_mem Y,
6180  size_t offy,
6181  int incy,
6182  cl_mem AP,
6183  size_t offa,
6184  cl_uint numCommandQueues,
6185  cl_command_queue* commandQueues,
6186  cl_uint numEventsInWaitList,
6187  const cl_event* eventWaitList,
6188  cl_event* events);
6189 
6195 
6196 
6197 
6203 
6266 clblasStatus
6267 clblasSgbmv(
6268  clblasOrder order,
6269  clblasTranspose trans,
6270  size_t M,
6271  size_t N,
6272  size_t KL,
6273  size_t KU,
6274  cl_float alpha,
6275  const cl_mem A,
6276  size_t offa,
6277  size_t lda,
6278  const cl_mem X,
6279  size_t offx,
6280  int incx,
6281  cl_float beta,
6282  cl_mem Y,
6283  size_t offy,
6284  int incy,
6285  cl_uint numCommandQueues,
6286  cl_command_queue *commandQueues,
6287  cl_uint numEventsInWaitList,
6288  const cl_event *eventWaitList,
6289  cl_event *events);
6340 clblasStatus
6341 clblasDgbmv(
6342  clblasOrder order,
6343  clblasTranspose trans,
6344  size_t M,
6345  size_t N,
6346  size_t KL,
6347  size_t KU,
6348  cl_double alpha,
6349  const cl_mem A,
6350  size_t offa,
6351  size_t lda,
6352  const cl_mem X,
6353  size_t offx,
6354  int incx,
6355  cl_double beta,
6356  cl_mem Y,
6357  size_t offy,
6358  int incy,
6359  cl_uint numCommandQueues,
6360  cl_command_queue *commandQueues,
6361  cl_uint numEventsInWaitList,
6362  const cl_event *eventWaitList,
6363  cl_event *events);
6364 
6365 
6406 clblasStatus
6407 clblasCgbmv(
6408  clblasOrder order,
6409  clblasTranspose trans,
6410  size_t M,
6411  size_t N,
6412  size_t KL,
6413  size_t KU,
6414  cl_float2 alpha,
6415  const cl_mem A,
6416  size_t offa,
6417  size_t lda,
6418  const cl_mem X,
6419  size_t offx,
6420  int incx,
6421  cl_float2 beta,
6422  cl_mem Y,
6423  size_t offy,
6424  int incy,
6425  cl_uint numCommandQueues,
6426  cl_command_queue *commandQueues,
6427  cl_uint numEventsInWaitList,
6428  const cl_event *eventWaitList,
6429  cl_event *events);
6430 
6431 
6472 clblasStatus
6473 clblasZgbmv(
6474  clblasOrder order,
6475  clblasTranspose trans,
6476  size_t M,
6477  size_t N,
6478  size_t KL,
6479  size_t KU,
6480  cl_double2 alpha,
6481  const cl_mem A,
6482  size_t offa,
6483  size_t lda,
6484  const cl_mem X,
6485  size_t offx,
6486  int incx,
6487  cl_double2 beta,
6488  cl_mem Y,
6489  size_t offy,
6490  int incy,
6491  cl_uint numCommandQueues,
6492  cl_command_queue *commandQueues,
6493  cl_uint numEventsInWaitList,
6494  const cl_event *eventWaitList,
6495  cl_event *events);
6504 
6558 clblasStatus
6559 clblasStbmv(
6560  clblasOrder order,
6561  clblasUplo uplo,
6562  clblasTranspose trans,
6563  clblasDiag diag,
6564  size_t N,
6565  size_t K,
6566  const cl_mem A,
6567  size_t offa,
6568  size_t lda,
6569  cl_mem X,
6570  size_t offx,
6571  int incx,
6572  cl_mem scratchBuff,
6573  cl_uint numCommandQueues,
6574  cl_command_queue *commandQueues,
6575  cl_uint numEventsInWaitList,
6576  const cl_event *eventWaitList,
6577  cl_event *events);
6623 clblasStatus
6624 clblasDtbmv(
6625  clblasOrder order,
6626  clblasUplo uplo,
6627  clblasTranspose trans,
6628  clblasDiag diag,
6629  size_t N,
6630  size_t K,
6631  const cl_mem A,
6632  size_t offa,
6633  size_t lda,
6634  cl_mem X,
6635  size_t offx,
6636  int incx,
6637  cl_mem scratchBuff,
6638  cl_uint numCommandQueues,
6639  cl_command_queue *commandQueues,
6640  cl_uint numEventsInWaitList,
6641  const cl_event *eventWaitList,
6642  cl_event *events);
6643 
6644 
6680 clblasStatus
6681 clblasCtbmv(
6682  clblasOrder order,
6683  clblasUplo uplo,
6684  clblasTranspose trans,
6685  clblasDiag diag,
6686  size_t N,
6687  size_t K,
6688  const cl_mem A,
6689  size_t offa,
6690  size_t lda,
6691  cl_mem X,
6692  size_t offx,
6693  int incx,
6694  cl_mem scratchBuff,
6695  cl_uint numCommandQueues,
6696  cl_command_queue *commandQueues,
6697  cl_uint numEventsInWaitList,
6698  const cl_event *eventWaitList,
6699  cl_event *events);
6700 
6701 
6737 clblasStatus
6738 clblasZtbmv(
6739  clblasOrder order,
6740  clblasUplo uplo,
6741  clblasTranspose trans,
6742  clblasDiag diag,
6743  size_t N,
6744  size_t K,
6745  const cl_mem A,
6746  size_t offa,
6747  size_t lda,
6748  cl_mem X,
6749  size_t offx,
6750  int incx,
6751  cl_mem scratchBuff,
6752  cl_uint numCommandQueues,
6753  cl_command_queue *commandQueues,
6754  cl_uint numEventsInWaitList,
6755  const cl_event *eventWaitList,
6756  cl_event *events);
6765 
6820 clblasStatus
6821 clblasSsbmv(
6822  clblasOrder order,
6823  clblasUplo uplo,
6824  size_t N,
6825  size_t K,
6826  cl_float alpha,
6827  const cl_mem A,
6828  size_t offa,
6829  size_t lda,
6830  const cl_mem X,
6831  size_t offx,
6832  int incx,
6833  cl_float beta,
6834  cl_mem Y,
6835  size_t offy,
6836  int incy,
6837  cl_uint numCommandQueues,
6838  cl_command_queue *commandQueues,
6839  cl_uint numEventsInWaitList,
6840  const cl_event *eventWaitList,
6841  cl_event *events);
6888 clblasStatus
6889 clblasDsbmv(
6890  clblasOrder order,
6891  clblasUplo uplo,
6892  size_t N,
6893  size_t K,
6894  cl_double alpha,
6895  const cl_mem A,
6896  size_t offa,
6897  size_t lda,
6898  const cl_mem X,
6899  size_t offx,
6900  int incx,
6901  cl_double beta,
6902  cl_mem Y,
6903  size_t offy,
6904  int incy,
6905  cl_uint numCommandQueues,
6906  cl_command_queue *commandQueues,
6907  cl_uint numEventsInWaitList,
6908  const cl_event *eventWaitList,
6909  cl_event *events);
6910 
6919 
6974 clblasStatus
6975 clblasChbmv(
6976  clblasOrder order,
6977  clblasUplo uplo,
6978  size_t N,
6979  size_t K,
6980  cl_float2 alpha,
6981  const cl_mem A,
6982  size_t offa,
6983  size_t lda,
6984  const cl_mem X,
6985  size_t offx,
6986  int incx,
6987  cl_float2 beta,
6988  cl_mem Y,
6989  size_t offy,
6990  int incy,
6991  cl_uint numCommandQueues,
6992  cl_command_queue *commandQueues,
6993  cl_uint numEventsInWaitList,
6994  const cl_event *eventWaitList,
6995  cl_event *events);
7042 clblasStatus
7043 clblasZhbmv(
7044  clblasOrder order,
7045  clblasUplo uplo,
7046  size_t N,
7047  size_t K,
7048  cl_double2 alpha,
7049  const cl_mem A,
7050  size_t offa,
7051  size_t lda,
7052  const cl_mem X,
7053  size_t offx,
7054  int incx,
7055  cl_double2 beta,
7056  cl_mem Y,
7057  size_t offy,
7058  int incy,
7059  cl_uint numCommandQueues,
7060  cl_command_queue *commandQueues,
7061  cl_uint numEventsInWaitList,
7062  const cl_event *eventWaitList,
7063  cl_event *events);
7064 
7073 
7124  clblasStatus
7125 clblasStbsv(
7126  clblasOrder order,
7127  clblasUplo uplo,
7128  clblasTranspose trans,
7129  clblasDiag diag,
7130  size_t N,
7131  size_t K,
7132  const cl_mem A,
7133  size_t offa,
7134  size_t lda,
7135  cl_mem X,
7136  size_t offx,
7137  int incx,
7138  cl_uint numCommandQueues,
7139  cl_command_queue *commandQueues,
7140  cl_uint numEventsInWaitList,
7141  const cl_event *eventWaitList,
7142  cl_event *events);
7185 clblasStatus
7186 clblasDtbsv(
7187  clblasOrder order,
7188  clblasUplo uplo,
7189  clblasTranspose trans,
7190  clblasDiag diag,
7191  size_t N,
7192  size_t K,
7193  const cl_mem A,
7194  size_t offa,
7195  size_t lda,
7196  cl_mem X,
7197  size_t offx,
7198  int incx,
7199  cl_uint numCommandQueues,
7200  cl_command_queue *commandQueues,
7201  cl_uint numEventsInWaitList,
7202  const cl_event *eventWaitList,
7203  cl_event *events);
7204 
7237 clblasStatus
7238 clblasCtbsv(
7239  clblasOrder order,
7240  clblasUplo uplo,
7241  clblasTranspose trans,
7242  clblasDiag diag,
7243  size_t N,
7244  size_t K,
7245  const cl_mem A,
7246  size_t offa,
7247  size_t lda,
7248  cl_mem X,
7249  size_t offx,
7250  int incx,
7251  cl_uint numCommandQueues,
7252  cl_command_queue *commandQueues,
7253  cl_uint numEventsInWaitList,
7254  const cl_event *eventWaitList,
7255  cl_event *events);
7256 
7289 clblasStatus
7290 clblasZtbsv(
7291  clblasOrder order,
7292  clblasUplo uplo,
7293  clblasTranspose trans,
7294  clblasDiag diag,
7295  size_t N,
7296  size_t K,
7297  const cl_mem A,
7298  size_t offa,
7299  size_t lda,
7300  cl_mem X,
7301  size_t offx,
7302  int incx,
7303  cl_uint numCommandQueues,
7304  cl_command_queue *commandQueues,
7305  cl_uint numEventsInWaitList,
7306  const cl_event *eventWaitList,
7307  cl_event *events);
7308 
7319 
7326 
7382 clblasStatus
7383 clblasSgemm(
7384  clblasOrder order,
7385  clblasTranspose transA,
7386  clblasTranspose transB,
7387  size_t M,
7388  size_t N,
7389  size_t K,
7390  cl_float alpha,
7391  const cl_mem A,
7392  size_t offA,
7393  size_t lda,
7394  const cl_mem B,
7395  size_t offB,
7396  size_t ldb,
7397  cl_float beta,
7398  cl_mem C,
7399  size_t offC,
7400  size_t ldc,
7401  cl_uint numCommandQueues,
7402  cl_command_queue *commandQueues,
7403  cl_uint numEventsInWaitList,
7404  const cl_event *eventWaitList,
7405  cl_event *events);
7406 
7463 clblasStatus
7464 clblasDgemm(
7465  clblasOrder order,
7466  clblasTranspose transA,
7467  clblasTranspose transB,
7468  size_t M,
7469  size_t N,
7470  size_t K,
7471  cl_double alpha,
7472  const cl_mem A,
7473  size_t offA,
7474  size_t lda,
7475  const cl_mem B,
7476  size_t offB,
7477  size_t ldb,
7478  cl_double beta,
7479  cl_mem C,
7480  size_t offC,
7481  size_t ldc,
7482  cl_uint numCommandQueues,
7483  cl_command_queue *commandQueues,
7484  cl_uint numEventsInWaitList,
7485  const cl_event *eventWaitList,
7486  cl_event *events);
7487 
7537 clblasStatus
7538 clblasCgemm(
7539  clblasOrder order,
7540  clblasTranspose transA,
7541  clblasTranspose transB,
7542  size_t M,
7543  size_t N,
7544  size_t K,
7545  FloatComplex alpha,
7546  const cl_mem A,
7547  size_t offA,
7548  size_t lda,
7549  const cl_mem B,
7550  size_t offB,
7551  size_t ldb,
7552  FloatComplex beta,
7553  cl_mem C,
7554  size_t offC,
7555  size_t ldc,
7556  cl_uint numCommandQueues,
7557  cl_command_queue *commandQueues,
7558  cl_uint numEventsInWaitList,
7559  const cl_event *eventWaitList,
7560  cl_event *events);
7561 
7613 clblasStatus
7614 clblasZgemm(
7615  clblasOrder order,
7616  clblasTranspose transA,
7617  clblasTranspose transB,
7618  size_t M,
7619  size_t N,
7620  size_t K,
7621  DoubleComplex alpha,
7622  const cl_mem A,
7623  size_t offA,
7624  size_t lda,
7625  const cl_mem B,
7626  size_t offB,
7627  size_t ldb,
7628  DoubleComplex beta,
7629  cl_mem C,
7630  size_t offC,
7631  size_t ldc,
7632  cl_uint numCommandQueues,
7633  cl_command_queue *commandQueues,
7634  cl_uint numEventsInWaitList,
7635  const cl_event *eventWaitList,
7636  cl_event *events);
7637 
7645 
7696 clblasStatus
7697 clblasStrmm(
7698  clblasOrder order,
7699  clblasSide side,
7700  clblasUplo uplo,
7701  clblasTranspose transA,
7702  clblasDiag diag,
7703  size_t M,
7704  size_t N,
7705  cl_float alpha,
7706  const cl_mem A,
7707  size_t offA,
7708  size_t lda,
7709  cl_mem B,
7710  size_t offB,
7711  size_t ldb,
7712  cl_uint numCommandQueues,
7713  cl_command_queue *commandQueues,
7714  cl_uint numEventsInWaitList,
7715  const cl_event *eventWaitList,
7716  cl_event *events);
7717 
7771 clblasStatus
7772 clblasDtrmm(
7773  clblasOrder order,
7774  clblasSide side,
7775  clblasUplo uplo,
7776  clblasTranspose transA,
7777  clblasDiag diag,
7778  size_t M,
7779  size_t N,
7780  cl_double alpha,
7781  const cl_mem A,
7782  size_t offA,
7783  size_t lda,
7784  cl_mem B,
7785  size_t offB,
7786  size_t ldb,
7787  cl_uint numCommandQueues,
7788  cl_command_queue *commandQueues,
7789  cl_uint numEventsInWaitList,
7790  const cl_event *eventWaitList,
7791  cl_event *events);
7792 
7838 clblasStatus
7839 clblasCtrmm(
7840  clblasOrder order,
7841  clblasSide side,
7842  clblasUplo uplo,
7843  clblasTranspose transA,
7844  clblasDiag diag,
7845  size_t M,
7846  size_t N,
7847  FloatComplex alpha,
7848  const cl_mem A,
7849  size_t offA,
7850  size_t lda,
7851  cl_mem B,
7852  size_t offB,
7853  size_t ldb,
7854  cl_uint numCommandQueues,
7855  cl_command_queue *commandQueues,
7856  cl_uint numEventsInWaitList,
7857  const cl_event *eventWaitList,
7858  cl_event *events);
7859 
7908 clblasStatus
7909 clblasZtrmm(
7910  clblasOrder order,
7911  clblasSide side,
7912  clblasUplo uplo,
7913  clblasTranspose transA,
7914  clblasDiag diag,
7915  size_t M,
7916  size_t N,
7917  DoubleComplex alpha,
7918  const cl_mem A,
7919  size_t offA,
7920  size_t lda,
7921  cl_mem B,
7922  size_t offB,
7923  size_t ldb,
7924  cl_uint numCommandQueues,
7925  cl_command_queue *commandQueues,
7926  cl_uint numEventsInWaitList,
7927  const cl_event *eventWaitList,
7928  cl_event *events);
7929 
7937 
7988 clblasStatus
7989 clblasStrsm(
7990  clblasOrder order,
7991  clblasSide side,
7992  clblasUplo uplo,
7993  clblasTranspose transA,
7994  clblasDiag diag,
7995  size_t M,
7996  size_t N,
7997  cl_float alpha,
7998  const cl_mem A,
7999  size_t offA,
8000  size_t lda,
8001  cl_mem B,
8002  size_t offB,
8003  size_t ldb,
8004  cl_uint numCommandQueues,
8005  cl_command_queue *commandQueues,
8006  cl_uint numEventsInWaitList,
8007  const cl_event *eventWaitList,
8008  cl_event *events);
8009 
8063 clblasStatus
8064 clblasDtrsm(
8065  clblasOrder order,
8066  clblasSide side,
8067  clblasUplo uplo,
8068  clblasTranspose transA,
8069  clblasDiag diag,
8070  size_t M,
8071  size_t N,
8072  cl_double alpha,
8073  const cl_mem A,
8074  size_t offA,
8075  size_t lda,
8076  cl_mem B,
8077  size_t offB,
8078  size_t ldb,
8079  cl_uint numCommandQueues,
8080  cl_command_queue *commandQueues,
8081  cl_uint numEventsInWaitList,
8082  const cl_event *eventWaitList,
8083  cl_event *events);
8084 
8131 clblasStatus
8132 clblasCtrsm(
8133  clblasOrder order,
8134  clblasSide side,
8135  clblasUplo uplo,
8136  clblasTranspose transA,
8137  clblasDiag diag,
8138  size_t M,
8139  size_t N,
8140  FloatComplex alpha,
8141  const cl_mem A,
8142  size_t offA,
8143  size_t lda,
8144  cl_mem B,
8145  size_t offB,
8146  size_t ldb,
8147  cl_uint numCommandQueues,
8148  cl_command_queue *commandQueues,
8149  cl_uint numEventsInWaitList,
8150  const cl_event *eventWaitList,
8151  cl_event *events);
8152 
8201 clblasStatus
8202 clblasZtrsm(
8203  clblasOrder order,
8204  clblasSide side,
8205  clblasUplo uplo,
8206  clblasTranspose transA,
8207  clblasDiag diag,
8208  size_t M,
8209  size_t N,
8210  DoubleComplex alpha,
8211  const cl_mem A,
8212  size_t offA,
8213  size_t lda,
8214  cl_mem B,
8215  size_t offB,
8216  size_t ldb,
8217  cl_uint numCommandQueues,
8218  cl_command_queue *commandQueues,
8219  cl_uint numEventsInWaitList,
8220  const cl_event *eventWaitList,
8221  cl_event *events);
8222 
8231 
8278 clblasStatus
8279 clblasSsyrk(
8280  clblasOrder order,
8281  clblasUplo uplo,
8282  clblasTranspose transA,
8283  size_t N,
8284  size_t K,
8285  cl_float alpha,
8286  const cl_mem A,
8287  size_t offA,
8288  size_t lda,
8289  cl_float beta,
8290  cl_mem C,
8291  size_t offC,
8292  size_t ldc,
8293  cl_uint numCommandQueues,
8294  cl_command_queue *commandQueues,
8295  cl_uint numEventsInWaitList,
8296  const cl_event *eventWaitList,
8297  cl_event *events);
8298 
8350 clblasStatus
8351 clblasDsyrk(
8352  clblasOrder order,
8353  clblasUplo uplo,
8354  clblasTranspose transA,
8355  size_t N,
8356  size_t K,
8357  cl_double alpha,
8358  const cl_mem A,
8359  size_t offA,
8360  size_t lda,
8361  cl_double beta,
8362  cl_mem C,
8363  size_t offC,
8364  size_t ldc,
8365  cl_uint numCommandQueues,
8366  cl_command_queue *commandQueues,
8367  cl_uint numEventsInWaitList,
8368  const cl_event *eventWaitList,
8369  cl_event *events);
8370 
8416 clblasStatus
8417 clblasCsyrk(
8418  clblasOrder order,
8419  clblasUplo uplo,
8420  clblasTranspose transA,
8421  size_t N,
8422  size_t K,
8423  FloatComplex alpha,
8424  const cl_mem A,
8425  size_t offA,
8426  size_t lda,
8427  FloatComplex beta,
8428  cl_mem C,
8429  size_t offC,
8430  size_t ldc,
8431  cl_uint numCommandQueues,
8432  cl_command_queue *commandQueues,
8433  cl_uint numEventsInWaitList,
8434  const cl_event *eventWaitList,
8435  cl_event *events);
8436 
8484 clblasStatus
8485 clblasZsyrk(
8486  clblasOrder order,
8487  clblasUplo uplo,
8488  clblasTranspose transA,
8489  size_t N,
8490  size_t K,
8491  DoubleComplex alpha,
8492  const cl_mem A,
8493  size_t offA,
8494  size_t lda,
8495  DoubleComplex beta,
8496  cl_mem C,
8497  size_t offC,
8498  size_t ldc,
8499  cl_uint numCommandQueues,
8500  cl_command_queue *commandQueues,
8501  cl_uint numEventsInWaitList,
8502  const cl_event *eventWaitList,
8503  cl_event *events);
8504 
8513 
8567 clblasStatus
8568 clblasSsyr2k(
8569  clblasOrder order,
8570  clblasUplo uplo,
8571  clblasTranspose transAB,
8572  size_t N,
8573  size_t K,
8574  cl_float alpha,
8575  const cl_mem A,
8576  size_t offA,
8577  size_t lda,
8578  const cl_mem B,
8579  size_t offB,
8580  size_t ldb,
8581  cl_float beta,
8582  cl_mem C,
8583  size_t offC,
8584  size_t ldc,
8585  cl_uint numCommandQueues,
8586  cl_command_queue *commandQueues,
8587  cl_uint numEventsInWaitList,
8588  const cl_event *eventWaitList,
8589  cl_event *events);
8590 
8647 clblasStatus
8648 clblasDsyr2k(
8649  clblasOrder order,
8650  clblasUplo uplo,
8651  clblasTranspose transAB,
8652  size_t N,
8653  size_t K,
8654  cl_double alpha,
8655  const cl_mem A,
8656  size_t offA,
8657  size_t lda,
8658  const cl_mem B,
8659  size_t offB,
8660  size_t ldb,
8661  cl_double beta,
8662  cl_mem C,
8663  size_t offC,
8664  size_t ldc,
8665  cl_uint numCommandQueues,
8666  cl_command_queue *commandQueues,
8667  cl_uint numEventsInWaitList,
8668  const cl_event *eventWaitList,
8669  cl_event *events);
8670 
8721 clblasStatus
8722 clblasCsyr2k(
8723  clblasOrder order,
8724  clblasUplo uplo,
8725  clblasTranspose transAB,
8726  size_t N,
8727  size_t K,
8728  FloatComplex alpha,
8729  const cl_mem A,
8730  size_t offA,
8731  size_t lda,
8732  const cl_mem B,
8733  size_t offB,
8734  size_t ldb,
8735  FloatComplex beta,
8736  cl_mem C,
8737  size_t offC,
8738  size_t ldc,
8739  cl_uint numCommandQueues,
8740  cl_command_queue *commandQueues,
8741  cl_uint numEventsInWaitList,
8742  const cl_event *eventWaitList,
8743  cl_event *events);
8744 
8797 clblasStatus
8798 clblasZsyr2k(
8799  clblasOrder order,
8800  clblasUplo uplo,
8801  clblasTranspose transAB,
8802  size_t N,
8803  size_t K,
8804  DoubleComplex alpha,
8805  const cl_mem A,
8806  size_t offA,
8807  size_t lda,
8808  const cl_mem B,
8809  size_t offB,
8810  size_t ldb,
8811  DoubleComplex beta,
8812  cl_mem C,
8813  size_t offC,
8814  size_t ldc,
8815  cl_uint numCommandQueues,
8816  cl_command_queue *commandQueues,
8817  cl_uint numEventsInWaitList,
8818  const cl_event *eventWaitList,
8819  cl_event *events);
8828 
8897 clblasStatus
8898 clblasSsymm(
8899  clblasOrder order,
8900  clblasSide side,
8901  clblasUplo uplo,
8902  size_t M,
8903  size_t N,
8904  cl_float alpha,
8905  const cl_mem A,
8906  size_t offa,
8907  size_t lda,
8908  const cl_mem B,
8909  size_t offb,
8910  size_t ldb,
8911  cl_float beta,
8912  cl_mem C,
8913  size_t offc,
8914  size_t ldc,
8915  cl_uint numCommandQueues,
8916  cl_command_queue *commandQueues,
8917  cl_uint numEventsInWaitList,
8918  const cl_event *eventWaitList,
8919  cl_event *events);
8978 clblasStatus
8979 clblasDsymm(
8980  clblasOrder order,
8981  clblasSide side,
8982  clblasUplo uplo,
8983  size_t M,
8984  size_t N,
8985  cl_double alpha,
8986  const cl_mem A,
8987  size_t offa,
8988  size_t lda,
8989  const cl_mem B,
8990  size_t offb,
8991  size_t ldb,
8992  cl_double beta,
8993  cl_mem C,
8994  size_t offc,
8995  size_t ldc,
8996  cl_uint numCommandQueues,
8997  cl_command_queue *commandQueues,
8998  cl_uint numEventsInWaitList,
8999  const cl_event *eventWaitList,
9000  cl_event *events);
9001 
9002 
9051 clblasStatus
9052 clblasCsymm(
9053  clblasOrder order,
9054  clblasSide side,
9055  clblasUplo uplo,
9056  size_t M,
9057  size_t N,
9058  cl_float2 alpha,
9059  const cl_mem A,
9060  size_t offa,
9061  size_t lda,
9062  const cl_mem B,
9063  size_t offb,
9064  size_t ldb,
9065  cl_float2 beta,
9066  cl_mem C,
9067  size_t offc,
9068  size_t ldc,
9069  cl_uint numCommandQueues,
9070  cl_command_queue *commandQueues,
9071  cl_uint numEventsInWaitList,
9072  const cl_event *eventWaitList,
9073  cl_event *events);
9074 
9123 clblasStatus
9124 clblasZsymm(
9125  clblasOrder order,
9126  clblasSide side,
9127  clblasUplo uplo,
9128  size_t M,
9129  size_t N,
9130  cl_double2 alpha,
9131  const cl_mem A,
9132  size_t offa,
9133  size_t lda,
9134  const cl_mem B,
9135  size_t offb,
9136  size_t ldb,
9137  cl_double2 beta,
9138  cl_mem C,
9139  size_t offc,
9140  size_t ldc,
9141  cl_uint numCommandQueues,
9142  cl_command_queue *commandQueues,
9143  cl_uint numEventsInWaitList,
9144  const cl_event *eventWaitList,
9145  cl_event *events);
9154 
9223 clblasStatus
9224 clblasChemm(
9225  clblasOrder order,
9226  clblasSide side,
9227  clblasUplo uplo,
9228  size_t M,
9229  size_t N,
9230  cl_float2 alpha,
9231  const cl_mem A,
9232  size_t offa,
9233  size_t lda,
9234  const cl_mem B,
9235  size_t offb,
9236  size_t ldb,
9237  cl_float2 beta,
9238  cl_mem C,
9239  size_t offc,
9240  size_t ldc,
9241  cl_uint numCommandQueues,
9242  cl_command_queue *commandQueues,
9243  cl_uint numEventsInWaitList,
9244  const cl_event *eventWaitList,
9245  cl_event *events);
9304 clblasStatus
9305 clblasZhemm(
9306  clblasOrder order,
9307  clblasSide side,
9308  clblasUplo uplo,
9309  size_t M,
9310  size_t N,
9311  cl_double2 alpha,
9312  const cl_mem A,
9313  size_t offa,
9314  size_t lda,
9315  const cl_mem B,
9316  size_t offb,
9317  size_t ldb,
9318  cl_double2 beta,
9319  cl_mem C,
9320  size_t offc,
9321  size_t ldc,
9322  cl_uint numCommandQueues,
9323  cl_command_queue *commandQueues,
9324  cl_uint numEventsInWaitList,
9325  const cl_event *eventWaitList,
9326  cl_event *events);
9335 
9388 clblasStatus
9389 clblasCherk(
9390  clblasOrder order,
9391  clblasUplo uplo,
9392  clblasTranspose transA,
9393  size_t N,
9394  size_t K,
9395  float alpha,
9396  const cl_mem A,
9397  size_t offa,
9398  size_t lda,
9399  float beta,
9400  cl_mem C,
9401  size_t offc,
9402  size_t ldc,
9403  cl_uint numCommandQueues,
9404  cl_command_queue *commandQueues,
9405  cl_uint numEventsInWaitList,
9406  const cl_event *eventWaitList,
9407  cl_event *events);
9457 clblasStatus
9458 clblasZherk(
9459  clblasOrder order,
9460  clblasUplo uplo,
9461  clblasTranspose transA,
9462  size_t N,
9463  size_t K,
9464  double alpha,
9465  const cl_mem A,
9466  size_t offa,
9467  size_t lda,
9468  double beta,
9469  cl_mem C,
9470  size_t offc,
9471  size_t ldc,
9472  cl_uint numCommandQueues,
9473  cl_command_queue *commandQueues,
9474  cl_uint numEventsInWaitList,
9475  const cl_event *eventWaitList,
9476  cl_event *events);
9485 
9544 clblasStatus
9545 clblasCher2k(
9546  clblasOrder order,
9547  clblasUplo uplo,
9548  clblasTranspose trans,
9549  size_t N,
9550  size_t K,
9551  FloatComplex alpha,
9552  const cl_mem A,
9553  size_t offa,
9554  size_t lda,
9555  const cl_mem B,
9556  size_t offb,
9557  size_t ldb,
9558  cl_float beta,
9559  cl_mem C,
9560  size_t offc,
9561  size_t ldc,
9562  cl_uint numCommandQueues,
9563  cl_command_queue *commandQueues,
9564  cl_uint numEventsInWaitList,
9565  const cl_event *eventWaitList,
9566  cl_event *events);
9622 clblasStatus
9623 clblasZher2k(
9624  clblasOrder order,
9625  clblasUplo uplo,
9626  clblasTranspose trans,
9627  size_t N,
9628  size_t K,
9629  DoubleComplex alpha,
9630  const cl_mem A,
9631  size_t offa,
9632  size_t lda,
9633  const cl_mem B,
9634  size_t offb,
9635  size_t ldb,
9636  cl_double beta,
9637  cl_mem C,
9638  size_t offc,
9639  size_t ldc,
9640  cl_uint numCommandQueues,
9641  cl_command_queue *commandQueues,
9642  cl_uint numEventsInWaitList,
9643  const cl_event *eventWaitList,
9644  cl_event *events);
9665 clblasStatus clblasMatrixSizeInfo(
9666  clblasOrder order,
9667  size_t rows,
9668  size_t columns,
9669  size_t elemsize,
9670  size_t padding,
9671  size_t * ld,
9672  size_t * fullsize);
9673 
9691 cl_mem clblasCreateMatrix(
9692  cl_context context,
9693  clblasOrder order,
9694  size_t rows,
9695  size_t columns,
9696  size_t elemsize,
9697  size_t padding,
9698  size_t * ld,
9699  size_t * fullsize,
9700  cl_int * err);
9701 
9702 
9722 cl_mem clblasCreateMatrixWithLd( cl_context context,
9723  clblasOrder order,
9724  size_t rows,
9725  size_t columns,
9726  size_t elemsize,
9727  size_t ld,
9728  size_t * fullsize,
9729  cl_int * err) ;
9730 
9731 
9749 cl_mem clblasCreateMatrixFromHost(
9750  cl_context context,
9751  clblasOrder order,
9752  size_t rows,
9753  size_t columns,
9754  size_t elemsize,
9755  size_t ld,
9756  void * host,
9757  size_t off_host,
9758  size_t ld_host,
9759  cl_command_queue command_queue,
9760  cl_uint numEventsInWaitList,
9761  const cl_event *eventWaitList,
9762  cl_int * err);
9763 
9815 clblasStatus clblasWriteSubMatrix(
9816  clblasOrder order,
9817  size_t element_size,
9818  const void *A, size_t offA, size_t ldA,
9819  size_t nrA, size_t ncA,
9820  size_t xA, size_t yA,
9821  cl_mem B, size_t offB, size_t ldB,
9822  size_t nrB, size_t ncB,
9823  size_t xB, size_t yB,
9824  size_t nx, size_t ny,
9825  cl_command_queue command_queue,
9826  cl_uint numEventsInWaitList,
9827  const cl_event *eventWaitList);
9828 
9836 clblasStatus clblasWriteSubMatrixAsync(
9837  clblasOrder order,
9838  size_t element_size,
9839  const void *A, size_t offA, size_t ldA,
9840  size_t nrA, size_t ncA,
9841  size_t xA, size_t yA,
9842  cl_mem B, size_t offB, size_t ldB,
9843  size_t nrB, size_t ncB,
9844  size_t xB, size_t yB,
9845  size_t nx, size_t ny,
9846  cl_command_queue command_queue,
9847  cl_uint numEventsInWaitList,
9848  const cl_event *eventWaitList,
9849  cl_event *event);
9850 
9861 clblasStatus clblasReadSubMatrix(
9862  clblasOrder order,
9863  size_t element_size,
9864  const cl_mem A, size_t offA, size_t ldA,
9865  size_t nrA, size_t ncA,
9866  size_t xA, size_t yA,
9867  void *B, size_t offB, size_t ldB,
9868  size_t nrB, size_t ncB,
9869  size_t xB, size_t yB,
9870  size_t nx, size_t ny,
9871  cl_command_queue command_queue,
9872  cl_uint numEventsInWaitList,
9873  const cl_event *eventWaitList);
9874 
9879 clblasStatus clblasReadSubMatrixAsync(
9880  clblasOrder order,
9881  size_t element_size,
9882  const cl_mem A, size_t offA, size_t ldA,
9883  size_t nrA, size_t ncA,
9884  size_t xA, size_t yA,
9885  void *B, size_t offB, size_t ldB,
9886  size_t nrB, size_t ncB,
9887  size_t xB, size_t yB,
9888  size_t nx, size_t ny,
9889  cl_command_queue command_queue,
9890  cl_uint numEventsInWaitList,
9891  const cl_event *eventWaitList,
9892  cl_event *event);
9893 
9904 clblasStatus clblasCopySubMatrix(
9905  clblasOrder order,
9906  size_t element_size,
9907  const cl_mem A, size_t offA, size_t ldA,
9908  size_t nrA, size_t ncA,
9909  size_t xA, size_t yA,
9910  cl_mem B, size_t offB, size_t ldB,
9911  size_t nrB, size_t ncB,
9912  size_t xB, size_t yB,
9913  size_t nx, size_t ny,
9914  cl_command_queue command_queue,
9915  cl_uint numEventsInWaitList,
9916  const cl_event *eventWaitList);
9917 
9922 clblasStatus clblasCopySubMatrixAsync(
9923  clblasOrder order,
9924  size_t element_size,
9925  const cl_mem A, size_t offA, size_t ldA,
9926  size_t nrA, size_t ncA,
9927  size_t xA, size_t yA,
9928  cl_mem B, size_t offB, size_t ldB,
9929  size_t nrB, size_t ncB,
9930  size_t xB, size_t yB,
9931  size_t nx, size_t ny,
9932  cl_command_queue command_queue,
9933  cl_uint numEventsInWaitList,
9934  const cl_event *eventWaitList,
9935  cl_event *event);
9936 
9947 clblasStatus clblasWriteVector(
9948  size_t nb_elem,
9949  size_t element_size,
9950  const void *A, size_t offA,
9951  cl_mem B, size_t offB,
9952  cl_command_queue command_queue,
9953  cl_uint numEventsInWaitList,
9954  const cl_event *eventWaitList);
9955 
9960 clblasStatus clblasWriteVectorAsync(
9961  size_t nb_elem,
9962  size_t element_size,
9963  const void *A, size_t offA,
9964  cl_mem B, size_t offB,
9965  cl_command_queue command_queue,
9966  cl_uint numEventsInWaitList,
9967  const cl_event *eventWaitList,
9968  cl_event *events);
9969 
9980 clblasStatus clblasReadVector(
9981  size_t nb_elem,
9982  size_t element_size,
9983  const cl_mem A, size_t offA,
9984  void * B, size_t offB,
9985  cl_command_queue command_queue,
9986  cl_uint numEventsInWaitList,
9987  const cl_event *eventWaitList);
9988 
9993 clblasStatus clblasReadVectorAsync(
9994  size_t nb_elem,
9995  size_t element_size,
9996  const cl_mem A, size_t offA,
9997  void * B, size_t offB,
9998  cl_command_queue command_queue,
9999  cl_uint numEventsInWaitList,
10000  const cl_event *eventWaitList,
10001  cl_event *events);
10002 
10013 clblasStatus clblasCopyVector(
10014  size_t nb_elem,
10015  size_t element_size,
10016  const cl_mem A, size_t offA,
10017  cl_mem B, size_t offB,
10018  cl_command_queue command_queue,
10019  cl_uint numEventsInWaitList,
10020  const cl_event *eventWaitList);
10021 
10026 clblasStatus clblasCopyVectorAsync(
10027  size_t nb_elem,
10028  size_t element_size,
10029  const cl_mem A, size_t offA,
10030  cl_mem B, size_t offB,
10031  cl_command_queue command_queue,
10032  cl_uint numEventsInWaitList,
10033  const cl_event *eventWaitList,
10034  cl_event *events);
10035 
10046 clblasStatus clblasWriteMatrix(
10047  clblasOrder order,
10048  size_t sx, size_t sy,
10049  size_t element_size,
10050  const void *A, size_t offA, size_t ldA,
10051  cl_mem B, size_t offB, size_t ldB,
10052  cl_command_queue command_queue,
10053  cl_uint numEventsInWaitList,
10054  const cl_event *eventWaitList);
10055 
10060 clblasStatus clblasWriteMatrixAsync(
10061  clblasOrder order,
10062  size_t sx, size_t sy,
10063  size_t element_size,
10064  const void *A, size_t offA, size_t ldA,
10065  cl_mem B, size_t offB, size_t ldB,
10066  cl_command_queue command_queue,
10067  cl_uint numEventsInWaitList,
10068  const cl_event *eventWaitList,
10069  cl_event *events);
10070 
10081 clblasStatus clblasReadMatrix(
10082  clblasOrder order,
10083  size_t sx, size_t sy,
10084  size_t element_size,
10085  const cl_mem A, size_t offA, size_t ldA,
10086  void * B, size_t offB, size_t ldB,
10087  cl_command_queue command_queue,
10088  cl_uint numEventsInWaitList,
10089  const cl_event *eventWaitList);
10090 
10095 clblasStatus clblasReadMatrixAsync(
10096  clblasOrder order,
10097  size_t sx, size_t sy,
10098  size_t element_size,
10099  const cl_mem A, size_t offA, size_t ldA,
10100  void * B, size_t offB, size_t ldB,
10101  cl_command_queue command_queue,
10102  cl_uint numEventsInWaitList,
10103  const cl_event *eventWaitList,
10104  cl_event *events);
10105 
10116 clblasStatus clblasCopyMatrix(
10117  clblasOrder order,
10118  size_t sx, size_t sy,
10119  size_t element_size,
10120  const cl_mem A, size_t offA, size_t ldA,
10121  cl_mem B, size_t offB, size_t ldB,
10122  cl_command_queue command_queue,
10123  cl_uint numEventsInWaitList,
10124  const cl_event *eventWaitList);
10125 
10130 clblasStatus clblasCopyMatrixAsync(
10131  clblasOrder order,
10132  size_t sx, size_t sy,
10133  size_t element_size,
10134  const cl_mem A, size_t offA, size_t ldA,
10135  cl_mem B, size_t offB, size_t ldB,
10136  cl_command_queue command_queue,
10137  cl_uint numEventsInWaitList,
10138  const cl_event *eventWaitList,
10139  cl_event *events);
10140 
10159 clblasStatus clblasFillVector(
10160  size_t nb_elem,
10161  size_t element_size,
10162  cl_mem A, size_t offA,
10163  const void * host,
10164  cl_command_queue command_queue,
10165  cl_uint numEventsInWaitList,
10166  const cl_event *eventWaitList);
10167 
10172 clblasStatus clblasFillVectorAsync(
10173  size_t nb_elem,
10174  size_t element_size,
10175  cl_mem A, size_t offA,
10176  const void * pattern,
10177  cl_command_queue command_queue,
10178  cl_uint numEventsInWaitList,
10179  const cl_event *eventWaitList,
10180  cl_event *event);
10181 
10200 clblasStatus clblasFillMatrix(
10201  clblasOrder order,
10202  size_t element_size,
10203  cl_mem A, size_t offA, size_t ldA,
10204  size_t nrA, size_t ncA,
10205  const void *pattern,
10206  cl_command_queue command_queue,
10207  cl_uint numEventsInWaitList,
10208  const cl_event *eventWaitList);
10209 
10210 
10241 clblasStatus clblasFillSubMatrix(
10242  clblasOrder order,
10243  size_t element_size,
10244  cl_mem A, size_t offA, size_t ldA,
10245  size_t nrA, size_t ncA,
10246  size_t xA, size_t yA,
10247  size_t nx, size_t ny,
10248  const void *pattern,
10249  cl_command_queue command_queue,
10250  cl_uint numEventsInWaitList,
10251  const cl_event *eventWaitList);
10252 
10257 clblasStatus clblasFillSubMatrixAsync(
10258  clblasOrder order,
10259  size_t element_size,
10260  cl_mem A, size_t offA, size_t ldA,
10261  size_t sxA, size_t syA,
10262  int xA, int yA,
10263  size_t nx, size_t ny,
10264  const void *host,
10265  cl_command_queue command_queue,
10266  cl_uint numEventsInWaitList,
10267  const cl_event *eventWaitList,
10268  cl_event *event);
10269 
10270 
10271 
10272 #ifdef __cplusplus
10273 } /* extern "C" { */
10274 #endif
10275 
10276 #endif /* CLBLAS_H_ */
clblasCsscal
clblasStatus clblasCsscal(size_t N, cl_float alpha, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scales a complex-float vector by a float constant.
clblasZtbmv
clblasStatus clblasZtbmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, size_t K, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a triangular banded matrix and double-complex elements.
clblasCdotu
clblasStatus clblasCdotu(size_t N, cl_mem dotProduct, size_t offDP, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
dot product of two vectors containing float-complex elements
clblasDsyr
clblasStatus clblasDsyr(clblasOrder order, clblasUplo uplo, size_t N, cl_double alpha, const cl_mem X, size_t offx, int incx, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Symmetric rank 1 operation with a general triangular matrix and double elements.
clblasSdot
clblasStatus clblasSdot(size_t N, cl_mem dotProduct, size_t offDP, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
dot product of two vectors containing float elements
clblasDtrsm
clblasStatus clblasDtrsm(clblasOrder order, clblasSide side, clblasUplo uplo, clblasTranspose transA, clblasDiag diag, size_t M, size_t N, cl_double alpha, const cl_mem A, size_t offA, size_t lda, cl_mem B, size_t offB, size_t ldb, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Solving triangular systems of equations with multiple right-hand sides and double elements....
clblasZher
clblasStatus clblasZher(clblasOrder order, clblasUplo uplo, size_t N, cl_double alpha, const cl_mem X, size_t offx, int incx, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
hermitian rank 1 operation with a general triangular matrix and double-complex elements.
clblasDsymm
clblasStatus clblasDsymm(clblasOrder order, clblasSide side, clblasUplo uplo, size_t M, size_t N, cl_double alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem B, size_t offb, size_t ldb, cl_double beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of symmetric rectangular matrices with double elements.
clblasStrmv
clblasStatus clblasStrmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a triangular matrix and float elements.
clblasDgemm
clblasStatus clblasDgemm(clblasOrder order, clblasTranspose transA, clblasTranspose transB, size_t M, size_t N, size_t K, cl_double alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem B, size_t offB, size_t ldb, cl_double beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of general rectangular matrices with double elements. Extended version.
clblasDgbmv
clblasStatus clblasDgbmv(clblasOrder order, clblasTranspose trans, size_t M, size_t N, size_t KL, size_t KU, cl_double alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, cl_double beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a general rectangular banded matrix and double elements.
clblasSrotmg
clblasStatus clblasSrotmg(cl_mem SD1, size_t offSD1, cl_mem SD2, size_t offSD2, cl_mem SX1, size_t offSX1, const cl_mem SY1, size_t offSY1, cl_mem SPARAM, size_t offSparam, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
construct the modified givens rotation on float elements
clblasCtbsv
clblasStatus clblasCtbsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, size_t K, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular banded matrix problems with float-complex elements.
clblasiDamax
clblasStatus clblasiDamax(size_t N, cl_mem iMax, size_t offiMax, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
index of max absolute value in a double array
clblasZgbmv
clblasStatus clblasZgbmv(clblasOrder order, clblasTranspose trans, size_t M, size_t N, size_t KL, size_t KU, cl_double2 alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, cl_double2 beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a general rectangular banded matrix and double-complex elements.
clblasCgeru
clblasStatus clblasCgeru(clblasOrder order, size_t M, size_t N, cl_float2 alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
vector-vector product with float complex elements and performs the rank 1 operation A
clblasSscal
clblasStatus clblasSscal(size_t N, cl_float alpha, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scales a float vector by a float constant.
clblasSaxpy
clblasStatus clblasSaxpy(size_t N, cl_float alpha, const cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scale vector X of float elements and add to Y.
clblasDtrmv
clblasStatus clblasDtrmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a triangular matrix and double elements.
clblasCaxpy
clblasStatus clblasCaxpy(size_t N, cl_float2 alpha, const cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scale vector X of complex-float elements and add to Y.
clblasSsyr
clblasStatus clblasSsyr(clblasOrder order, clblasUplo uplo, size_t N, cl_float alpha, const cl_mem X, size_t offx, int incx, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Symmetric rank 1 operation with a general triangular matrix and float elements.
clblasCgemm
clblasStatus clblasCgemm(clblasOrder order, clblasTranspose transA, clblasTranspose transB, size_t M, size_t N, size_t K, FloatComplex alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem B, size_t offB, size_t ldb, FloatComplex beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of general rectangular matrices with float complex elements....
clblasCtrmv
clblasStatus clblasCtrmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a triangular matrix and float complex elements.
clblasDtrmm
clblasStatus clblasDtrmm(clblasOrder order, clblasSide side, clblasUplo uplo, clblasTranspose transA, clblasDiag diag, size_t M, size_t N, cl_double alpha, const cl_mem A, size_t offA, size_t lda, cl_mem B, size_t offB, size_t ldb, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Multiplying a matrix by a triangular matrix with double elements. Extended version.
clblasSsymv
clblasStatus clblasSsymv(clblasOrder order, clblasUplo uplo, size_t N, cl_float alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem x, size_t offx, int incx, cl_float beta, cl_mem y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a symmetric matrix and float elements.
clblasChpmv
clblasStatus clblasChpmv(clblasOrder order, clblasUplo uplo, size_t N, cl_float2 alpha, const cl_mem AP, size_t offa, const cl_mem X, size_t offx, int incx, cl_float2 beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a packed hermitian matrix and float-complex elements.
clblasCscal
clblasStatus clblasCscal(size_t N, cl_float2 alpha, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scales a complex-float vector by a complex-float constant.
clblasiZamax
clblasStatus clblasiZamax(size_t N, cl_mem iMax, size_t offiMax, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
index of max absolute value in a complex double array
clblasZtbsv
clblasStatus clblasZtbsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, size_t K, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular banded matrix problems with double-complex elements.
clblasZtpmv
clblasStatus clblasZtpmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem AP, size_t offa, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a packed triangular matrix and double-complex elements.
clblasCher2
clblasStatus clblasCher2(clblasOrder order, clblasUplo uplo, size_t N, cl_float2 alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Hermitian rank 2 operation with a general triangular matrix and float-compelx elements.
clblasCsymm
clblasStatus clblasCsymm(clblasOrder order, clblasSide side, clblasUplo uplo, size_t M, size_t N, cl_float2 alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem B, size_t offb, size_t ldb, cl_float2 beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of symmetric rectangular matrices with float-complex elements.
clblasZtrmm
clblasStatus clblasZtrmm(clblasOrder order, clblasSide side, clblasUplo uplo, clblasTranspose transA, clblasDiag diag, size_t M, size_t N, DoubleComplex alpha, const cl_mem A, size_t offA, size_t lda, cl_mem B, size_t offB, size_t ldb, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Multiplying a matrix by a triangular matrix with double complex elements. Extended version.
clblasDaxpy
clblasStatus clblasDaxpy(size_t N, cl_double alpha, const cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scale vector X of double elements and add to Y.
clblasDtbmv
clblasStatus clblasDtbmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, size_t K, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a triangular banded matrix and double elements.
clblasDznrm2
clblasStatus clblasDznrm2(size_t N, cl_mem NRM2, size_t offNRM2, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
computes the euclidean norm of vector containing double-complex elements
clblasCsrot
clblasStatus clblasCsrot(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_float C, cl_float S, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
applies a plane rotation for float-complex elements
clblasGetVersion
clblasStatus clblasGetVersion(cl_uint *major, cl_uint *minor, cl_uint *patch)
Get the clblas library version info.
clblasSswap
clblasStatus clblasSswap(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
interchanges two vectors of float.
clblasSrot
clblasStatus clblasSrot(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_float C, cl_float S, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
applies a plane rotation for float elements
clblasZcopy
clblasStatus clblasZcopy(size_t N, const cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Copies complex-double elements from vector X to vector Y.
clblasZdotu
clblasStatus clblasZdotu(size_t N, cl_mem dotProduct, size_t offDP, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
dot product of two vectors containing double-complex elements
clblasCtpmv
clblasStatus clblasCtpmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem AP, size_t offa, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a packed triangular matrix and float-complex elements.
clblasCtpsv
clblasStatus clblasCtpsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular packed matrix problems with float complex elements.
clblasDrotm
clblasStatus clblasDrotm(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, const cl_mem DPARAM, size_t offDparam, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
modified givens rotation for double elements
clblasCtbmv
clblasStatus clblasCtbmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, size_t K, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a triangular banded matrix and float-complex elements.
clblasSrotm
clblasStatus clblasSrotm(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, const cl_mem SPARAM, size_t offSparam, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
modified givens rotation for float elements
clblasDswap
clblasStatus clblasDswap(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
interchanges two vectors of double.
clblasDtpmv
clblasStatus clblasDtpmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem AP, size_t offa, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a packed triangular matrix and double elements.
clblasDgemv
clblasStatus clblasDgemv(clblasOrder order, clblasTranspose transA, size_t M, size_t N, cl_double alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem x, size_t offx, int incx, cl_double beta, cl_mem y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a general rectangular matrix and double elements. Extended version.
clblasDnrm2
clblasStatus clblasDnrm2(size_t N, cl_mem NRM2, size_t offNRM2, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
computes the euclidean norm of vector containing double elements
clblasDspr
clblasStatus clblasDspr(clblasOrder order, clblasUplo uplo, size_t N, cl_double alpha, const cl_mem X, size_t offx, int incx, cl_mem AP, size_t offa, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Symmetric rank 1 operation with a general triangular packed-matrix and double elements.
clblasZdscal
clblasStatus clblasZdscal(size_t N, cl_double alpha, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scales a complex-double vector by a double constant.
clblasCsyr2k
clblasStatus clblasCsyr2k(clblasOrder order, clblasUplo uplo, clblasTranspose transAB, size_t N, size_t K, FloatComplex alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem B, size_t offB, size_t ldb, FloatComplex beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-2k update of a symmetric matrix with complex float elements. Extended version.
clblasDger
clblasStatus clblasDger(clblasOrder order, size_t M, size_t N, cl_double alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
vector-vector product with double elements and performs the rank 1 operation A
clblasSasum
clblasStatus clblasSasum(size_t N, cl_mem asum, size_t offAsum, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
absolute sum of values of a vector containing float elements
clblasDsbmv
clblasStatus clblasDsbmv(clblasOrder order, clblasUplo uplo, size_t N, size_t K, cl_double alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, cl_double beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a symmetric banded matrix and double elements.
clblasiCamax
clblasStatus clblasiCamax(size_t N, cl_mem iMax, size_t offiMax, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
index of max absolute value in a complex float array
clblasSsbmv
clblasStatus clblasSsbmv(clblasOrder order, clblasUplo uplo, size_t N, size_t K, cl_float alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, cl_float beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a symmetric banded matrix and float elements.
clblasCher
clblasStatus clblasCher(clblasOrder order, clblasUplo uplo, size_t N, cl_float alpha, const cl_mem X, size_t offx, int incx, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
hermitian rank 1 operation with a general triangular matrix and float-complex elements.
clblasZhpmv
clblasStatus clblasZhpmv(clblasOrder order, clblasUplo uplo, size_t N, cl_double2 alpha, const cl_mem AP, size_t offa, const cl_mem X, size_t offx, int incx, cl_double2 beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a packed hermitian matrix and double-complex elements.
clblasTeardown
void clblasTeardown(void)
Finalize the usage of the clblas library.
clblasChemv
clblasStatus clblasChemv(clblasOrder order, clblasUplo uplo, size_t N, FloatComplex alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, FloatComplex beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a hermitian matrix and float-complex elements.
clblasStpmv
clblasStatus clblasStpmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem AP, size_t offa, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a packed triangular matrix and float elements.
clblasStrsv
clblasStatus clblasStrsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular matrix problems with float elements.
clblasDdot
clblasStatus clblasDdot(size_t N, cl_mem dotProduct, size_t offDP, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
dot product of two vectors containing double elements
clblasCtrsv
clblasStatus clblasCtrsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular matrix problems with float-complex elements.
clblasChemm
clblasStatus clblasChemm(clblasOrder order, clblasSide side, clblasUplo uplo, size_t M, size_t N, cl_float2 alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem B, size_t offb, size_t ldb, cl_float2 beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of hermitian rectangular matrices with float-complex elements.
clblasZtrsm
clblasStatus clblasZtrsm(clblasOrder order, clblasSide side, clblasUplo uplo, clblasTranspose transA, clblasDiag diag, size_t M, size_t N, DoubleComplex alpha, const cl_mem A, size_t offA, size_t lda, cl_mem B, size_t offB, size_t ldb, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Solving triangular systems of equations with multiple right-hand sides and double complex elements....
clblasSspr
clblasStatus clblasSspr(clblasOrder order, clblasUplo uplo, size_t N, cl_float alpha, const cl_mem X, size_t offx, int incx, cl_mem AP, size_t offa, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Symmetric rank 1 operation with a general triangular packed-matrix and float elements.
clblasScnrm2
clblasStatus clblasScnrm2(size_t N, cl_mem NRM2, size_t offNRM2, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
computes the euclidean norm of vector containing float-complex elements
clblasZdotc
clblasStatus clblasZdotc(size_t N, cl_mem dotProduct, size_t offDP, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
dot product of two vectors containing double-complex elements conjugating the first vector
clblasChpr
clblasStatus clblasChpr(clblasOrder order, clblasUplo uplo, size_t N, cl_float alpha, const cl_mem X, size_t offx, int incx, cl_mem AP, size_t offa, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
hermitian rank 1 operation with a general triangular packed-matrix and float-complex elements.
clblasZgeru
clblasStatus clblasZgeru(clblasOrder order, size_t M, size_t N, cl_double2 alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
vector-vector product with double complex elements and performs the rank 1 operation A
clblasSspmv
clblasStatus clblasSspmv(clblasOrder order, clblasUplo uplo, size_t N, cl_float alpha, const cl_mem AP, size_t offa, const cl_mem X, size_t offx, int incx, cl_float beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a symmetric packed-matrix and float elements.
clblasSsyrk
clblasStatus clblasSsyrk(clblasOrder order, clblasUplo uplo, clblasTranspose transA, size_t N, size_t K, cl_float alpha, const cl_mem A, size_t offA, size_t lda, cl_float beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-k update of a symmetric matrix with float elements. Extended version.
clblasZher2k
clblasStatus clblasZher2k(clblasOrder order, clblasUplo uplo, clblasTranspose trans, size_t N, size_t K, DoubleComplex alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem B, size_t offb, size_t ldb, cl_double beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-2k update of a hermitian matrix with double-complex elements.
clblasCdotc
clblasStatus clblasCdotc(size_t N, cl_mem dotProduct, size_t offDP, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
dot product of two vectors containing float-complex elements conjugating the first vector
clblasZhpr
clblasStatus clblasZhpr(clblasOrder order, clblasUplo uplo, size_t N, cl_double alpha, const cl_mem X, size_t offx, int incx, cl_mem AP, size_t offa, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
hermitian rank 1 operation with a general triangular packed-matrix and double-complex elements.
clblasSspr2
clblasStatus clblasSspr2(clblasOrder order, clblasUplo uplo, size_t N, cl_float alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem AP, size_t offa, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Symmetric rank 2 operation with a general triangular packed-matrix and float elements.
clblasSgemv
clblasStatus clblasSgemv(clblasOrder order, clblasTranspose transA, size_t M, size_t N, cl_float alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem x, size_t offx, int incx, cl_float beta, cl_mem y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a general rectangular matrix and float elements. Extended version.
clblasStbmv
clblasStatus clblasStbmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, size_t K, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a triangular banded matrix and float elements.
clblasDspmv
clblasStatus clblasDspmv(clblasOrder order, clblasUplo uplo, size_t N, cl_double alpha, const cl_mem AP, size_t offa, const cl_mem X, size_t offx, int incx, cl_double beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a symmetric packed-matrix and double elements.
clblasZtpsv
clblasStatus clblasZtpsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular packed matrix problems with double complex elements.
clblasStrmm
clblasStatus clblasStrmm(clblasOrder order, clblasSide side, clblasUplo uplo, clblasTranspose transA, clblasDiag diag, size_t M, size_t N, cl_float alpha, const cl_mem A, size_t offA, size_t lda, cl_mem B, size_t offB, size_t ldb, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Multiplying a matrix by a triangular matrix with float elements. Extended version.
clblasCswap
clblasStatus clblasCswap(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
interchanges two vectors of complex-float elements.
clblasZhemv
clblasStatus clblasZhemv(clblasOrder order, clblasUplo uplo, size_t N, DoubleComplex alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, DoubleComplex beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a hermitian matrix and double-complex elements.
clblasZsyrk
clblasStatus clblasZsyrk(clblasOrder order, clblasUplo uplo, clblasTranspose transA, size_t N, size_t K, DoubleComplex alpha, const cl_mem A, size_t offA, size_t lda, DoubleComplex beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-k update of a symmetric matrix with complex double elements. Extended version.
clblasDasum
clblasStatus clblasDasum(size_t N, cl_mem asum, size_t offAsum, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
absolute sum of values of a vector containing double elements
clblasZsymm
clblasStatus clblasZsymm(clblasOrder order, clblasSide side, clblasUplo uplo, size_t M, size_t N, cl_double2 alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem B, size_t offb, size_t ldb, cl_double2 beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of symmetric rectangular matrices with double-complex elements.
clblasChpr2
clblasStatus clblasChpr2(clblasOrder order, clblasUplo uplo, size_t N, cl_float2 alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem AP, size_t offa, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Hermitian rank 2 operation with a general triangular packed-matrix and float-compelx elements.
clblasZhpr2
clblasStatus clblasZhpr2(clblasOrder order, clblasUplo uplo, size_t N, cl_double2 alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem AP, size_t offa, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Hermitian rank 2 operation with a general triangular packed-matrix and double-compelx elements.
clblasDspr2
clblasStatus clblasDspr2(clblasOrder order, clblasUplo uplo, size_t N, cl_double alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem AP, size_t offa, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Symmetric rank 2 operation with a general triangular packed-matrix and double elements.
clblasSsyr2k
clblasStatus clblasSsyr2k(clblasOrder order, clblasUplo uplo, clblasTranspose transAB, size_t N, size_t K, cl_float alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem B, size_t offB, size_t ldb, cl_float beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-2k update of a symmetric matrix with float elements. Extended version.
clblasZtrsv
clblasStatus clblasZtrsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular matrix problems with double-complex elements.
clblasSetup
clblasStatus clblasSetup(void)
Initialize the clblas library.
clblasiSamax
clblasStatus clblasiSamax(size_t N, cl_mem iMax, size_t offiMax, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
index of max absolute value in a float array
clblasCgbmv
clblasStatus clblasCgbmv(clblasOrder order, clblasTranspose trans, size_t M, size_t N, size_t KL, size_t KU, cl_float2 alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, cl_float2 beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a general rectangular banded matrix and float-complex elements.
clblasSgbmv
clblasStatus clblasSgbmv(clblasOrder order, clblasTranspose trans, size_t M, size_t N, size_t KL, size_t KU, cl_float alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, cl_float beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a general rectangular banded matrix and float elements.
clblasCgemv
clblasStatus clblasCgemv(clblasOrder order, clblasTranspose transA, size_t M, size_t N, FloatComplex alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem x, size_t offx, int incx, FloatComplex beta, cl_mem y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a general rectangular matrix and float complex elements....
clblasZgemm
clblasStatus clblasZgemm(clblasOrder order, clblasTranspose transA, clblasTranspose transB, size_t M, size_t N, size_t K, DoubleComplex alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem B, size_t offB, size_t ldb, DoubleComplex beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of general rectangular matrices with double complex elements....
clblasCgerc
clblasStatus clblasCgerc(clblasOrder order, size_t M, size_t N, cl_float2 alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
vector-vector product with float complex elements and performs the rank 1 operation A
clblasCher2k
clblasStatus clblasCher2k(clblasOrder order, clblasUplo uplo, clblasTranspose trans, size_t N, size_t K, FloatComplex alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem B, size_t offb, size_t ldb, cl_float beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-2k update of a hermitian matrix with float-complex elements.
clblasSrotg
clblasStatus clblasSrotg(cl_mem SA, size_t offSA, cl_mem SB, size_t offSB, cl_mem C, size_t offC, cl_mem S, size_t offS, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
construct givens plane rotation on float elements
clblasSger
clblasStatus clblasSger(clblasOrder order, size_t M, size_t N, cl_float alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
vector-vector product with float elements and performs the rank 1 operation A
clblasZaxpy
clblasStatus clblasZaxpy(size_t N, cl_double2 alpha, const cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scale vector X of double-complex elements and add to Y.
clblasCrotg
clblasStatus clblasCrotg(cl_mem CA, size_t offCA, cl_mem CB, size_t offCB, cl_mem C, size_t offC, cl_mem S, size_t offS, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
construct givens plane rotation on float-complex elements
clblasDtbsv
clblasStatus clblasDtbsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, size_t K, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular banded matrix problems with double elements.
clblasStbsv
clblasStatus clblasStbsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, size_t K, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular banded matrix problems with float elements.
clblasDsymv
clblasStatus clblasDsymv(clblasOrder order, clblasUplo uplo, size_t N, cl_double alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem x, size_t offx, int incx, cl_double beta, cl_mem y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a symmetric matrix and double elements.
clblasDrotg
clblasStatus clblasDrotg(cl_mem DA, size_t offDA, cl_mem DB, size_t offDB, cl_mem C, size_t offC, cl_mem S, size_t offS, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
construct givens plane rotation on double elements
clblasZsyr2k
clblasStatus clblasZsyr2k(clblasOrder order, clblasUplo uplo, clblasTranspose transAB, size_t N, size_t K, DoubleComplex alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem B, size_t offB, size_t ldb, DoubleComplex beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-2k update of a symmetric matrix with complex double elements. Extended version.
clblasDtpsv
clblasStatus clblasDtpsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular packed matrix problems with double elements.
clblasZherk
clblasStatus clblasZherk(clblasOrder order, clblasUplo uplo, clblasTranspose transA, size_t N, size_t K, double alpha, const cl_mem A, size_t offa, size_t lda, double beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-k update of a hermitian matrix with double-complex elements.
clblasZtrmv
clblasStatus clblasZtrmv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a triangular matrix and double complex elements.
clblasDscal
clblasStatus clblasDscal(size_t N, cl_double alpha, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scales a double vector by a double constant.
clblasCherk
clblasStatus clblasCherk(clblasOrder order, clblasUplo uplo, clblasTranspose transA, size_t N, size_t K, float alpha, const cl_mem A, size_t offa, size_t lda, float beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-k update of a hermitian matrix with float-complex elements.
clblasSgemm
clblasStatus clblasSgemm(clblasOrder order, clblasTranspose transA, clblasTranspose transB, size_t M, size_t N, size_t K, cl_float alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem B, size_t offB, size_t ldb, cl_float beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of general rectangular matrices with float elements. Extended version.
clblasCcopy
clblasStatus clblasCcopy(size_t N, const cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Copies complex-float elements from vector X to vector Y.
clblasZdrot
clblasStatus clblasZdrot(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_double C, cl_double S, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
applies a plane rotation for double-complex elements
clblasZswap
clblasStatus clblasZswap(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
interchanges two vectors of double-complex elements.
clblasSnrm2
clblasStatus clblasSnrm2(size_t N, cl_mem NRM2, size_t offNRM2, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
computes the euclidean norm of vector containing float elements
clblasStrsm
clblasStatus clblasStrsm(clblasOrder order, clblasSide side, clblasUplo uplo, clblasTranspose transA, clblasDiag diag, size_t M, size_t N, cl_float alpha, const cl_mem A, size_t offA, size_t lda, cl_mem B, size_t offB, size_t ldb, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Solving triangular systems of equations with multiple right-hand sides and float elements....
clblasDtrsv
clblasStatus clblasDtrsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, size_t lda, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular matrix problems with double elements.
clblasDsyrk
clblasStatus clblasDsyrk(clblasOrder order, clblasUplo uplo, clblasTranspose transA, size_t N, size_t K, cl_double alpha, const cl_mem A, size_t offA, size_t lda, cl_double beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-k update of a symmetric matrix with double elements. Extended version.
clblasZgemv
clblasStatus clblasZgemv(clblasOrder order, clblasTranspose transA, size_t M, size_t N, DoubleComplex alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem x, size_t offx, int incx, DoubleComplex beta, cl_mem y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a general rectangular matrix and double complex elements....
clblasDzasum
clblasStatus clblasDzasum(size_t N, cl_mem asum, size_t offAsum, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
absolute sum of values of a vector containing double-complex elements
clblasCsyrk
clblasStatus clblasCsyrk(clblasOrder order, clblasUplo uplo, clblasTranspose transA, size_t N, size_t K, FloatComplex alpha, const cl_mem A, size_t offA, size_t lda, FloatComplex beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-k update of a symmetric matrix with complex float elements. Extended version.
clblasSsyr2
clblasStatus clblasSsyr2(clblasOrder order, clblasUplo uplo, size_t N, cl_float alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Symmetric rank 2 operation with a general triangular matrix and float elements.
clblasDsyr2k
clblasStatus clblasDsyr2k(clblasOrder order, clblasUplo uplo, clblasTranspose transAB, size_t N, size_t K, cl_double alpha, const cl_mem A, size_t offA, size_t lda, const cl_mem B, size_t offB, size_t ldb, cl_double beta, cl_mem C, size_t offC, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Rank-2k update of a symmetric matrix with double elements. Extended version.
clblasCtrmm
clblasStatus clblasCtrmm(clblasOrder order, clblasSide side, clblasUplo uplo, clblasTranspose transA, clblasDiag diag, size_t M, size_t N, FloatComplex alpha, const cl_mem A, size_t offA, size_t lda, cl_mem B, size_t offB, size_t ldb, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Multiplying a matrix by a triangular matrix with float complex elements. Extended version.
clblasDsyr2
clblasStatus clblasDsyr2(clblasOrder order, clblasUplo uplo, size_t N, cl_double alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Symmetric rank 2 operation with a general triangular matrix and double elements.
clblasChbmv
clblasStatus clblasChbmv(clblasOrder order, clblasUplo uplo, size_t N, size_t K, cl_float2 alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, cl_float2 beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a hermitian banded matrix and float elements.
clblasDrot
clblasStatus clblasDrot(size_t N, cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_double C, cl_double S, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
applies a plane rotation for double elements
clblasDrotmg
clblasStatus clblasDrotmg(cl_mem DD1, size_t offDD1, cl_mem DD2, size_t offDD2, cl_mem DX1, size_t offDX1, const cl_mem DY1, size_t offDY1, cl_mem DPARAM, size_t offDparam, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
construct the modified givens rotation on double elements
clblasSsymm
clblasStatus clblasSsymm(clblasOrder order, clblasSide side, clblasUplo uplo, size_t M, size_t N, cl_float alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem B, size_t offb, size_t ldb, cl_float beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of symmetric rectangular matrices with float elements.
clblasZgerc
clblasStatus clblasZgerc(clblasOrder order, size_t M, size_t N, cl_double2 alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
vector-vector product with double complex elements and performs the rank 1 operation A
clblasZher2
clblasStatus clblasZher2(clblasOrder order, clblasUplo uplo, size_t N, cl_double2 alpha, const cl_mem X, size_t offx, int incx, const cl_mem Y, size_t offy, int incy, cl_mem A, size_t offa, size_t lda, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Hermitian rank 2 operation with a general triangular matrix and double-compelx elements.
clblasZhbmv
clblasStatus clblasZhbmv(clblasOrder order, clblasUplo uplo, size_t N, size_t K, cl_double2 alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem X, size_t offx, int incx, cl_double2 beta, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-vector product with a hermitian banded matrix and double elements.
clblasZscal
clblasStatus clblasZscal(size_t N, cl_double2 alpha, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Scales a complex-double vector by a complex-double constant.
clblasScasum
clblasStatus clblasScasum(size_t N, cl_mem asum, size_t offAsum, const cl_mem X, size_t offx, int incx, cl_mem scratchBuff, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
absolute sum of values of a vector containing float-complex elements
clblasZrotg
clblasStatus clblasZrotg(cl_mem CA, size_t offCA, cl_mem CB, size_t offCB, cl_mem C, size_t offC, cl_mem S, size_t offS, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
construct givens plane rotation on double-complex elements
clblasZhemm
clblasStatus clblasZhemm(clblasOrder order, clblasSide side, clblasUplo uplo, size_t M, size_t N, cl_double2 alpha, const cl_mem A, size_t offa, size_t lda, const cl_mem B, size_t offb, size_t ldb, cl_double2 beta, cl_mem C, size_t offc, size_t ldc, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Matrix-matrix product of hermitian rectangular matrices with double-complex elements.
clblasCtrsm
clblasStatus clblasCtrsm(clblasOrder order, clblasSide side, clblasUplo uplo, clblasTranspose transA, clblasDiag diag, size_t M, size_t N, FloatComplex alpha, const cl_mem A, size_t offA, size_t lda, cl_mem B, size_t offB, size_t ldb, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Solving triangular systems of equations with multiple right-hand sides and float complex elements....
clblasScopy
clblasStatus clblasScopy(size_t N, const cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Copies float elements from vector X to vector Y.
clblasStpsv
clblasStatus clblasStpsv(clblasOrder order, clblasUplo uplo, clblasTranspose trans, clblasDiag diag, size_t N, const cl_mem A, size_t offa, cl_mem X, size_t offx, int incx, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
solving triangular packed matrix problems with float elements.
clblasDcopy
clblasStatus clblasDcopy(size_t N, const cl_mem X, size_t offx, int incx, cl_mem Y, size_t offy, int incy, cl_uint numCommandQueues, cl_command_queue *commandQueues, cl_uint numEventsInWaitList, const cl_event *eventWaitList, cl_event *events)
Copies double elements from vector X to vector Y.