我想在BLAS中对矩阵A和向量x执行简单到位的操作A x \ to x。 sgemv向y提供A x + b y \,并且调用A x + 0 x将得到不正确的结果。执行这个简单任务的正确方法是什么? trmv提供了乘法,但仅适用于三角矩阵。
矩阵不是很大,可能是64 * 64,但是我有一个大约2 ^ 14的数组,并重复几次操作。注意,结构比A ^ n x更复杂:A取决于2 ^ 14数组中的位置和迭代步骤。我假设(可能不正确)交替A x \到y,A y \到x将具有更差的缓存性能?表现非常关键。
答案 0 :(得分:8)
我不确定是否可以进行就地增殖:
当乘以 A x 时,结果向量的每个元素都需要原始 x 的每个元素,因此至少需要与 X