我已经使用Python的C-API在我的c代码中调用了一些python代码,现在我想分析一下我的python代码是否存在瓶颈。我偶然发现了PyEval_SetProfile应用程序接口,并且不确定如何使用它。我需要编写自己的分析函数吗?
如果你能提供一个例子或给我一个例子,我将非常感谢。
发布于 2012-07-07 07:58:34
如果您只需要知道在Python代码中花费了多少时间,而不需要(例如)知道Python代码中花费时间最多的地方,那么Python性能分析工具就不是您想要的。我将编写一些简单的C代码,在Python解释器调用之前和之后对时间进行采样,并使用它。或者,C级分析工具,将Python解释器作为C函数调用进行度量。
如果您需要在Python代码中进行分析,我不建议您编写自己的分析函数。它所做的一切只是提供原始数据,您仍然需要对其进行汇总和分析。相反,在Python代码周围编写一个Python包装器,该包装器调用cProfile模块来捕获数据,然后您可以检查这些数据。
https://stackoverflow.com/questions/11371057
复制相似问题