【发布时间】:2019-05-03 20:50:15
【问题描述】:
我正在寻找几种不同的方法来实现相同的目标,我得到的主要标准是程序必须使用尽可能少的内存。我试过在网上寻找,但我能找到的唯一与内存相关的方面是处理低级内存分配。
有没有准确获取内存使用情况的函数或方法?
谢谢
【问题讨论】:
标签: memory memory-management sage
我正在寻找几种不同的方法来实现相同的目标,我得到的主要标准是程序必须使用尽可能少的内存。我试过在网上寻找,但我能找到的唯一与内存相关的方面是处理低级内存分配。
有没有准确获取内存使用情况的函数或方法?
谢谢
【问题讨论】:
标签: memory memory-management sage
是的,有!以下是来自one of the Sage tickets trying to track down memory leaks 的示例:
print get_memory_usage()
K = GF(10007^2, 'a')
X = PolynomialRing(K, 'x').gen()
for i in range(1000):
s = K.random_element(); t = K.random_element()
poly = s + t*X
print get_memory_usage()
我认为可能有更复杂的用途(例如,使用 Valgrind,它是一个可选包,过去至少可以与 Sage 一起使用),所以我不能说这是否是 最佳 测量方法它,但它应该是一个很好的起点。
【讨论】: