跳转到内容

SAXPY

维基百科,自由的百科全书

SAXPYScalar Alpha X Plus Y)是一个在 Basic Linear Algebra Subprograms(BLAS)数据包中的函数,并且是一个并行向量处理机(vector processor)中常用的计算操作指令。SAXPY是标量乘法矢量加法的组合:

其中标量矢量。对於大多数函数,BLAS数据包中都存在四种的SAXPY的变体,分别是SAXPYDAXPYCAXPYZAXPY,这些变体的区别仅在於标量数据类型不同。例程的说明在外部链接中可以找到。

不同数据类型

[编辑]

SAXPY

[编辑]

SAXPY不仅是标量乘法加矢量加法运算的组合的通称,而且是特定的变体,其中标量和矢量单精度的。

DAXPY

[编辑]

DAXPY双精度表示SAXPY。

CAXPY

[编辑]

CAXPY複數表示SAXPY。

ZAXPY

[编辑]

ZAXPY双精度複數表示SAXPY。

泛型实现

[编辑]

SAXPY最简单的泛型实现如下:

for (int i = m; i < n; i++) {
   y[i] = a * x[i] + y[i];
}

外部链接

[编辑]