2012-06-28 127 views
0

我有N x N字节矩阵与N = 200,000,000。我想在O(1)时间内得到M[i, j]的值,并且比O(N*N)内存更有效地将硬盘驱动器上的矩阵存储起来。矩阵不稀疏,但值始终在0..255之间。它是无望的吗?存储巨大的矩阵

+0

如果你可以隔离重复的模式(一个矩阵块),你可以创建一个元矩阵,然后解压缩它,或者在需要时使用带有表格的方法。我不是这方面的专家,但我认为这种策略可以减少您的存储需求。 – BlackVegetable

+0

您是否尝试过使用[HDF5](http://www.hdfgroup.org/HDF5/)进行基准测试? –

回答

0

如果矩阵值是随机的 - 那么是的,你搞砸了。你需要一个磁盘200MB^2。

如果矩阵有一个模式,那么它可能存储它。这将取决于你对矩阵的了解,以及是否存在安全转换。

我会有一个问题 - 矩阵的哪些区域值不重要?如果是这样,我会将它们归零并不存储它们。