英特尔® 数学核心函数库既包含使用直接方法的稀疏矩阵解算器,也包含使用间接/迭代方法的稀疏矩阵解算器。
矩阵类型 | 英特尔® 数学核心函数库稀疏矩阵解算器 |
直接 | 间接/迭代 |
常规 | PARDISO(d、z)
(并行直接解算器) | FGMRES (d) |
对称矩阵 | 正数 | PARDISO(d、z)
(并行直接解算器) | 共轭梯度 (d) |
无穷大 | PARDISO(d、z)
(并行直接解算器) | |
d:支持双精度数据
z:支持双精度复杂数据
新增核外支持在 10.0 版本中,我们增加了对 PARDISO 的核外内存的支持。虽然计算机的内存容量已大幅增加,但是仍然有许多问题因为规模过大而无法通过内存中解决方案加以解决。对于受到规模问题限制的那些客户,我们鼓励您尝试新推出的核外内存 PARDISO 解决方案。我们已经认识到还有进一步优化性能的余地,并且计划在最近几个月内发布一个英特尔® MKL 更新以获得显著的性能提升。
经巴塞尔大学授权许可的 PARDISO* 解算器是一种线程安全、高性能且内存利用率高的软件库,用于在共享内存的多处理器上解算稀疏的对称以及不对称的大型线性方程组。
PARDISO 解算器综合运用左右标准的级别 3 BLAS 超节点技术,来利用管道并行处理功能和内存层次结构。要提高串行和并行稀疏矩阵数值因数分解的性能,算法将以级别 3 BLAS 更新为依据。
对于大型问题,数值实验表明,并行算法的可伸缩性几乎独立于共享内存的多处理架构,观测到的处理速度提高了七倍(在八个处理器上)之多。这种并行处理的方式以 OpenMP* 指令为基础。
1CCLRC (UK) 已就直接稀疏矩阵解算器发布了一份详细的分析报告,该报告表明 PARDISO 相对其他备选方案而言效果非常好。查看
报告主页 
或直接转至
.PDF 文件
[401KB] 。
Cranes Software 也发表了一篇论文,主要讨论英特尔® MKL PARDISO 在有限元分析应用中的作用。
下载 .PDF 文件
[187KB]
PARDISO 支持多种稀疏矩阵类型,可对共享内存的多处理架构中的以下矩阵求解:实数和复数矩阵,对称、结构对称或不对称矩阵,以及正定、不定或厄密共轭稀疏线性方程组。

除标准 PARDISO 接口外,英特尔® MKL 提供了一个先进易用的直接稀疏矩阵解算器(DSS)接口。如果不使用 PARDISO,我们推荐使用 DSS 接口。如欲了解更多信息,请查阅 DSS 接口
规格 
。
稀疏矩阵解算器通常会与稀疏 BLAS 结合使用。稀疏 BLAS 是一组函数,它们针对稀疏数据执行大量常见的矢量和矩阵运算。稀疏矢量和矩阵指的是大多数元素都为零的矢量和矩阵。英特尔® MKL 提供了稀疏 BLAS 的实现,它经过特别实现,可以利用数据的稀疏特性。稀疏 BLAS 的范围包括为所有数据类型选定的 BLAS 级别 1 例程,以及用于双精度实函数的 BLAS 级别 2 和级别 3 例程。矩阵类型包括一般矩阵、对称矩阵、三角形矩阵、反对称矩阵和对角矩阵。所支持的数据结构包括压缩稀疏行(CSR)、压缩稀疏列(CSC)、对角、坐标和地平线(skyline)格式。关于英特尔® MKL 中支持 BLAS 的详细信息位于
英特尔 MKL BLAS 页面中。