Lines Matching refs:call
87 static void setupGEMM(MTLaunchStructForEachBlas *mtls, const Allocation **ain, RsBlasCall* call, in setupGEMM() argument
90 mm = call->M; in setupGEMM()
91 nn = call->N; in setupGEMM()
92 kk = call->K; in setupGEMM()
96 mtls->sc = call; in setupGEMM()
145 RsBlasCall* call, MTLaunchStructForEachBlas *mtls) { in walk_tiled_gemm() argument
147 enum CBLAS_TRANSPOSE TransA = (enum CBLAS_TRANSPOSE)call->transA; in walk_tiled_gemm()
148 enum CBLAS_TRANSPOSE TransB = (enum CBLAS_TRANSPOSE)call->transB; in walk_tiled_gemm()
171 mEnd = rsMin(mEnd, (uint32_t)call->M); in walk_tiled_gemm()
178 nEnd = rsMin(nEnd, (uint32_t)call->N); in walk_tiled_gemm()
184 mEnd - mStart, nEnd - nStart, call->K, alpha, in walk_tiled_gemm()
194 RsBlasCall* call = (RsBlasCall*) mtls->sc; in walk_2d_sgemm() local
196 float alpha = call->alpha.f; in walk_2d_sgemm()
197 float beta = call->beta.f; in walk_2d_sgemm()
199 walk_tiled_gemm<float, float, FnPtr_cblas_sgemm>(cblas_sgemm, alpha, beta, 1, call, mtls); in walk_2d_sgemm()
205 RsBlasCall* call = (RsBlasCall*) mtls->sc; in walk_2d_dgemm() local
207 double alpha = call->alpha.d; in walk_2d_dgemm()
208 double beta = call->beta.d; in walk_2d_dgemm()
210 walk_tiled_gemm<double, double, FnPtr_cblas_dgemm>(cblas_dgemm, alpha, beta, 1, call, mtls); in walk_2d_dgemm()
216 RsBlasCall* call = (RsBlasCall*) mtls->sc; in walk_2d_cgemm() local
218 void * alpha = (void *)&call->alpha.c; in walk_2d_cgemm()
219 void * beta = (void *)&call->beta.c; in walk_2d_cgemm()
221 walk_tiled_gemm<float, void *, FnPtr_cblas_cgemm>(cblas_cgemm, alpha, beta, 2, call, mtls); in walk_2d_cgemm()
227 RsBlasCall* call = (RsBlasCall*) mtls->sc; in walk_2d_zgemm() local
229 void * alpha = (void *)&call->alpha.z; in walk_2d_zgemm()
230 void * beta = (void *)&call->beta.z; in walk_2d_zgemm()
232 walk_tiled_gemm<double, void *, FnPtr_cblas_zgemm>(cblas_zgemm, alpha, beta, 2, call, mtls); in walk_2d_zgemm()
243 RsBlasCall* call = (RsBlasCall*) usr; in invokeForEach() local
245 enum CBLAS_TRANSPOSE TransA = (enum CBLAS_TRANSPOSE)call->transA; in invokeForEach()
246 enum CBLAS_TRANSPOSE TransB = (enum CBLAS_TRANSPOSE)call->transB; in invokeForEach()
247 enum CBLAS_UPLO Uplo = (enum CBLAS_UPLO)call->uplo; in invokeForEach()
248 enum CBLAS_DIAG Diag = (enum CBLAS_DIAG)call->diag; in invokeForEach()
249 enum CBLAS_SIDE Side = (enum CBLAS_SIDE)call->side; in invokeForEach()
263 if (call->func != RsBlas_bnnm && !isBlasLibInitialized) { in invokeForEach()
272 switch (call->func) { in invokeForEach()
280 cblas_sgemv(CblasRowMajor, TransA, call->M, call->N, call->alpha.f, (float*)A, in invokeForEach()
281 lda, (float*)X, call->incX, call->beta.f, (float*)Y, call->incY); in invokeForEach()
285 cblas_sgbmv(CblasRowMajor, TransA, call->M, call->N, call->KL, call->KU, in invokeForEach()
286 call->alpha.f, (float*)A, lda, (float*)X, call->incX, in invokeForEach()
287 call->beta.f, (float*)Y, call->incY); in invokeForEach()
291 cblas_strmv(CblasRowMajor, Uplo, TransA, Diag, call->N, (float*)A, in invokeForEach()
292 lda, (float*)X, call->incX); in invokeForEach()
296 cblas_stbmv(CblasRowMajor, Uplo, TransA, Diag, call->N, call->K, (float*)A, in invokeForEach()
297 lda, (float*)X, call->incX); in invokeForEach()
302 cblas_stpmv(CblasRowMajor, Uplo, TransA, Diag, call->N, (float*)A, in invokeForEach()
303 (float*)X, call->incX); in invokeForEach()
307 cblas_strsv(CblasRowMajor, Uplo, TransA, Diag, call->N, (float*)A, lda, in invokeForEach()
308 (float*)X, call->incX); in invokeForEach()
312 cblas_stbsv(CblasRowMajor, Uplo, TransA, Diag, call->N, call->K, (float*)A, in invokeForEach()
313 lda, (float*)X, call->incX); in invokeForEach()
317 cblas_stpsv(CblasRowMajor, Uplo, TransA, Diag, call->N, (float*)A, in invokeForEach()
318 (float*)X, call->incX); in invokeForEach()
322 cblas_dgemv(CblasRowMajor, TransA, call->M, call->N, call->alpha.d, (double*)A, in invokeForEach()
323 lda, (double*)X, call->incX, call->beta.d, (double*)Y, call->incY); in invokeForEach()
327 cblas_dgbmv(CblasRowMajor, TransA, call->M, call->N, call->KL, call->KU, in invokeForEach()
328 call->alpha.d, (double*)A, lda, (double*)X, call->incX, in invokeForEach()
329 call->beta.d, (double*)Y, call->incY); in invokeForEach()
333 cblas_dtrmv(CblasRowMajor, Uplo, TransA, Diag, call->N, (double*)A, in invokeForEach()
334 lda, (double*)X, call->incX); in invokeForEach()
338 cblas_dtbmv(CblasRowMajor, Uplo, TransA, Diag, call->N, call->K, (double*)A, in invokeForEach()
339 lda, (double*)X, call->incX); in invokeForEach()
344 cblas_dtpmv(CblasRowMajor, Uplo, TransA, Diag, call->N, (double*)A, in invokeForEach()
345 (double*)X, call->incX); in invokeForEach()
349 cblas_dtrsv(CblasRowMajor, Uplo, TransA, Diag, call->N, (double*)A, lda, in invokeForEach()
350 (double*)X, call->incX); in invokeForEach()
354 cblas_dtbsv(CblasRowMajor, Uplo, TransA, Diag, call->N, call->K, (double*)A, in invokeForEach()
355 lda, (double*)X, call->incX); in invokeForEach()
359 cblas_dtpsv(CblasRowMajor, Uplo, TransA, Diag, call->N, (double*)A, in invokeForEach()
360 (double*)X, call->incX); in invokeForEach()
364 cblas_cgemv(CblasRowMajor, TransA, call->M, call->N, (void*)&call->alpha.c, (void*)A, in invokeForEach()
365 lda, (void*)X, call->incX, (void*)&call->beta.c, (void*)Y, call->incY); in invokeForEach()
369 cblas_cgbmv(CblasRowMajor, TransA, call->M, call->N, call->KL, call->KU, in invokeForEach()
370 (void*)&call->alpha.c, (void*)A, lda, (void*)X, call->incX, in invokeForEach()
371 (void*)&call->beta.c, (void*)Y, call->incY); in invokeForEach()
375 cblas_ctrmv(CblasRowMajor, Uplo, TransA, Diag, call->N, (void*)A, in invokeForEach()
376 lda, (void*)X, call->incX); in invokeForEach()
380 cblas_ctbmv(CblasRowMajor, Uplo, TransA, Diag, call->N, call->K, (void*)A, in invokeForEach()
381 lda, (void*)X, call->incX); in invokeForEach()
386 cblas_ctpmv(CblasRowMajor, Uplo, TransA, Diag, call->N, (void*)A, in invokeForEach()
387 (void*)X, call->incX); in invokeForEach()
391 cblas_ctrsv(CblasRowMajor, Uplo, TransA, Diag, call->N, (void*)A, lda, in invokeForEach()
392 (void*)X, call->incX); in invokeForEach()
396 cblas_ctbsv(CblasRowMajor, Uplo, TransA, Diag, call->N, call->K, (void*)A, in invokeForEach()
397 lda, (void*)X, call->incX); in invokeForEach()
401 cblas_ctpsv(CblasRowMajor, Uplo, TransA, Diag, call->N, (void*)A, in invokeForEach()
402 (void*)X, call->incX); in invokeForEach()
406 cblas_zgemv(CblasRowMajor, TransA, call->M, call->N, (void*)&call->alpha.z, (void*)A, in invokeForEach()
407 lda, (void*)X, call->incX, (void*)&call->beta.z, (void*)Y, call->incY); in invokeForEach()
411 cblas_zgbmv(CblasRowMajor, TransA, call->M, call->N, call->KL, call->KU, in invokeForEach()
412 (void*)&call->alpha.z, (void*)A, lda, (void*)X, call->incX, in invokeForEach()
413 (void*)&call->beta.z, (void*)Y, call->incY); in invokeForEach()
417 cblas_ztrmv(CblasRowMajor, Uplo, TransA, Diag, call->N, (void*)A, in invokeForEach()
418 lda, (void*)X, call->incX); in invokeForEach()
422 cblas_ztbmv(CblasRowMajor, Uplo, TransA, Diag, call->N, call->K, (void*)A, in invokeForEach()
423 lda, (void*)X, call->incX); in invokeForEach()
428 cblas_ztpmv(CblasRowMajor, Uplo, TransA, Diag, call->N, (void*)A, in invokeForEach()
429 (void*)X, call->incX); in invokeForEach()
433 cblas_ztrsv(CblasRowMajor, Uplo, TransA, Diag, call->N, (void*)A, lda, in invokeForEach()
434 (void*)X, call->incX); in invokeForEach()
438 cblas_ztbsv(CblasRowMajor, Uplo, TransA, Diag, call->N, call->K, (void*)A, in invokeForEach()
439 lda, (void*)X, call->incX); in invokeForEach()
443 cblas_ztpsv(CblasRowMajor, Uplo, TransA, Diag, call->N, (void*)A, in invokeForEach()
444 (void*)X, call->incX); in invokeForEach()
451 cblas_ssymv(CblasRowMajor, Uplo, call->N, call->alpha.f, (float*)A, lda, in invokeForEach()
452 (float*)X, call->incX, call->beta.f, (float*)Y, call->incY); in invokeForEach()
456 cblas_ssbmv(CblasRowMajor, Uplo, call->N, call->K, call->alpha.f, in invokeForEach()
457 (float*)A, lda, (float*)X, call->incX, call->beta.f, in invokeForEach()
458 (float*)Y, call->incY); in invokeForEach()
463 cblas_sspmv(CblasRowMajor, Uplo, call->N, call->alpha.f, (float*)A, in invokeForEach()
464 (float*)X, call->incX, call->beta.f, (float*)Y, call->incY); in invokeForEach()
469 cblas_sger(CblasRowMajor, call->M, call->N, call->alpha.f, (float*)X, in invokeForEach()
470 call->incX, (float*)Y, call->incY, (float*)A, lda); in invokeForEach()
474 cblas_ssyr(CblasRowMajor, Uplo, call->N, call->alpha.f, (float*)X, call->incX, in invokeForEach()
480 cblas_sspr(CblasRowMajor, Uplo, call->N, call->alpha.f, (float*)X, call->incX, in invokeForEach()
485 cblas_ssyr2(CblasRowMajor, Uplo, call->N, call->alpha.f, (float*)X, call->incX, in invokeForEach()
486 (float*)Y, call->incY, (float*)A, lda); in invokeForEach()
491 cblas_sspr2(CblasRowMajor, Uplo, call->N, call->alpha.f, (float*)X, call->incX, in invokeForEach()
492 (float*)Y, call->incY, (float*)A); in invokeForEach()
496 cblas_dsymv(CblasRowMajor, Uplo, call->N, call->alpha.d, (double*)A, lda, in invokeForEach()
497 (double*)X, call->incX, call->beta.d, (double*)Y, call->incY); in invokeForEach()
501 cblas_dsbmv(CblasRowMajor, Uplo, call->N, call->K, call->alpha.d, in invokeForEach()
502 (double*)A, lda, (double*)X, call->incX, call->beta.d, in invokeForEach()
503 (double*)Y, call->incY); in invokeForEach()
508 cblas_dspmv(CblasRowMajor, Uplo, call->N, call->alpha.d, (double*)A, in invokeForEach()
509 (double*)X, call->incX, call->beta.d, (double*)Y, call->incY); in invokeForEach()
514 cblas_dger(CblasRowMajor, call->M, call->N, call->alpha.d, (double*)X, in invokeForEach()
515 call->incX, (double*)Y, call->incY, (double*)A, lda); in invokeForEach()
519 cblas_dsyr(CblasRowMajor, Uplo, call->N, call->alpha.d, (double*)X, call->incX, in invokeForEach()
525 cblas_dspr(CblasRowMajor, Uplo, call->N, call->alpha.d, (double*)X, call->incX, in invokeForEach()
530 cblas_dsyr2(CblasRowMajor, Uplo, call->N, call->alpha.d, (double*)X, call->incX, in invokeForEach()
531 (double*)Y, call->incY, (double*)A, lda); in invokeForEach()
536 cblas_dspr2(CblasRowMajor, Uplo, call->N, call->alpha.d, (double*)X, call->incX, in invokeForEach()
537 (double*)Y, call->incY, (double*)A); in invokeForEach()
543 cblas_chemv(CblasRowMajor, Uplo, call->N, (void*)&call->alpha.c, A, lda, in invokeForEach()
544 X, call->incX, (void*)&call->beta.c, Y, call->incY); in invokeForEach()
548 cblas_chbmv(CblasRowMajor, Uplo, call->N, call->K, (void*)&call->alpha.c, in invokeForEach()
549 A, lda, X, call->incX, (void*)&call->beta.c, Y, call->incY); in invokeForEach()
553 cblas_chpmv(CblasRowMajor, Uplo, call->N, (void*)&call->alpha.c, A, in invokeForEach()
554 X, call->incX, (void*)&call->beta.c, Y, call->incY); in invokeForEach()
558 cblas_cgeru(CblasRowMajor, call->M, call->N, (void*)&call->alpha.c, in invokeForEach()
559 X, call->incX, Y, call->incY, A, lda); in invokeForEach()
563 cblas_cgerc(CblasRowMajor, call->M, call->N, (void*)&call->alpha.c, in invokeForEach()
564 X, call->incX, Y, call->incY, A, lda); in invokeForEach()
568 cblas_cher(CblasRowMajor, Uplo, call->N, call->alpha.f, in invokeForEach()
569 X, call->incX, A, lda); in invokeForEach()
574 cblas_chpr(CblasRowMajor, Uplo, call->N, call->alpha.f, X, in invokeForEach()
575 call->incX, A); in invokeForEach()
579 cblas_cher2(CblasRowMajor, Uplo, call->N, (void*)&call->alpha.c, in invokeForEach()
580 X, call->incX, Y, call->incY, A, lda); in invokeForEach()
585 cblas_chpr2(CblasRowMajor, Uplo, call->N, (void*)&call->alpha.c, X, in invokeForEach()
586 call->incX, Y, call->incY, A); in invokeForEach()
590 cblas_zhemv(CblasRowMajor, Uplo, call->N, (void*)&call->alpha.z, A, lda, in invokeForEach()
591 X, call->incX, (void*)&call->beta.z, Y, call->incY); in invokeForEach()
595 cblas_zhbmv(CblasRowMajor, Uplo, call->N, call->K, (void*)&call->alpha.z, in invokeForEach()
596 A, lda, X, call->incX, (void*)&call->beta.z, Y, call->incY); in invokeForEach()
600 cblas_zhpmv(CblasRowMajor, Uplo, call->N, (void*)&call->alpha.z, A, in invokeForEach()
601 X, call->incX, (void*)&call->beta.z, Y, call->incY); in invokeForEach()
605 cblas_zgeru(CblasRowMajor, call->M, call->N, (void*)&call->alpha.z, in invokeForEach()
606 X, call->incX, Y, call->incY, A, lda); in invokeForEach()
610 cblas_zgerc(CblasRowMajor, call->M, call->N, (void*)&call->alpha.z, in invokeForEach()
611 X, call->incX, Y, call->incY, A, lda); in invokeForEach()
615 cblas_zher(CblasRowMajor, Uplo, call->N, call->alpha.d, in invokeForEach()
616 X, call->incX, A, lda); in invokeForEach()
621 cblas_zhpr(CblasRowMajor, Uplo, call->N, call->alpha.d, X, in invokeForEach()
622 call->incX, A); in invokeForEach()
626 cblas_zher2(CblasRowMajor, Uplo, call->N, (void*)&call->alpha.z, in invokeForEach()
627 X, call->incX, Y, call->incY, A, lda); in invokeForEach()
632 cblas_zhpr2(CblasRowMajor, Uplo, call->N, (void*)&call->alpha.z, X, in invokeForEach()
633 call->incX, Y, call->incY, A); in invokeForEach()
638 setupGEMM(&mtls, ain, call, mCtx); in invokeForEach()
643 cblas_sgemm(CblasRowMajor, TransA, TransB, call->M, call->N, call->K, call->alpha.f, in invokeForEach()
644 (float*)A, lda, (float*)B, ldb, call->beta.f, (float*)C, ldc); in invokeForEach()
649 cblas_ssymm(CblasRowMajor, Side, Uplo, call->M, call->N, call->alpha.f, (float*)A, in invokeForEach()
650 lda, (float*)B, ldb, call->beta.f, (float*)C, ldc); in invokeForEach()
654 cblas_ssyrk(CblasRowMajor, Uplo, TransA, call->N, call->K, call->alpha.f, (float*)A, in invokeForEach()
655 lda, call->beta.f, (float*)C, ldc); in invokeForEach()
659 cblas_ssyr2k(CblasRowMajor, Uplo, TransA, call->N, call->K, call->alpha.f, (float*)A, in invokeForEach()
660 lda, (float*)B, ldb, call->beta.f, (float*)C, ldc); in invokeForEach()
664 cblas_strmm(CblasRowMajor, Side, Uplo, TransA, Diag, call->M, call->N, call->alpha.f, in invokeForEach()
669 cblas_strsm(CblasRowMajor, Side, Uplo, TransA, Diag, call->M, call->N, call->alpha.f, in invokeForEach()
675 setupGEMM(&mtls, ain, call, mCtx); in invokeForEach()
680 cblas_dgemm(CblasRowMajor, TransA, TransB, call->M, call->N, call->K, call->alpha.d, in invokeForEach()
681 (double*)A, lda, (double*)B, ldb, call->beta.d, (double*)C, ldc); in invokeForEach()
686 cblas_dsymm(CblasRowMajor, Side, Uplo, call->M, call->N, call->alpha.d, (double*)A, in invokeForEach()
687 lda, (double*)B, ldb, call->beta.d, (double*)C, ldc); in invokeForEach()
691 cblas_dsyrk(CblasRowMajor, Uplo, TransA, call->N, call->K, call->alpha.d, (double*)A, in invokeForEach()
692 lda, call->beta.d, (double*)C, ldc); in invokeForEach()
696 cblas_dsyr2k(CblasRowMajor, Uplo, TransA, call->N, call->K, call->alpha.d, (double*)A, in invokeForEach()
697 lda, (double*)B, ldb, call->beta.d, (double*)C, ldc); in invokeForEach()
701 cblas_dtrmm(CblasRowMajor, Side, Uplo, TransA, Diag, call->M, call->N, call->alpha.d, in invokeForEach()
706 cblas_dtrsm(CblasRowMajor, Side, Uplo, TransA, Diag, call->M, call->N, call->alpha.d, in invokeForEach()
711 setupGEMM(&mtls, ain, call, mCtx); in invokeForEach()
716 … cblas_cgemm(CblasRowMajor, TransA, TransB, call->M, call->N, call->K, (void*)&call->alpha.c, in invokeForEach()
717 A, lda, B, ldb, (void*)&call->beta.c, C, ldc); in invokeForEach()
722 cblas_csymm(CblasRowMajor, Side, Uplo, call->M, call->N, (void*)&call->alpha.c, A, in invokeForEach()
723 lda, B, ldb, (void*)&call->beta.c, C, ldc); in invokeForEach()
727 cblas_csyrk(CblasRowMajor, Uplo, TransA, call->N, call->K, (void*)&call->alpha.c, A, in invokeForEach()
728 lda, (void*)&call->beta.c, C, ldc); in invokeForEach()
732 cblas_csyr2k(CblasRowMajor, Uplo, TransA, call->N, call->K, (void*)&call->alpha.c, A, in invokeForEach()
733 lda, B, ldb, (void*)&call->beta.c, C, ldc); in invokeForEach()
737 … cblas_ctrmm(CblasRowMajor, Side, Uplo, TransA, Diag, call->M, call->N, (void*)&call->alpha.c, in invokeForEach()
742 … cblas_ctrsm(CblasRowMajor, Side, Uplo, TransA, Diag, call->M, call->N, (void*)&call->alpha.c, in invokeForEach()
747 setupGEMM(&mtls, ain, call, mCtx); in invokeForEach()
752 … cblas_zgemm(CblasRowMajor, TransA, TransB, call->M, call->N, call->K, (void*)&call->alpha.z, in invokeForEach()
753 A, lda, B, ldb, (void*)&call->beta.z, C, ldc); in invokeForEach()
758 cblas_zsymm(CblasRowMajor, Side, Uplo, call->M, call->N, (void*)&call->alpha.z, A, in invokeForEach()
759 lda, B, ldb, (void*)&call->beta.z, C, ldc); in invokeForEach()
763 cblas_zsyrk(CblasRowMajor, Uplo, TransA, call->N, call->K, (void*)&call->alpha.z, A, in invokeForEach()
764 lda, (void*)&call->beta.z, C, ldc); in invokeForEach()
768 cblas_zsyr2k(CblasRowMajor, Uplo, TransA, call->N, call->K, (void*)&call->alpha.z, A, in invokeForEach()
769 lda, B, ldb, (void*)&call->beta.z, C, ldc); in invokeForEach()
773 … cblas_ztrmm(CblasRowMajor, Side, Uplo, TransA, Diag, call->M, call->N, (void*)&call->alpha.z, in invokeForEach()
778 … cblas_ztrsm(CblasRowMajor, Side, Uplo, TransA, Diag, call->M, call->N, (void*)&call->alpha.z, in invokeForEach()
785 cblas_chemm(CblasRowMajor, Side, Uplo, call->M, call->N, (void*)&call->alpha.c, A, lda, in invokeForEach()
786 B, ldb, (void*)&call->beta.c, C, ldc); in invokeForEach()
790 cblas_cherk(CblasRowMajor, Uplo, TransA, call->N, call->K, call->alpha.f, A, lda, in invokeForEach()
791 call->beta.f, C, ldc); in invokeForEach()
795 cblas_cher2k(CblasRowMajor, Uplo, TransA, call->N, call->K, (void*)&call->alpha.c, A, lda, in invokeForEach()
796 B, ldb, call->beta.f, C, ldc); in invokeForEach()
801 cblas_zhemm(CblasRowMajor, Side, Uplo, call->M, call->N, (void*)&call->alpha.z, A, lda, in invokeForEach()
802 B, ldb, (void*)&call->beta.z, C, ldc); in invokeForEach()
806 cblas_zherk(CblasRowMajor, Uplo, TransA, call->N, call->K, call->alpha.d, A, lda, in invokeForEach()
807 call->beta.d, C, ldc); in invokeForEach()
811 cblas_zher2k(CblasRowMajor, Uplo, TransA, call->N, call->K, (void*)&call->alpha.z, A, lda, in invokeForEach()
812 B, ldb, call->beta.d, C, ldc); in invokeForEach()
818 kernelBNNM(call->M, call->N, call->K, in invokeForEach()
819 (const uint8_t*)A, call->a_offset, lda, in invokeForEach()
820 (const uint8_t*)B, call->b_offset, ldb, in invokeForEach()
821 (uint8_t*)C, call->c_offset, ldc, in invokeForEach()
822 call->c_mult_int); in invokeForEach()