Fork me on GitHub

src/arraymancer/tensor/backend/cublas

  Source Edit

Procs

proc cublas_axpy[T: SomeFloat](n: int; alpha: T; x: ptr T; incx: int; y: ptr T;
                               incy: int) {.inline.}
  Source Edit
proc cublas_copy[T: SomeFloat](n: int; x: ptr T; incx: int; y: ptr T; incy: int) {.
    inline.}
  Source Edit
proc cublas_dot[T: SomeFloat](n: int; x: ptr T; incx: int; y: ptr T; incy: int;
                              output: ptr T) {.inline.}
  Source Edit
proc cublas_geam[T: SomeFloat](transa, transb: cublasOperation_t; m, n: int;
                               alpha: T; A: ptr T; lda: int; beta: T; B: ptr T;
                               ldb: int; C: ptr T; ldc: int) {.inline.}
  Source Edit
proc cublas_gemm[T: SomeFloat](transa, transb: cublasOperation_t; m, n, k: int;
                               alpha: T; A: ptr T; lda: int; B: ptr T; ldb: int;
                               beta: T; C: ptr T; ldc: int) {.inline.}
  Source Edit
proc cublas_gemmStridedBatched[T: SomeFloat](transa, transb: cublasOperation_t;
    m, n, k: int; alpha: T; A: ptr T; lda: int; strideA: int; B: ptr T;
    ldb: int; strideB: int; beta: T; C: ptr T; ldc: int; strideC: int;
    batchCount: int) {.inline.}
  Source Edit
proc cublas_gemv[T: SomeFloat](trans: cublasOperation_t; m, n: int; alpha: T;
                               A: ptr T; lda: int; x: ptr T; incx: int; beta: T;
                               y: ptr T; incy: int) {.inline.}
  Source Edit
proc cublas_scal[T: SomeFloat](n: int; alpha: T; x: ptr T; incx: int) {.inline.}
  Source Edit
Arraymancer Technical reference Tutorial Spellbook (How-To's) Under the hood