C_ZBLAS3.C(3)

πŸ“¦
version 3.12.1 Β· 3 versions
, in arch rolling

πŸ’… CBLAS/testing/c_zblas3.c(3) β€” the girlies' guide to the complex BLAS level-3 test file

okay so bestie, this is the manual page for CBLAS/testing/c_zblas3.c, from the CBLAS/testing corner of the LAPACK universe. it's the test harness for the complex (that's the z, babe ✨) level-3 BLAS routines, and honestly it's giving "backstage pass to the whole operation." no cap.


✨ NAME ✨

CBLAS/testing/c_zblas3.c β€” literally just the file herself. that's the name. that's the whole name. periodt. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

the includes it rolls with:

#include <stdlib.h>
#include <stdio.h>
#include 'cblas.h'
#include 'cblas_test.h'

(yes, cblas.h and cblas_test.h are in single quotes in the original β€” not me, not my fault, I'm just the messenger 🫢)

🌸 Macros

#define TEST_COL_MJR   0
#define TEST_ROW_MJR   1
#define UNDEFINED   -1

🌈 Functions

all ten of the F77_-prefixed test entry points, in the order the page lists them:

void F77_zgemm (CBLAS_INT *layout, char *transpa, char *transpb,
    CBLAS_INT *m, CBLAS_INT *n, CBLAS_INT *k, CBLAS_TEST_ZOMPLEX *alpha,
    CBLAS_TEST_ZOMPLEX *a, CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX *b,
    CBLAS_INT *ldb, CBLAS_TEST_ZOMPLEX *beta, CBLAS_TEST_ZOMPLEX *c,
    CBLAS_INT *ldc)
void F77_zgemmtr (CBLAS_INT *layout, char *uplop, char *transpa, char
    *transpb, CBLAS_INT *n, CBLAS_INT *k, CBLAS_TEST_ZOMPLEX *alpha,
    CBLAS_TEST_ZOMPLEX *a, CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX *b,
    CBLAS_INT *ldb, CBLAS_TEST_ZOMPLEX *beta, CBLAS_TEST_ZOMPLEX *c,
    CBLAS_INT *ldc)
void F77_zhemm (CBLAS_INT *layout, char *rtlf, char *uplow, CBLAS_INT
    *m, CBLAS_INT *n, CBLAS_TEST_ZOMPLEX *alpha, CBLAS_TEST_ZOMPLEX *a,
    CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX *b, CBLAS_INT *ldb,
    CBLAS_TEST_ZOMPLEX *beta, CBLAS_TEST_ZOMPLEX *c, CBLAS_INT *ldc)
void F77_zsymm (CBLAS_INT *layout, char *rtlf, char *uplow, CBLAS_INT
    *m, CBLAS_INT *n, CBLAS_TEST_ZOMPLEX *alpha, CBLAS_TEST_ZOMPLEX *a,
    CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX *b, CBLAS_INT *ldb,
    CBLAS_TEST_ZOMPLEX *beta, CBLAS_TEST_ZOMPLEX *c, CBLAS_INT *ldc)
void F77_zherk (CBLAS_INT *layout, char *uplow, char *transp, CBLAS_INT
    *n, CBLAS_INT *k, double *alpha, CBLAS_TEST_ZOMPLEX *a, CBLAS_INT
    *lda, double *beta, CBLAS_TEST_ZOMPLEX *c, CBLAS_INT *ldc)
void F77_zsyrk (CBLAS_INT *layout, char *uplow, char *transp, CBLAS_INT
    *n, CBLAS_INT *k, CBLAS_TEST_ZOMPLEX *alpha, CBLAS_TEST_ZOMPLEX *a,
    CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX *beta, CBLAS_TEST_ZOMPLEX *c,
    CBLAS_INT *ldc)
void F77_zher2k (CBLAS_INT *layout, char *uplow, char *transp, CBLAS_INT
    *n, CBLAS_INT *k, CBLAS_TEST_ZOMPLEX *alpha, CBLAS_TEST_ZOMPLEX *a,
    CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX *b, CBLAS_INT *ldb, double *beta,
    CBLAS_TEST_ZOMPLEX *c, CBLAS_INT *ldc)
void F77_zsyr2k (CBLAS_INT *layout, char *uplow, char *transp, CBLAS_INT
    *n, CBLAS_INT *k, CBLAS_TEST_ZOMPLEX *alpha, CBLAS_TEST_ZOMPLEX *a,
    CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX *b, CBLAS_INT *ldb,
    CBLAS_TEST_ZOMPLEX *beta, CBLAS_TEST_ZOMPLEX *c, CBLAS_INT *ldc)
void F77_ztrmm (CBLAS_INT *layout, char *rtlf, char *uplow, char
    *transp, char *diagn, CBLAS_INT *m, CBLAS_INT *n, CBLAS_TEST_ZOMPLEX
    *alpha, CBLAS_TEST_ZOMPLEX *a, CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX
    *b, CBLAS_INT *ldb)
void F77_ztrsm (CBLAS_INT *layout, char *rtlf, char *uplow, char
    *transp, char *diagn, CBLAS_INT *m, CBLAS_INT *n, CBLAS_TEST_ZOMPLEX
    *alpha, CBLAS_TEST_ZOMPLEX *a, CBLAS_INT *lda, CBLAS_TEST_ZOMPLEX
    *b, CBLAS_INT *ldb)

like, every single param is a pointer, every single string is a char *, and CBLAS_TEST_ZOMPLEX is the mood. that's just how we do it here πŸ”₯


πŸŽ€ Macro Definition Documentation πŸŽ€

these three little icons, defined right up top in c_zblas3.c:

  • #define TEST_COL_MJR 0 β€” the "column major" flag, and it's literally just 0. definition at line 11 of file c_zblas3.c.
  • #define TEST_ROW_MJR 1 β€” the "row major" flag, sitting pretty at 1. definition at line 12 of file c_zblas3.c.
  • #define UNDEFINED -1 β€” the "idk her" value, -1. definition at line 13 of file c_zblas3.c.

πŸ’œ Function Documentation πŸ’œ

here's the tea on all ten, exactly as documented (definition line numbers included because we're thorough in this house πŸ‘‘):

⭐ void F77_zgemm (...)

void F77_zgemm (CBLAS_INT * layout, char * transpa, char * transpb,
    CBLAS_INT * m, CBLAS_INT * n, CBLAS_INT * k, CBLAS_TEST_ZOMPLEX * alpha,
    CBLAS_TEST_ZOMPLEX * a, CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * b,
    CBLAS_INT * ldb, CBLAS_TEST_ZOMPLEX * beta, CBLAS_TEST_ZOMPLEX * c,
    CBLAS_INT * ldc)

definition at line 15 of file c_zblas3.c.

⭐ void F77_zgemmtr (...)

void F77_zgemmtr (CBLAS_INT * layout, char * uplop, char * transpa, char *
    transpb, CBLAS_INT * n, CBLAS_INT * k, CBLAS_TEST_ZOMPLEX * alpha,
    CBLAS_TEST_ZOMPLEX * a, CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * b,
    CBLAS_INT * ldb, CBLAS_TEST_ZOMPLEX * beta, CBLAS_TEST_ZOMPLEX * c,
    CBLAS_INT * ldc)

definition at line 97 of file c_zblas3.c.

⭐ void F77_zhemm (...)

void F77_zhemm (CBLAS_INT * layout, char * rtlf, char * uplow, CBLAS_INT *
    m, CBLAS_INT * n, CBLAS_TEST_ZOMPLEX * alpha, CBLAS_TEST_ZOMPLEX * a,
    CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * b, CBLAS_INT * ldb,
    CBLAS_TEST_ZOMPLEX * beta, CBLAS_TEST_ZOMPLEX * c, CBLAS_INT * ldc)

definition at line 177 of file c_zblas3.c.

⭐ void F77_zher2k (...)

void F77_zher2k (CBLAS_INT * layout, char * uplow, char * transp, CBLAS_INT
    * n, CBLAS_INT * k, CBLAS_TEST_ZOMPLEX * alpha, CBLAS_TEST_ZOMPLEX * a,
    CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * b, CBLAS_INT * ldb, double * beta,
    CBLAS_TEST_ZOMPLEX * c, CBLAS_INT * ldc)

definition at line 423 of file c_zblas3.c.

heads up: in this one beta is a double * β€” not a CBLAS_TEST_ZOMPLEX * like her siblings. that's not a typo, that's canon πŸ’€

⭐ void F77_zherk (...)

void F77_zherk (CBLAS_INT * layout, char * uplow, char * transp, CBLAS_INT *
    n, CBLAS_INT * k, double * alpha, CBLAS_TEST_ZOMPLEX * a, CBLAS_INT *
    lda, double * beta, CBLAS_TEST_ZOMPLEX * c, CBLAS_INT * ldc)

definition at line 304 of file c_zblas3.c.

and here both alpha and beta are double *. iconic, honestly ✨

⭐ void F77_zsymm (...)

void F77_zsymm (CBLAS_INT * layout, char * rtlf, char * uplow, CBLAS_INT *
    m, CBLAS_INT * n, CBLAS_TEST_ZOMPLEX * alpha, CBLAS_TEST_ZOMPLEX * a,
    CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * b, CBLAS_INT * ldb,
    CBLAS_TEST_ZOMPLEX * beta, CBLAS_TEST_ZOMPLEX * c, CBLAS_INT * ldc)

definition at line 245 of file c_zblas3.c.

⭐ void F77_zsyr2k (...)

void F77_zsyr2k (CBLAS_INT * layout, char * uplow, char * transp, CBLAS_INT
    * n, CBLAS_INT * k, CBLAS_TEST_ZOMPLEX * alpha, CBLAS_TEST_ZOMPLEX * a,
    CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * b, CBLAS_INT * ldb,
    CBLAS_TEST_ZOMPLEX * beta, CBLAS_TEST_ZOMPLEX * c, CBLAS_INT * ldc)

definition at line 491 of file c_zblas3.c.

⭐ void F77_zsyrk (...)

void F77_zsyrk (CBLAS_INT * layout, char * uplow, char * transp, CBLAS_INT *
    n, CBLAS_INT * k, CBLAS_TEST_ZOMPLEX * alpha, CBLAS_TEST_ZOMPLEX * a,
    CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * beta, CBLAS_TEST_ZOMPLEX * c,
    CBLAS_INT * ldc)

definition at line 364 of file c_zblas3.c.

⭐ void F77_ztrmm (...)

void F77_ztrmm (CBLAS_INT * layout, char * rtlf, char * uplow, char *
    transp, char * diagn, CBLAS_INT * m, CBLAS_INT * n, CBLAS_TEST_ZOMPLEX *
    alpha, CBLAS_TEST_ZOMPLEX * a, CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * b,
    CBLAS_INT * ldb)

definition at line 559 of file c_zblas3.c.

note she takes no beta and no c/ldc β€” she's built different πŸ¦‹

⭐ void F77_ztrsm (...)

void F77_ztrsm (CBLAS_INT * layout, char * rtlf, char * uplow, char *
    transp, char * diagn, CBLAS_INT * m, CBLAS_INT * n, CBLAS_TEST_ZOMPLEX *
    alpha, CBLAS_TEST_ZOMPLEX * a, CBLAS_INT * lda, CBLAS_TEST_ZOMPLEX * b,
    CBLAS_INT * ldb)

definition at line 622 of file c_zblas3.c.

same deal β€” no beta, no c, no ldc. she keeps it lean πŸ’…

🌟 Author 🌟

generated automatically by Doxygen for LAPACK from the source code. so like… nobody wrote this by hand, the robots did it, and honestly? they ate. πŸ€–βœ¨


that's the whole page, bestie β€” no skips, no omissions, every flag, every line number, every single pointer. slay. 🫢

signing off from LAPACK, Version 3.12.0, on manual page CBLAS/testing/c_zblas3.c(3) β€” see you in the next one, mwah πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from