0

我目前正在将 Matlab 脚本的时序与用 C 编写的脚本进行比较。其中一个主要部分是计算特征值和三对角矩阵的特征向量矩阵(稍后我将使用 9 个对角矩阵)。目前,C 实现使用 LAPACKE_zgeev()。

当使用相同的三对角矩阵时,Matlab 的 eig() 在 1 个 openmp 线程(在 C 中)下比 LAPACKE_zgeev() 高出两倍,在使用 4 个线程(在这台机器上都可用)运行时比 LAPACKE_zgeev() 高出 10%。

LAPACKE_zgeev() 有更快的替代方法吗?最好是通过带状矩阵使用较少内存的一种。

4

0 回答 0