SAXPY
此条目没有列出任何参考或来源。 (2010年8月3日) |
SAXPY(Scalar Alpha X Plus Y)是一个在 Basic Linear Algebra Subprograms(BLAS)数据包中的函数,并且是一个并行向量处理机(vector processor)中常用的计算操作指令。SAXPY是标量乘法和矢量加法的组合:
其中是标量,和是矢量。对于大多数函数,BLAS数据包中都存在四种的SAXPY的变体,分别是SAXPY、DAXPY、CAXPY和ZAXPY,这些变体的区别仅在于标量的数据类型不同。例程的说明在外部链接中可以找到。
不同数据类型
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]; }