cblas_dcopy与dcopy有什么区别?我主要使用dcopy,因为它出现在official manual from Intel中以复制我的矩阵。
double* a = (double*)mkl_malloc(4 * 4 * sizeof(double), 64);
double* b = (double*)mkl_malloc(4 * 4 * sizeof(double), 64);
... calculations/operations ...
int one = 1;
int sxtn = 16;
dcopy(&sxtn, a, &one, b, &one);
这是错的吗?我最近以online guide形式遇到了另一种方式:
cblas_dcopy(16, a, 1, b, 1);
如果我使用C ++,我应该使用哪种差异?
答案 0 :(得分:2)
dcopy()是Fortran的函数原型,而cblas_dcopy()用于C MLK ref manual中所示。
由于Fortran和C的相似性,您可以通过提供每个参数的指针来调用C代码中的Fortran函数,就像您所做的一样。
使用C接口更适合C ++。