提升稀疏矩阵内存要求

时间:2012-02-14 20:51:20

标签: c++ boost sparse-matrix

我正在考虑使用Boost的稀疏矩阵进行最小内存使用量的计算。不幸的是,documentation page在我查看它时没有讨论稀疏矩阵实现的内存使用情况。我也不确定如何确定稀疏矩阵在任何给定时间使用了多少内存。

稀疏矩阵使用多少内存?你能引用一个来源吗?

如何找出矩阵在给定时间t使用了多少内存?

1 个答案:

答案 0 :(得分:0)

我不能给你一个确切的答案。但一般来说,稀疏矩阵使用的内存量是矩阵的非零条目数的倍数。通用格式将所有非零条目存储在数组“A”(逐行)中。存储而不是第二个数组'B',它给出来自'A'的相应非零项的列索引,第三个数组告诉我数组'A'第x行的开始位置。 假设数据类型为type_nn,type_index为具有nnz非零元素的N * N稀疏矩阵,则内存要求为

sizeof(type_nnz)*nnz + sizeof(type_index)*(nnz+N)