带立柱旋转的螺纹 QR

计算科学 线性代数 并行计算 拉帕克
2021-11-30 19:01:01

我的程序需要对高(例如 1e9 x 100)矩阵执行旋转 QR 分解。我遇到了瓶颈,即我的程序的主要计算时间花在了串行旋转 QR 分解上,而节点有 20 个线程。出于某种原因,我仅限于一个节点来执行分解,因此诸如 scalapack 之类的分布式策略将无济于事。我想知道是否有任何库/包提供旋转 QR 分解的线程版本。现在我的代码调用了 lapack 的 sgeqp3 子例程。谢谢!

1个回答

英特尔 MKL 版本的 sgeqp3 使用多线程。

但是,我不知道它扩展到 20 个内核的效果如何。