因此,当我尝试声明大于10000x10000的矩阵时,我发现Eigen包崩溃了。我需要像这样声明一个矩阵..可靠地约有13000x13000个元素。我进行了如下测试:
for( int tortureEigen = 1 ; tortureEigen < 50000 ; tortureEigen++ )
{
printf( "Torturing Eigen with %dx%d..\n", tortureEigen, tortureEigen ) ;
Eigen::MatrixXd m( tortureEigen, tortureEigen ) ;
}
14008个元素在我的计算机上崩溃(6 GB RAM)。
我有点失望!我以为Eigen就像MATLAB或octave一样,即使使用磁盘阵列也不会崩溃,使用大数组也不应该崩溃。
而且更重要的是,当我运行此测试并保持TaskMan打开时,创建这些矩阵的过程甚至没有使用太多的内存。 TaskMan报告使用率低于2k。
使用Eigen 2.0.15稳定发布
最佳答案
特征开发人员在这里。您最好在我们的支持 channel 上询问Eigen问题,例如论坛... ;-)
简短答案:您使用的是固定尺寸还是动态尺寸的矩阵?