我有一个长度为10的列向量A和一个10x10的矩阵B。 B的内存存储方式是按列主序(column major)的。 我想用A向量覆盖B矩阵的第一行。
显然,我可以执行以下操作:
for ( int i=0; i < 10; i++ )
{
B[0 + 10 * i] = A[i];
}
在 0 + 10 * i
中我故意留下了零以突出 B 使用的列主存储(零是行索引)。
在CUDA领域发生了一些有趣的事情之后,我想到是否存在执行跨步内存复制的CPU函数? 我猜在低级别上,性能取决于是否存在跨步加载/存储指令,在 x86汇编中我不记得有这样的指令?