CBLAS/src/cblas_sgbmv.c(3)

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

πŸ’… CBLAS/src/cblas_sgbmv.c πŸ’…

okay so bestie, welcome to the glow-up of cblas_sgbmv.c β€” this is page three of the Library Functions Manual (CBLAS/src/cblas_sgbmv.c(3), yes she's a section 3 girlie) and she is literally the CBLAS wrapper for single-precision general band matrix–vector multiply. no cap, she's a whole vibe. let's get into it ✨


🌸 NAME 🌸

CBLAS/src/cblas_sgbmv.c β€” that's her. that's the name. short, iconic, to the point. periodt πŸ’…


✨ SYNOPSIS ✨

first things first, she includes her two besties:

#include 'cblas.h'
#include 'cblas_f77.h'

πŸŽ€ Macros

these little #define cuties are the bridge to the Fortran side of the family β€” they're all just aliases, no cap:

  • #define F77_TA β†’ &TA (address-of, because Fortran wants the pointer, iykyk)
  • #define F77_M β†’ M
  • #define F77_N β†’ N
  • #define F77_lda β†’ lda
  • #define F77_KL β†’ KL
  • #define F77_KU β†’ KU
  • #define F77_incX β†’ incX
  • #define F77_incY β†’ incY

πŸ¦‹ Functions

the main character herself 🫢:

void API_SUFFIX cblas_sgbmv (const CBLAS_LAYOUT layout, const
    CBLAS_TRANSPOSE TransA, const CBLAS_INT M, const CBLAS_INT N, const
    CBLAS_INT KL, const CBLAS_INT KU, const float alpha, const float *A,
    const CBLAS_INT lda, const float *X, const CBLAS_INT incX, const
    float beta, float *Y, const CBLAS_INT incY)

that's a lot of parameters and honestly? she ate. πŸ”₯


🧚 MACRO DEFINITION DOCUMENTATION 🧚

same iconic eight macros, now with their own dedicated section because Doxygen said so. giving them their moment πŸ’–

  • #define F77_incX β€” expands to incX
  • #define F77_incY β€” expands to incY
  • #define F77_KL β€” expands to KL
  • #define F77_KU β€” expands to KU
  • #define F77_lda β€” expands to lda
  • #define F77_M β€” expands to M
  • #define F77_N β€” expands to N
  • #define F77_TA β€” expands to &TA

all verified, all accounted for, nobody left behind πŸ’œ


πŸ‘‘ FUNCTION DOCUMENTATION πŸ‘‘

⭐ void API_SUFFIX cblas_sgbmv (...)

here she is in full glam, every single parameter exactly as declared:

void API_SUFFIX cblas_sgbmv (const CBLAS_LAYOUT layout, const
    CBLAS_TRANSPOSE TransA, const CBLAS_INT M, const CBLAS_INT N, const
    CBLAS_INT KL, const CBLAS_INT KU, const float alpha, const float * A,
    const CBLAS_INT lda, const float * X, const CBLAS_INT incX, const float
    beta, float * Y, const CBLAS_INT incY)

and the important footnote, bestie β€” don't skip this:

Definition at line 12 of file cblas_sgbmv.c. πŸ“

that's where the magic lives, fr fr.


🌈 AUTHOR 🌈

Generated automatically by Doxygen for LAPACK from the source code.

so nobody hand-wrote this in a Notes app at 2am β€” it's Doxygen doing Doxygen things, serving looks automatically for LAPACK. we respect the automation. πŸ€–βœ¨


and that's a wrap on our girl! πŸŽ€ she's from the LAPACK manual, Version 3.12.0, and this little section-3 page is dated and stamped as CBLAS/src/cblas_sgbmv.c(3) in the footer β€” mwah πŸ’‹ byeee, go multiply something banded, you've got this πŸ¦‹πŸ’–

πŸ“¦ where this page comes from