32 #if defined(__APPLE__) || defined(__MACOSX)
33 #include <OpenCL/cl.h>
38 #include <clBLAS-complex.h>
126 clblasSuccess = CL_SUCCESS,
127 clblasInvalidValue = CL_INVALID_VALUE,
128 clblasInvalidCommandQueue = CL_INVALID_COMMAND_QUEUE,
129 clblasInvalidContext = CL_INVALID_CONTEXT,
130 clblasInvalidMemObject = CL_INVALID_MEM_OBJECT,
131 clblasInvalidDevice = CL_INVALID_DEVICE,
132 clblasInvalidEventWaitList = CL_INVALID_EVENT_WAIT_LIST,
133 clblasOutOfResources = CL_OUT_OF_RESOURCES,
134 clblasOutOfHostMemory = CL_OUT_OF_HOST_MEMORY,
135 clblasInvalidOperation = CL_INVALID_OPERATION,
136 clblasCompilerNotAvailable = CL_COMPILER_NOT_AVAILABLE,
137 clblasBuildProgramFailure = CL_BUILD_PROGRAM_FAILURE,
287 cl_uint numCommandQueues,
288 cl_command_queue *commandQueues,
289 cl_uint numEventsInWaitList,
290 const cl_event *eventWaitList,
336 cl_uint numCommandQueues,
337 cl_command_queue *commandQueues,
338 cl_uint numEventsInWaitList,
339 const cl_event *eventWaitList,
378 cl_uint numCommandQueues,
379 cl_command_queue *commandQueues,
380 cl_uint numEventsInWaitList,
381 const cl_event *eventWaitList,
420 cl_uint numCommandQueues,
421 cl_command_queue *commandQueues,
422 cl_uint numEventsInWaitList,
423 const cl_event *eventWaitList,
484 cl_uint numCommandQueues,
485 cl_command_queue *commandQueues,
486 cl_uint numEventsInWaitList,
487 const cl_event *eventWaitList,
528 cl_uint numCommandQueues,
529 cl_command_queue *commandQueues,
530 cl_uint numEventsInWaitList,
531 const cl_event *eventWaitList,
566 cl_uint numCommandQueues,
567 cl_command_queue *commandQueues,
568 cl_uint numEventsInWaitList,
569 const cl_event *eventWaitList,
604 cl_uint numCommandQueues,
605 cl_command_queue *commandQueues,
606 cl_uint numEventsInWaitList,
607 const cl_event *eventWaitList,
667 cl_uint numCommandQueues,
668 cl_command_queue *commandQueues,
669 cl_uint numEventsInWaitList,
670 const cl_event *eventWaitList,
711 cl_uint numCommandQueues,
712 cl_command_queue *commandQueues,
713 cl_uint numEventsInWaitList,
714 const cl_event *eventWaitList,
780 cl_uint numCommandQueues,
781 cl_command_queue *commandQueues,
782 cl_uint numEventsInWaitList,
783 const cl_event *eventWaitList,
830 cl_uint numCommandQueues,
831 cl_command_queue *commandQueues,
832 cl_uint numEventsInWaitList,
833 const cl_event *eventWaitList,
873 cl_uint numCommandQueues,
874 cl_command_queue *commandQueues,
875 cl_uint numEventsInWaitList,
876 const cl_event *eventWaitList,
916 cl_uint numCommandQueues,
917 cl_command_queue *commandQueues,
918 cl_uint numEventsInWaitList,
919 const cl_event *eventWaitList,
986 cl_uint numCommandQueues,
987 cl_command_queue *commandQueues,
988 cl_uint numEventsInWaitList,
989 const cl_event *eventWaitList,
1038 cl_uint numCommandQueues,
1039 cl_command_queue *commandQueues,
1040 cl_uint numEventsInWaitList,
1041 const cl_event *eventWaitList,
1083 cl_uint numCommandQueues,
1084 cl_command_queue *commandQueues,
1085 cl_uint numEventsInWaitList,
1086 const cl_event *eventWaitList,
1128 cl_uint numCommandQueues,
1129 cl_command_queue *commandQueues,
1130 cl_uint numEventsInWaitList,
1131 const cl_event *eventWaitList,
1202 cl_uint numCommandQueues,
1203 cl_command_queue *commandQueues,
1204 cl_uint numEventsInWaitList,
1205 const cl_event *eventWaitList,
1257 cl_uint numCommandQueues,
1258 cl_command_queue *commandQueues,
1259 cl_uint numEventsInWaitList,
1260 const cl_event *eventWaitList,
1307 cl_uint numCommandQueues,
1308 cl_command_queue *commandQueues,
1309 cl_uint numEventsInWaitList,
1310 const cl_event *eventWaitList,
1359 cl_uint numCommandQueues,
1360 cl_command_queue *commandQueues,
1361 cl_uint numEventsInWaitList,
1362 const cl_event *eventWaitList,
1409 cl_uint numCommandQueues,
1410 cl_command_queue *commandQueues,
1411 cl_uint numEventsInWaitList,
1412 const cl_event *eventWaitList,
1461 cl_uint numCommandQueues,
1462 cl_command_queue *commandQueues,
1463 cl_uint numEventsInWaitList,
1464 const cl_event *eventWaitList,
1527 cl_uint numCommandQueues,
1528 cl_command_queue *commandQueues,
1529 cl_uint numEventsInWaitList,
1530 const cl_event *eventWaitList,
1579 cl_uint numCommandQueues,
1580 cl_command_queue *commandQueues,
1581 cl_uint numEventsInWaitList,
1582 const cl_event *eventWaitList,
1624 cl_uint numCommandQueues,
1625 cl_command_queue *commandQueues,
1626 cl_uint numEventsInWaitList,
1627 const cl_event *eventWaitList,
1669 cl_uint numCommandQueues,
1670 cl_command_queue *commandQueues,
1671 cl_uint numEventsInWaitList,
1672 const cl_event *eventWaitList,
1745 cl_uint numCommandQueues,
1746 cl_command_queue *commandQueues,
1747 cl_uint numEventsInWaitList,
1748 const cl_event *eventWaitList,
1808 cl_uint numCommandQueues,
1809 cl_command_queue *commandQueues,
1810 cl_uint numEventsInWaitList,
1811 const cl_event *eventWaitList,
1879 cl_uint numCommandQueues,
1880 cl_command_queue *commandQueues,
1881 cl_uint numEventsInWaitList,
1882 const cl_event *eventWaitList,
1931 cl_uint numCommandQueues,
1932 cl_command_queue *commandQueues,
1933 cl_uint numEventsInWaitList,
1934 const cl_event *eventWaitList,
1976 cl_uint numCommandQueues,
1977 cl_command_queue *commandQueues,
1978 cl_uint numEventsInWaitList,
1979 const cl_event *eventWaitList,
2023 cl_uint numCommandQueues,
2024 cl_command_queue *commandQueues,
2025 cl_uint numEventsInWaitList,
2026 const cl_event *eventWaitList,
2097 const cl_mem SPARAM,
2099 cl_uint numCommandQueues,
2100 cl_command_queue *commandQueues,
2101 cl_uint numEventsInWaitList,
2102 const cl_event *eventWaitList,
2155 const cl_mem DPARAM,
2157 cl_uint numCommandQueues,
2158 cl_command_queue *commandQueues,
2159 cl_uint numEventsInWaitList,
2160 const cl_event *eventWaitList,
2225 cl_uint numCommandQueues,
2226 cl_command_queue *commandQueues,
2227 cl_uint numEventsInWaitList,
2228 const cl_event *eventWaitList,
2275 cl_uint numCommandQueues,
2276 cl_command_queue *commandQueues,
2277 cl_uint numEventsInWaitList,
2278 const cl_event *eventWaitList,
2319 cl_uint numCommandQueues,
2320 cl_command_queue *commandQueues,
2321 cl_uint numEventsInWaitList,
2322 const cl_event *eventWaitList,
2366 cl_uint numCommandQueues,
2367 cl_command_queue *commandQueues,
2368 cl_uint numEventsInWaitList,
2369 const cl_event *eventWaitList,
2434 cl_uint numCommandQueues,
2435 cl_command_queue *commandQueues,
2436 cl_uint numEventsInWaitList,
2437 const cl_event *eventWaitList,
2484 cl_uint numCommandQueues,
2485 cl_command_queue *commandQueues,
2486 cl_uint numEventsInWaitList,
2487 const cl_event *eventWaitList,
2527 cl_uint numCommandQueues,
2528 cl_command_queue *commandQueues,
2529 cl_uint numEventsInWaitList,
2530 const cl_event *eventWaitList,
2573 cl_uint numCommandQueues,
2574 cl_command_queue *commandQueues,
2575 cl_uint numEventsInWaitList,
2576 const cl_event *eventWaitList,
2640 cl_uint numCommandQueues,
2641 cl_command_queue *commandQueues,
2642 cl_uint numEventsInWaitList,
2643 const cl_event *eventWaitList,
2689 cl_uint numCommandQueues,
2690 cl_command_queue *commandQueues,
2691 cl_uint numEventsInWaitList,
2692 const cl_event *eventWaitList,
2732 cl_uint numCommandQueues,
2733 cl_command_queue *commandQueues,
2734 cl_uint numEventsInWaitList,
2735 const cl_event *eventWaitList,
2777 cl_uint numCommandQueues,
2778 cl_command_queue *commandQueues,
2779 cl_uint numEventsInWaitList,
2780 const cl_event *eventWaitList,
2863 cl_uint numCommandQueues,
2864 cl_command_queue *commandQueues,
2865 cl_uint numEventsInWaitList,
2866 const cl_event *eventWaitList,
2936 cl_uint numCommandQueues,
2937 cl_command_queue *commandQueues,
2938 cl_uint numEventsInWaitList,
2939 const cl_event *eventWaitList,
3002 cl_uint numCommandQueues,
3003 cl_command_queue *commandQueues,
3004 cl_uint numEventsInWaitList,
3005 const cl_event *eventWaitList,
3059 DoubleComplex alpha,
3070 cl_uint numCommandQueues,
3071 cl_command_queue *commandQueues,
3072 cl_uint numEventsInWaitList,
3073 const cl_event *eventWaitList,
3142 cl_uint numCommandQueues,
3143 cl_command_queue *commandQueues,
3144 cl_uint numEventsInWaitList,
3145 const cl_event *eventWaitList,
3212 cl_uint numCommandQueues,
3213 cl_command_queue *commandQueues,
3214 cl_uint numEventsInWaitList,
3215 const cl_event *eventWaitList,
3298 cl_uint numCommandQueues,
3299 cl_command_queue *commandQueues,
3300 cl_uint numEventsInWaitList,
3301 const cl_event *eventWaitList,
3348 DoubleComplex alpha,
3359 cl_uint numCommandQueues,
3360 cl_command_queue *commandQueues,
3361 cl_uint numEventsInWaitList,
3362 const cl_event *eventWaitList,
3443 cl_uint numCommandQueues,
3444 cl_command_queue *commandQueues,
3445 cl_uint numEventsInWaitList,
3446 const cl_event *eventWaitList,
3506 cl_uint numCommandQueues,
3507 cl_command_queue *commandQueues,
3508 cl_uint numEventsInWaitList,
3509 const cl_event *eventWaitList,
3559 cl_uint numCommandQueues,
3560 cl_command_queue *commandQueues,
3561 cl_uint numEventsInWaitList,
3562 const cl_event *eventWaitList,
3612 cl_uint numCommandQueues,
3613 cl_command_queue *commandQueues,
3614 cl_uint numEventsInWaitList,
3615 const cl_event *eventWaitList,
3688 cl_uint numCommandQueues,
3689 cl_command_queue *commandQueues,
3690 cl_uint numEventsInWaitList,
3691 const cl_event *eventWaitList,
3748 cl_uint numCommandQueues,
3749 cl_command_queue *commandQueues,
3750 cl_uint numEventsInWaitList,
3751 const cl_event *eventWaitList,
3799 cl_uint numCommandQueues,
3800 cl_command_queue *commandQueues,
3801 cl_uint numEventsInWaitList,
3802 const cl_event *eventWaitList,
3850 cl_uint numCommandQueues,
3851 cl_command_queue *commandQueues,
3852 cl_uint numEventsInWaitList,
3853 const cl_event *eventWaitList,
3935 cl_uint numCommandQueues,
3936 cl_command_queue *commandQueues,
3937 cl_uint numEventsInWaitList,
3938 const cl_event *eventWaitList,
4002 cl_uint numCommandQueues,
4003 cl_command_queue *commandQueues,
4004 cl_uint numEventsInWaitList,
4005 const cl_event *eventWaitList,
4086 cl_uint numCommandQueues,
4087 cl_command_queue *commandQueues,
4088 cl_uint numEventsInWaitList,
4089 const cl_event *eventWaitList,
4147 cl_uint numCommandQueues,
4148 cl_command_queue *commandQueues,
4149 cl_uint numEventsInWaitList,
4150 const cl_event *eventWaitList,
4232 cl_uint numCommandQueues,
4233 cl_command_queue *commandQueues,
4234 cl_uint numEventsInWaitList,
4235 const cl_event *eventWaitList,
4293 cl_uint numCommandQueues,
4294 cl_command_queue *commandQueues,
4295 cl_uint numEventsInWaitList,
4296 const cl_event *eventWaitList,
4371 cl_uint numCommandQueues,
4372 cl_command_queue* commandQueues,
4373 cl_uint numEventsInWaitList,
4374 const cl_event* eventWaitList,
4424 cl_uint numCommandQueues,
4425 cl_command_queue* commandQueues,
4426 cl_uint numEventsInWaitList,
4427 const cl_event* eventWaitList,
4501 cl_uint numCommandQueues,
4502 cl_command_queue* commandQueues,
4503 cl_uint numEventsInWaitList,
4504 const cl_event* eventWaitList,
4557 cl_uint numCommandQueues,
4558 cl_command_queue* commandQueues,
4559 cl_uint numEventsInWaitList,
4560 const cl_event* eventWaitList,
4640 cl_uint numCommandQueues,
4641 cl_command_queue* commandQueues,
4642 cl_uint numEventsInWaitList,
4643 const cl_event* eventWaitList,
4713 cl_uint numCommandQueues,
4714 cl_command_queue* commandQueues,
4715 cl_uint numEventsInWaitList,
4716 const cl_event* eventWaitList,
4796 cl_uint numCommandQueues,
4797 cl_command_queue* commandQueues,
4798 cl_uint numEventsInWaitList,
4799 const cl_event* eventWaitList,
4855 cl_uint numCommandQueues,
4856 cl_command_queue* commandQueues,
4857 cl_uint numEventsInWaitList,
4858 const cl_event* eventWaitList,
4935 cl_uint numCommandQueues,
4936 cl_command_queue *commandQueues,
4937 cl_uint numEventsInWaitList,
4938 const cl_event *eventWaitList,
4995 cl_uint numCommandQueues,
4996 cl_command_queue *commandQueues,
4997 cl_uint numEventsInWaitList,
4998 const cl_event *eventWaitList,
5045 cl_uint numCommandQueues,
5046 cl_command_queue *commandQueues,
5047 cl_uint numEventsInWaitList,
5048 const cl_event *eventWaitList,
5095 cl_uint numCommandQueues,
5096 cl_command_queue *commandQueues,
5097 cl_uint numEventsInWaitList,
5098 const cl_event *eventWaitList,
5169 cl_uint numCommandQueues,
5170 cl_command_queue *commandQueues,
5171 cl_uint numEventsInWaitList,
5172 const cl_event *eventWaitList,
5239 cl_uint numCommandQueues,
5240 cl_command_queue *commandQueues,
5241 cl_uint numEventsInWaitList,
5242 const cl_event *eventWaitList,
5304 cl_uint numCommandQueues,
5305 cl_command_queue *commandQueues,
5306 cl_uint numEventsInWaitList,
5307 const cl_event *eventWaitList,
5369 cl_uint numCommandQueues,
5370 cl_command_queue *commandQueues,
5371 cl_uint numEventsInWaitList,
5372 const cl_event *eventWaitList,
5451 cl_uint numCommandQueues,
5452 cl_command_queue *commandQueues,
5453 cl_uint numEventsInWaitList,
5454 const cl_event *eventWaitList,
5514 cl_uint numCommandQueues,
5515 cl_command_queue *commandQueues,
5516 cl_uint numEventsInWaitList,
5517 const cl_event *eventWaitList,
5597 cl_uint numCommandQueues,
5598 cl_command_queue *commandQueues,
5599 cl_uint numEventsInWaitList,
5600 const cl_event *eventWaitList,
5661 cl_uint numCommandQueues,
5662 cl_command_queue *commandQueues,
5663 cl_uint numEventsInWaitList,
5664 const cl_event *eventWaitList,
5734 cl_uint numCommandQueues,
5735 cl_command_queue* commandQueues,
5736 cl_uint numEventsInWaitList,
5737 const cl_event* eventWaitList,
5788 cl_uint numCommandQueues,
5789 cl_command_queue* commandQueues,
5790 cl_uint numEventsInWaitList,
5791 const cl_event* eventWaitList,
5860 cl_uint numCommandQueues,
5861 cl_command_queue* commandQueues,
5862 cl_uint numEventsInWaitList,
5863 const cl_event* eventWaitList,
5913 cl_uint numCommandQueues,
5914 cl_command_queue* commandQueues,
5915 cl_uint numEventsInWaitList,
5916 const cl_event* eventWaitList,
5992 cl_uint numCommandQueues,
5993 cl_command_queue* commandQueues,
5994 cl_uint numEventsInWaitList,
5995 const cl_event* eventWaitList,
6052 cl_uint numCommandQueues,
6053 cl_command_queue* commandQueues,
6054 cl_uint numEventsInWaitList,
6055 const cl_event* eventWaitList,
6130 cl_uint numCommandQueues,
6131 cl_command_queue* commandQueues,
6132 cl_uint numEventsInWaitList,
6133 const cl_event* eventWaitList,
6186 cl_uint numCommandQueues,
6187 cl_command_queue* commandQueues,
6188 cl_uint numEventsInWaitList,
6189 const cl_event* eventWaitList,
6287 cl_uint numCommandQueues,
6288 cl_command_queue *commandQueues,
6289 cl_uint numEventsInWaitList,
6290 const cl_event *eventWaitList,
6361 cl_uint numCommandQueues,
6362 cl_command_queue *commandQueues,
6363 cl_uint numEventsInWaitList,
6364 const cl_event *eventWaitList,
6427 cl_uint numCommandQueues,
6428 cl_command_queue *commandQueues,
6429 cl_uint numEventsInWaitList,
6430 const cl_event *eventWaitList,
6493 cl_uint numCommandQueues,
6494 cl_command_queue *commandQueues,
6495 cl_uint numEventsInWaitList,
6496 const cl_event *eventWaitList,
6575 cl_uint numCommandQueues,
6576 cl_command_queue *commandQueues,
6577 cl_uint numEventsInWaitList,
6578 const cl_event *eventWaitList,
6640 cl_uint numCommandQueues,
6641 cl_command_queue *commandQueues,
6642 cl_uint numEventsInWaitList,
6643 const cl_event *eventWaitList,
6697 cl_uint numCommandQueues,
6698 cl_command_queue *commandQueues,
6699 cl_uint numEventsInWaitList,
6700 const cl_event *eventWaitList,
6754 cl_uint numCommandQueues,
6755 cl_command_queue *commandQueues,
6756 cl_uint numEventsInWaitList,
6757 const cl_event *eventWaitList,
6839 cl_uint numCommandQueues,
6840 cl_command_queue *commandQueues,
6841 cl_uint numEventsInWaitList,
6842 const cl_event *eventWaitList,
6907 cl_uint numCommandQueues,
6908 cl_command_queue *commandQueues,
6909 cl_uint numEventsInWaitList,
6910 const cl_event *eventWaitList,
6993 cl_uint numCommandQueues,
6994 cl_command_queue *commandQueues,
6995 cl_uint numEventsInWaitList,
6996 const cl_event *eventWaitList,
7061 cl_uint numCommandQueues,
7062 cl_command_queue *commandQueues,
7063 cl_uint numEventsInWaitList,
7064 const cl_event *eventWaitList,
7140 cl_uint numCommandQueues,
7141 cl_command_queue *commandQueues,
7142 cl_uint numEventsInWaitList,
7143 const cl_event *eventWaitList,
7201 cl_uint numCommandQueues,
7202 cl_command_queue *commandQueues,
7203 cl_uint numEventsInWaitList,
7204 const cl_event *eventWaitList,
7253 cl_uint numCommandQueues,
7254 cl_command_queue *commandQueues,
7255 cl_uint numEventsInWaitList,
7256 const cl_event *eventWaitList,
7305 cl_uint numCommandQueues,
7306 cl_command_queue *commandQueues,
7307 cl_uint numEventsInWaitList,
7308 const cl_event *eventWaitList,
7404 cl_uint numCommandQueues,
7405 cl_command_queue *commandQueues,
7406 cl_uint numEventsInWaitList,
7407 const cl_event *eventWaitList,
7486 cl_uint numCommandQueues,
7487 cl_command_queue *commandQueues,
7488 cl_uint numEventsInWaitList,
7489 const cl_event *eventWaitList,
7561 cl_uint numCommandQueues,
7562 cl_command_queue *commandQueues,
7563 cl_uint numEventsInWaitList,
7564 const cl_event *eventWaitList,
7627 DoubleComplex alpha,
7638 cl_uint numCommandQueues,
7639 cl_command_queue *commandQueues,
7640 cl_uint numEventsInWaitList,
7641 const cl_event *eventWaitList,
7718 cl_uint numCommandQueues,
7719 cl_command_queue *commandQueues,
7720 cl_uint numEventsInWaitList,
7721 const cl_event *eventWaitList,
7793 cl_uint numCommandQueues,
7794 cl_command_queue *commandQueues,
7795 cl_uint numEventsInWaitList,
7796 const cl_event *eventWaitList,
7860 cl_uint numCommandQueues,
7861 cl_command_queue *commandQueues,
7862 cl_uint numEventsInWaitList,
7863 const cl_event *eventWaitList,
7923 DoubleComplex alpha,
7930 cl_uint numCommandQueues,
7931 cl_command_queue *commandQueues,
7932 cl_uint numEventsInWaitList,
7933 const cl_event *eventWaitList,
8011 cl_uint numCommandQueues,
8012 cl_command_queue *commandQueues,
8013 cl_uint numEventsInWaitList,
8014 const cl_event *eventWaitList,
8087 cl_uint numCommandQueues,
8088 cl_command_queue *commandQueues,
8089 cl_uint numEventsInWaitList,
8090 const cl_event *eventWaitList,
8155 cl_uint numCommandQueues,
8156 cl_command_queue *commandQueues,
8157 cl_uint numEventsInWaitList,
8158 const cl_event *eventWaitList,
8218 DoubleComplex alpha,
8225 cl_uint numCommandQueues,
8226 cl_command_queue *commandQueues,
8227 cl_uint numEventsInWaitList,
8228 const cl_event *eventWaitList,
8301 cl_uint numCommandQueues,
8302 cl_command_queue *commandQueues,
8303 cl_uint numEventsInWaitList,
8304 const cl_event *eventWaitList,
8373 cl_uint numCommandQueues,
8374 cl_command_queue *commandQueues,
8375 cl_uint numEventsInWaitList,
8376 const cl_event *eventWaitList,
8439 cl_uint numCommandQueues,
8440 cl_command_queue *commandQueues,
8441 cl_uint numEventsInWaitList,
8442 const cl_event *eventWaitList,
8499 DoubleComplex alpha,
8507 cl_uint numCommandQueues,
8508 cl_command_queue *commandQueues,
8509 cl_uint numEventsInWaitList,
8510 const cl_event *eventWaitList,
8593 cl_uint numCommandQueues,
8594 cl_command_queue *commandQueues,
8595 cl_uint numEventsInWaitList,
8596 const cl_event *eventWaitList,
8673 cl_uint numCommandQueues,
8674 cl_command_queue *commandQueues,
8675 cl_uint numEventsInWaitList,
8676 const cl_event *eventWaitList,
8747 cl_uint numCommandQueues,
8748 cl_command_queue *commandQueues,
8749 cl_uint numEventsInWaitList,
8750 const cl_event *eventWaitList,
8812 DoubleComplex alpha,
8823 cl_uint numCommandQueues,
8824 cl_command_queue *commandQueues,
8825 cl_uint numEventsInWaitList,
8826 const cl_event *eventWaitList,
8923 cl_uint numCommandQueues,
8924 cl_command_queue *commandQueues,
8925 cl_uint numEventsInWaitList,
8926 const cl_event *eventWaitList,
9004 cl_uint numCommandQueues,
9005 cl_command_queue *commandQueues,
9006 cl_uint numEventsInWaitList,
9007 const cl_event *eventWaitList,
9077 cl_uint numCommandQueues,
9078 cl_command_queue *commandQueues,
9079 cl_uint numEventsInWaitList,
9080 const cl_event *eventWaitList,
9149 cl_uint numCommandQueues,
9150 cl_command_queue *commandQueues,
9151 cl_uint numEventsInWaitList,
9152 const cl_event *eventWaitList,
9249 cl_uint numCommandQueues,
9250 cl_command_queue *commandQueues,
9251 cl_uint numEventsInWaitList,
9252 const cl_event *eventWaitList,
9330 cl_uint numCommandQueues,
9331 cl_command_queue *commandQueues,
9332 cl_uint numEventsInWaitList,
9333 const cl_event *eventWaitList,
9411 cl_uint numCommandQueues,
9412 cl_command_queue *commandQueues,
9413 cl_uint numEventsInWaitList,
9414 const cl_event *eventWaitList,
9480 cl_uint numCommandQueues,
9481 cl_command_queue *commandQueues,
9482 cl_uint numEventsInWaitList,
9483 const cl_event *eventWaitList,
9570 cl_uint numCommandQueues,
9571 cl_command_queue *commandQueues,
9572 cl_uint numEventsInWaitList,
9573 const cl_event *eventWaitList,
9637 DoubleComplex alpha,
9648 cl_uint numCommandQueues,
9649 cl_command_queue *commandQueues,
9650 cl_uint numEventsInWaitList,
9651 const cl_event *eventWaitList,
9699 cl_mem clblasCreateMatrix(
9730 cl_mem clblasCreateMatrixWithLd( cl_context context,
9757 cl_mem clblasCreateMatrixFromHost(
9767 cl_command_queue command_queue,
9768 cl_uint numEventsInWaitList,
9769 const cl_event *eventWaitList,
9825 size_t element_size,
9826 const void *A,
size_t offA,
size_t ldA,
9827 size_t nrA,
size_t ncA,
9828 size_t xA,
size_t yA,
9829 cl_mem B,
size_t offB,
size_t ldB,
9830 size_t nrB,
size_t ncB,
9831 size_t xB,
size_t yB,
9832 size_t nx,
size_t ny,
9833 cl_command_queue command_queue,
9834 cl_uint numEventsInWaitList,
9835 const cl_event *eventWaitList);
9846 size_t element_size,
9847 const void *A,
size_t offA,
size_t ldA,
9848 size_t nrA,
size_t ncA,
9849 size_t xA,
size_t yA,
9850 cl_mem B,
size_t offB,
size_t ldB,
9851 size_t nrB,
size_t ncB,
9852 size_t xB,
size_t yB,
9853 size_t nx,
size_t ny,
9854 cl_command_queue command_queue,
9855 cl_uint numEventsInWaitList,
9856 const cl_event *eventWaitList,
9871 size_t element_size,
9872 const cl_mem A,
size_t offA,
size_t ldA,
9873 size_t nrA,
size_t ncA,
9874 size_t xA,
size_t yA,
9875 void *B,
size_t offB,
size_t ldB,
9876 size_t nrB,
size_t ncB,
9877 size_t xB,
size_t yB,
9878 size_t nx,
size_t ny,
9879 cl_command_queue command_queue,
9880 cl_uint numEventsInWaitList,
9881 const cl_event *eventWaitList);
9889 size_t element_size,
9890 const cl_mem A,
size_t offA,
size_t ldA,
9891 size_t nrA,
size_t ncA,
9892 size_t xA,
size_t yA,
9893 void *B,
size_t offB,
size_t ldB,
9894 size_t nrB,
size_t ncB,
9895 size_t xB,
size_t yB,
9896 size_t nx,
size_t ny,
9897 cl_command_queue command_queue,
9898 cl_uint numEventsInWaitList,
9899 const cl_event *eventWaitList,
9914 size_t element_size,
9915 const cl_mem A,
size_t offA,
size_t ldA,
9916 size_t nrA,
size_t ncA,
9917 size_t xA,
size_t yA,
9918 cl_mem B,
size_t offB,
size_t ldB,
9919 size_t nrB,
size_t ncB,
9920 size_t xB,
size_t yB,
9921 size_t nx,
size_t ny,
9922 cl_command_queue command_queue,
9923 cl_uint numEventsInWaitList,
9924 const cl_event *eventWaitList);
9932 size_t element_size,
9933 const cl_mem A,
size_t offA,
size_t ldA,
9934 size_t nrA,
size_t ncA,
9935 size_t xA,
size_t yA,
9936 cl_mem B,
size_t offB,
size_t ldB,
9937 size_t nrB,
size_t ncB,
9938 size_t xB,
size_t yB,
9939 size_t nx,
size_t ny,
9940 cl_command_queue command_queue,
9941 cl_uint numEventsInWaitList,
9942 const cl_event *eventWaitList,
9957 size_t element_size,
9958 const void *A,
size_t offA,
9959 cl_mem B,
size_t offB,
9960 cl_command_queue command_queue,
9961 cl_uint numEventsInWaitList,
9962 const cl_event *eventWaitList);
9970 size_t element_size,
9971 const void *A,
size_t offA,
9972 cl_mem B,
size_t offB,
9973 cl_command_queue command_queue,
9974 cl_uint numEventsInWaitList,
9975 const cl_event *eventWaitList,
9990 size_t element_size,
9991 const cl_mem A,
size_t offA,
9992 void * B,
size_t offB,
9993 cl_command_queue command_queue,
9994 cl_uint numEventsInWaitList,
9995 const cl_event *eventWaitList);
10003 size_t element_size,
10004 const cl_mem A,
size_t offA,
10005 void * B,
size_t offB,
10006 cl_command_queue command_queue,
10007 cl_uint numEventsInWaitList,
10008 const cl_event *eventWaitList,
10023 size_t element_size,
10024 const cl_mem A,
size_t offA,
10025 cl_mem B,
size_t offB,
10026 cl_command_queue command_queue,
10027 cl_uint numEventsInWaitList,
10028 const cl_event *eventWaitList);
10036 size_t element_size,
10037 const cl_mem A,
size_t offA,
10038 cl_mem B,
size_t offB,
10039 cl_command_queue command_queue,
10040 cl_uint numEventsInWaitList,
10041 const cl_event *eventWaitList,
10056 size_t sx,
size_t sy,
10057 size_t element_size,
10058 const void *A,
size_t offA,
size_t ldA,
10059 cl_mem B,
size_t offB,
size_t ldB,
10060 cl_command_queue command_queue,
10061 cl_uint numEventsInWaitList,
10062 const cl_event *eventWaitList);
10070 size_t sx,
size_t sy,
10071 size_t element_size,
10072 const void *A,
size_t offA,
size_t ldA,
10073 cl_mem B,
size_t offB,
size_t ldB,
10074 cl_command_queue command_queue,
10075 cl_uint numEventsInWaitList,
10076 const cl_event *eventWaitList,
10091 size_t sx,
size_t sy,
10092 size_t element_size,
10093 const cl_mem A,
size_t offA,
size_t ldA,
10094 void * B,
size_t offB,
size_t ldB,
10095 cl_command_queue command_queue,
10096 cl_uint numEventsInWaitList,
10097 const cl_event *eventWaitList);
10105 size_t sx,
size_t sy,
10106 size_t element_size,
10107 const cl_mem A,
size_t offA,
size_t ldA,
10108 void * B,
size_t offB,
size_t ldB,
10109 cl_command_queue command_queue,
10110 cl_uint numEventsInWaitList,
10111 const cl_event *eventWaitList,
10126 size_t sx,
size_t sy,
10127 size_t element_size,
10128 const cl_mem A,
size_t offA,
size_t ldA,
10129 cl_mem B,
size_t offB,
size_t ldB,
10130 cl_command_queue command_queue,
10131 cl_uint numEventsInWaitList,
10132 const cl_event *eventWaitList);
10140 size_t sx,
size_t sy,
10141 size_t element_size,
10142 const cl_mem A,
size_t offA,
size_t ldA,
10143 cl_mem B,
size_t offB,
size_t ldB,
10144 cl_command_queue command_queue,
10145 cl_uint numEventsInWaitList,
10146 const cl_event *eventWaitList,
10169 size_t element_size,
10170 cl_mem A,
size_t offA,
10172 cl_command_queue command_queue,
10173 cl_uint numEventsInWaitList,
10174 const cl_event *eventWaitList);
10182 size_t element_size,
10183 cl_mem A,
size_t offA,
10184 const void * pattern,
10185 cl_command_queue command_queue,
10186 cl_uint numEventsInWaitList,
10187 const cl_event *eventWaitList,
10210 size_t element_size,
10211 cl_mem A,
size_t offA,
size_t ldA,
10212 size_t nrA,
size_t ncA,
10213 const void *pattern,
10214 cl_command_queue command_queue,
10215 cl_uint numEventsInWaitList,
10216 const cl_event *eventWaitList);
10251 size_t element_size,
10252 cl_mem A,
size_t offA,
size_t ldA,
10253 size_t nrA,
size_t ncA,
10254 size_t xA,
size_t yA,
10255 size_t nx,
size_t ny,
10256 const void *pattern,
10257 cl_command_queue command_queue,
10258 cl_uint numEventsInWaitList,
10259 const cl_event *eventWaitList);
10267 size_t element_size,
10268 cl_mem A,
size_t offA,
size_t ldA,
10269 size_t sxA,
size_t syA,
10271 size_t nx,
size_t ny,
10273 cl_command_queue command_queue,
10274 cl_uint numEventsInWaitList,
10275 const cl_event *eventWaitList,
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.
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. Extended version.
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
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
clblasStatus clblasGetVersion(cl_uint *major, cl_uint *minor, cl_uint *patch)
Get the clblas library version info.
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...
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.
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 ...
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.
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.
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
clblasOrder_
Definition: clBLAS.h:80
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
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.
clblasUplo_
Definition: clBLAS.h:96
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.
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.
enum clblasUplo_ clblasUplo
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.
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.
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
enum clblasOrder_ clblasOrder
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.
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
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
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.
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.
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.
void clblasTeardown(void)
Finalize the usage of the clblas library.
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.
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.
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.
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.
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.
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.
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.
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.
clblasTranspose_
Definition: clBLAS.h:86
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.
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
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.
enum clblasStatus_ clblasStatus
clblas error codes definition, incorporating OpenCL error definitions.
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.
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.
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.
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.
enum clblasDiag_ clblasDiag
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. Extended version.
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.
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.
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.
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.
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
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
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...
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.
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
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
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.
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...
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.
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...
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.
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.
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.
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. Exteneded version.
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...
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
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.
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.
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.
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.
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.
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.
clblasDiag_
Definition: clBLAS.h:104
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. Extended version.
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.
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.
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.
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.
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.
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.
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 ...
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...
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
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...
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.
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
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.
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
clblasStatus clblasSetup(void)
Initialize the clblas library.
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
clblasStatus_
clblas error codes definition, incorporating OpenCL error definitions.
Definition: clBLAS.h:125
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.
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.
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.
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.
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.
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.
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
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.
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
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. ...
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.
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...
clblasSide_
Definition: clBLAS.h:110
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
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.
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.
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
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.
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.
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. ...
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.
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 ...
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.
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.
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...
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. ...
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
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.
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.
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.
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.
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 ...
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
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...
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.
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...
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 ...
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...
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
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.
enum clblasSide_ clblasSide
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
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.
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. Extended version.
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.
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 ...
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.
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.
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.
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
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
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
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
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.
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...
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.
enum clblasTranspose_ clblasTranspose
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.
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.
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...
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.
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.
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.
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
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.
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.