如何估计网络x图内存储器使用?

问题描述 投票:0回答:3

如何检查网络图所用的内存量?

有一种检查节点和边缘数量的方法,但我找不到一个用于内存使用的方法?

python memory networkx
3个回答
7
投票

在NetworkX 2.0及以后,

G.edges
G.nodes
返回迭代器,因此将其大小直接工作不起作用,它只会为您提供迭代器对象的大小。您需要迭代这些对象,并获取每个边缘和节点的大小,然后总和这些对象以估算图形使用的内存。

import networkx as nx import sys G = nx.Graph() # populate the graph with nodes and edges edge_mem = sum([sys.getsizeof(e) for e in G.edges]) node_mem = sum([sys.getsizeof(n) for n in G.nodes]) print("Edge memory:", edge_mem) print("Node memory:", node_mem) print("Total memory:", edge_mem + node_mem)
    

3
投票

sys.getsizeof(G.edge) + sys.getsizeof(G.node)



0
投票
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.