使用pympler测量求解器的内存使用情况

时间:2019-03-25 15:18:22

标签: python memory solver pyomo

问这个问题是因为在这个问题cbc solver log memory is missing中,我找不到一种方法来测量cbc求解器的内存使用情况。

是否可以用.solve来衡量以下pympler命令的内存使用情况?

optim = SolverFactory('glpk')
tr = ClassTracker()
result = optim.solve(model, logfile='urbs_log.txt', tee=False)
tr.track_object(result)
tr.create_snapshot()
tr.stats.print_summary()

这给了我以下输入:

---- SUMMARY ------------------------------------------------------------------
                                         active      0     B      average   pct
  SolverResults                               1     24.74 KB     24.74 KB    0%
-------------------------------------------------------------------------------

但是,这并不是正确的内存使用量。因为当我检查glpk的日志文件时:

OPTIMAL LP SOLUTION FOUND
Time used:   1.6 secs
Memory used: 12.1 Mb (12663652 bytes)

摘要:

我正在尝试使用pympler来衡量求解器的内存使用情况。它给了我一些价值,但不是求解器的内存使用量。那么有没有办法用12.1 Mb获取pympler(基本上是求解器的内存使用量)?

PS:这是一个pyomo模型

0 个答案:

没有答案