今天学习了《Basic LinearAlgebra Subprobrams for Fortran Usage》。
为什么开发BLAS包
抽象线性代数运算的底层操作,便于设计和编程,提高代码的自文档性,方便从底层基本操作入手优化整个程序运行时间,一些底层操作涉及到一般程序难以考虑的问题,增加可移植性等等。
BLAS包的组成
函数 | 名称 |
点积 | DOT |
常数乘以向量加另一个向量 | AXPY |
准备Givens旋转 | ROTG |
实施旋转 | ROT |
准备修改过的Givens旋转 | ROTMG |
实施修改过的旋转 | GOTM |
把x复制到y | COPY |
交换x和y | SWAP |
2-范数(欧几里得长度) | NRM2 |
绝对值求和 | ASUM |
常数乘以向量 | SCAL |
最大绝对值元素的索引 | AMAX |