gpt4 book ai didi

concurrency - 大矩阵求逆

转载 作者:行者123 更新时间:2023-12-03 14:03:19 24 4
gpt4 key购买 nike

我正在看一个大型矩阵的逆矩阵,通常大小为1000 x 1000,但有时超过100000 x 100000(由于时间和内存的原因,当前失败)。我知道正常的情绪是“不要采取相反的态度,找到其他方法来做到这一点”,但目前尚不可能。这样做的原因是由于使用了预期会求逆矩阵的软件。 (注意:我正在研究更改方法,但这将需要很长时间)

目前,我们正在使用来自数值复制的LU分解方法,而我目前正在测试特征库。本征库似乎更稳定且速度更快,但我仍处于测试阶段。我快速浏览了其他库,例如ATLAS和LAPACK,但尚未对它们进行任何实质性的测试。

似乎本征库没有使用并发方法来计算逆函数(尽管对于逆矩阵的LU分解部分也是如此),而且据我所知,ATLAS和LAPACK在此限制方面相似。 (我目前正在测试使用openMP和不使用openMP时本征的速度差异。)

第一个问题是谁能解释如何通过并行化优化矩阵求逆。我找到了一篇文章here,它谈论矩阵求逆并行算法,但我不理解。看来this文章在谈论另一种方法?我也不确定scaLAPACK或PETSc是否有用?

第二个问题,我阅读了this有关使用GPU来提高性能的文章,但是我从来没有为GPU编写过代码,因此不知道要传达什么内容,但是底部的图表看起来相当令人震惊。如果这是真的,那怎么可能,以及如何开始实施类似的东西。

我还找到了this文章,还没有时间通读它来理解,但似乎很有希望,因为内存是我们软件的当前问题。

有关这些文章或一般问题的任何信息都将有很大帮助。如果这个问题含糊其辞,我再次表示歉意,如有必要,我将尝试扩大范围。

最佳答案

第一个问题是谁能解释如何通过并行化优化矩阵求逆。

我可能会猜测,这以及线性代数中的相关主题是并行计算中研究最多的主题之一。如果您一直在寻找可以开始阅读的地方,那么不错的老Golub and Van Loan会在该主题上有一章。至于Scalapack和Petsc是否可能有用,肯定是前者,也许是后者。当然,它们都依赖MPI,但这在该领域中是理所当然的。

第二个问题...

如果有GPU,请使用它们,并且您有能力将代码转换为GPU支持的编程模型。如果您从未为GPU进行编码并且可以访问商品型CPU集群,那么使用集群将比使用新颖技术更快地加快速度。

至于您所提到的上一篇文章,它在一个变化非常快的领域中已有10年的历史了(尝试找到有关使用GPU进行矩阵求逆的10年历史的研究论文)。我无法评论它的卓越性或其他属性,但是在我看来,您提到的问题大小在现代群集的核内(使用旧术语)计算能力范围内。如果矩阵很大,它们是否也稀疏?

最后,我强烈支持您明显的意图,即使用现有的现成代码,而不是尝试开发自己的代码。

关于concurrency - 大矩阵求逆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11230067/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com