9

有没有办法读取自虚拟机启动以来已经解释了多少 Python 虚拟机指令?我意识到这可能(如果可能的话)只适用于 CPython。

4

1 回答 1

2

不容易。衡量性能的规范方法是使用可用的分析模块之一。仍然...

PyThreadState在 CPython 2 中,可以通过读取结构从扩展模块(即 C 代码)中获得当前线程的近似测量值。有一个称为的字段tick_counter,当乘以检查间隔时,它会导致执行的字节码指令的数量。或者,换句话说,解释器主循环的迭代次数。

但是由于检查间隔在执行过程中可能会发生变化,所以这个值并不精确。

CPython 2.7.4 的有趣链接:

由于 CPython 3.2tick_counter失去了它的真正意义,所以你不得不使用已经提到的跟踪或分析:

于 2013-05-08T10:45:21.107 回答