'i' 在函数名 `cusparse<t>axpyi` 和 `cusparse<t>doti` 中的含义

Meaning of 'i' in function names `cusparse<t>axpyi` and `cusparse<t>doti`

cusparse<t>axpyicusparse<t>doti是CUDA稀疏矩阵库cuSPARSE中的函数名。

naming conventions部分说明<t>表示数据类型,axpyidotiroti均表示运算。但是,它没有进一步解释 'i' 在这些名称中的含义。

仅供参考,cusparse<t>axpyi 执行 a * x + y(所以我猜 'axpy' 表示 'ax plus y')。
cusparse<t>doti 执行稀疏向量 x 和密集向量 y.
点积 cusparse<t>roti 执行 旋转 (实际上我也不清楚它是如何工作的)。

感谢@talonmies 提供的信息!

cuSPARSE 很可能遵循 sparse BLAS 命名约定(阅读其中的论文):

If a sparse BLAS routine is an extension of a dense BLAS, the subprogram name is formed by appending a suffix character, I, standing for indexed, to the dense name.


或者您可以从 Intel MKL 网站(更直接)阅读:

If a sparse BLAS routine is an extension of a "dense" one, the subprogram name is formed by appending the suffix i (standing for indexed) to the name of the corresponding "dense" subprogram.