如何识别 SimPy 模拟中的耗时任务?

How does one identify the time consuming tasks in a SimPy simulation?

我想加快 SimPy 模拟的速度(如果可能的话),但我不确定插入计时器以查看耗时时间的最佳方法。

有办法吗?

import time
t1 = time.time()
#code to time
t2 = time.time()
print(t2 - t1)

您可以使用它并将时间与您要测试的所有代码示例进行比较

我建议使用runsnakerun(或者我猜是py3x中的snakeviz),它使用cProfile(运行snake运行的网页上有说明)

基本上你只是运行你的程序

python -m cProfile -o profile.dump my_main.py 

然后您可以使用 运行snake(如果使用 py3 则使用 snakeviz)

python runsnakerun.py profile.dump

(请注意,运行在配置文件模式下使用它可能会进一步降低您的代码速度......但它实际上只是为了识别缓慢的部分)