Повышение разреженной матрицы Требуется память - PullRequest
1 голос
/ 15 февраля 2012

Я думаю об использовании Разреженной матрицы Boost для вычислений, где целью является минимальное использование памяти.К сожалению, страница документации не включала обсуждение использования памяти реализацией разреженной матрицы, когда я просматривал ее.Также я не уверен, как определить, сколько памяти использует разреженная матрица в любой момент времени.

Сколько памяти будет использовать разреженная матрица?Можете ли вы процитировать источник?

Как узнать, сколько памяти матрица использует в данный момент времени t?

1 Ответ

0 голосов
/ 17 апреля 2012

Я не могу дать вам точный ответ. Но, вообще говоря, разреженная матрица использует объем памяти, кратный числу ненулевых элементов матрицы. Общий формат хранит все ненулевые записи в массиве «A» (строка за строкой). Сохраняет второй массив 'B', который дает индекс столбца соответствующей ненулевой записи из 'A' и третий массив, сообщающий мне, где в массиве 'A' начинается строка x. Предполагая, что типы данных type_nnz, type_index и N * N разреженная матрица с nnz ненулевыми элементами, требование к памяти составляет

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