我正在尝试在C++中计算一个非常大的矩阵(21500x21500)的逆。到目前为止,我已经尝试了Eigen和Armadillo库,但两者都在初始化阶段失败,显示没有足够的内存。有没有办法克服这种情况?
提前致谢!
P.S 我应该更正矩阵的大小为21500x21500。正如UmNyobe所建议的那样,这不是一个方阵。实际上,它是观察矩阵X,并且我正在尝试计算(XTX)-1
我有8GB内存(64位系统),但我不认为我正在利用所有的内存空间。任务管理器显示,在发生错误时的内存使用量为1GB。也许在Windows7中有一条OS命令,当其内存使用量超过1GB时,关闭应用程序。
顺便说一句,我的最初目的是在这个观测矩阵上运行回归。
还有一件事:观测矩阵X中大多数行的每列都是零。有没有办法利用这一点,限制求逆运算中的内存使用?
提前致谢!
P.S 我应该更正矩阵的大小为21500x21500。正如UmNyobe所建议的那样,这不是一个方阵。实际上,它是观察矩阵X,并且我正在尝试计算(XTX)-1
我有8GB内存(64位系统),但我不认为我正在利用所有的内存空间。任务管理器显示,在发生错误时的内存使用量为1GB。也许在Windows7中有一条OS命令,当其内存使用量超过1GB时,关闭应用程序。
顺便说一句,我的最初目的是在这个观测矩阵上运行回归。
还有一件事:观测矩阵X中大多数行的每列都是零。有没有办法利用这一点,限制求逆运算中的内存使用?