OpenBLAS 如何支持任意大小的向量和矩阵?

How does OpenBLAS support vectors and matrices of arbitrary sizes?

我正在努力理解 . From what I understand about the x86 processor architectures, they contain special registers of limited size。这些寄存器允许加载浮点数,并允许跨寄存器广播操作。您如何有效地绕过有限的尺寸?

我正在查看 OpenBLAS 源代码来解决这个问题,但尽管查看了 dev docs,但无法弄清楚 gemv 等简单操作的一般流程。

OpenBLAS 依靠内核来高效地执行这些操作。在此上下文中,"kernel" 是专门为线性代数运算编写的汇编代码。例如,对于 gemv 操作,请参阅 x86-64 and ARM64 这些内核。