英特尔MKL库提供了一组优化的线程函数,但对于迭代稀疏求解器(ISS)的情况,预处理的共轭梯度方法似乎并不简单。
更准确地说,使用预处理技术,例如不完整的Cholesky分解或ILU,在某些时候需要稀疏的三角形求解器,但是执行三角形求解mkl_cspblas_?csrtrsv
的相应MKL函数没有线程化。我的问题是,是否有任何稀疏的求解器库可以击败多核处理器上当前版本的MKL(没有完全线程化)?
答案 0 :(得分:1)
我不知道它是否胜过MKL--它毕竟是一个研究项目 - 但是有一种混合模式OpemMP+MPI branch of PETSc可用。在我的小组对SpMV实现的实验中,它可以很好地缩放到简单的矩阵,但不适用于我们经常处理的更复杂的矩阵。根据你的问题,你可能会有更好的运气。