Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eigen,获取反向失败,反向()太慢了_Eigen - Fatal编程技术网

Eigen,获取反向失败,反向()太慢了

Eigen,获取反向失败,反向()太慢了,eigen,Eigen,我想得到逆矩阵,下面是代码: if (m.rows() == m.fullPivLu().rank()) { res = m.inverse(); } m和res的尺寸都是5000乘以5000。当我在一台高性能计算机器Linux,超级计算机上运行代码时,这个过程在res=m.inverse时被终止;,并且没有生成核心文件或转储信息。控制台返回被终止,进程退出 但是我的Ubuntu笔记本电脑没有问题 而且,反向器的性能很差,而且花费了很多时间 那么,为什么在这台高性能机器上杀死了inve

我想得到逆矩阵,下面是代码:

if (m.rows() == m.fullPivLu().rank())
{
    res = m.inverse();
}
m和res的尺寸都是5000乘以5000。当我在一台高性能计算机器Linux,超级计算机上运行代码时,这个过程在res=m.inverse时被终止;,并且没有生成核心文件或转储信息。控制台返回被终止,进程退出

但是我的Ubuntu笔记本电脑没有问题

而且,反向器的性能很差,而且花费了很多时间


那么,为什么在这台高性能机器上杀死了inverse?谢谢大家!

众所周知,全旋转LU非常慢,无论其实现如何

更好地使用PartialPivLU,这得益于高性能矩阵运算。然后,为了充分利用Egen,请使用3.3-beta2版本并使用FMA-mfma和OpenMP进行编译,例如,-fopenmp支持,并且不要忘记启用编译器优化-O3。此操作不应超过几秒钟

最后,您真的需要显式地计算逆吗?如果只将其应用于某些向量或矩阵,即A^-1*B或B*A^-1,则最好以分解形式应用逆,而不是显式计算逆。对于Eigen 3.3:

MatrixXd A = ...;
PartialPivLU<MatrixXd> lu(A);
x = lu.inverse() * b; // solve Ax=b, same as x = lu.solve(b);
x = b * lu.inverse(); // solve xA=b

在这些表达式中,未显式计算逆

众所周知,全旋转LU非常慢,无论其实现如何

更好地使用PartialPivLU,这得益于高性能矩阵运算。然后,为了充分利用Egen,请使用3.3-beta2版本并使用FMA-mfma和OpenMP进行编译,例如,-fopenmp支持,并且不要忘记启用编译器优化-O3。此操作不应超过几秒钟

最后,您真的需要显式地计算逆吗?如果只将其应用于某些向量或矩阵,即A^-1*B或B*A^-1,则最好以分解形式应用逆,而不是显式计算逆。对于Eigen 3.3:

MatrixXd A = ...;
PartialPivLU<MatrixXd> lu(A);
x = lu.inverse() * b; // solve Ax=b, same as x = lu.solve(b);
x = b * lu.inverse(); // solve xA=b

在这些表达式中,未显式计算逆

你有什么样的表演?你在期待什么?别忘了,反转在^3上。你从一台我们大多数人都无法访问的计算机上得到了什么样的信息/转储/东西?@AviGinsburg,得到相反的信息时速度非常慢。没有生成核心文件或转储信息。控制台返回被终止,进程退出。您的性能如何?你在期待什么?别忘了,反转在^3上。你从一台我们大多数人都无法访问的计算机上得到了什么样的信息/转储/东西?@AviGinsburg,得到相反的信息时速度非常慢。没有生成核心文件或转储信息。控制台返回被终止,进程退出。谢谢你,ggael。我需要得到矩阵的逆。你能发布关于Eigen编译优化的文档吗?谢谢你,ggael。我需要得到矩阵的逆。你能发布关于Eigen编译优化的文档吗?