我正在编写一个允许用户编写python代码的web应用程序(http://www.checkio.org/)。作为众多反馈指标之一,我希望在对此代码执行检查时启用分析功能。这是为了让用户对各种解决方案的相对效率有一个非常粗略的概念。python:面向字节码的剖析器
我需要的配置文件是(合理)确定性。我不希望网络服务器上的其他负载给读取效率不佳。另外,我担心有些配置文件不会给出很好的测量结果,因为这些简短的脚本运行得非常快。 timeit模块显示了一个函数中运行数以千计的时间,但我想如果可能的话不会在这个小功能浪费服务器reasources。
目前还不清楚哪些(如果有的话)标准轮廓仪可以满足这种需求。理想情况下,分析器会给出“解释器字节码滴答”的单位,每个字节码指令会增加一个。这将是一个非常粗糙措施,但符合确定性和高精度的要求。
我应该使用哪种分析系统?
并非所有内容都作为解释器字节码运行,所以这是一个很差的时间。一个调用本地代码的“解释器字节码打勾”可能需要几微秒或几小时。 – detly 2011-05-02 01:12:33
如果你想让人们能够找到他们的瓶颈,[允许他们采取堆栈样本](http://stackoverflow.com/questions/4295799/how-to-improve-performance-of-this-code/4299378# 4299378)。 – 2011-05-02 02:12:37
@detly:我知道这是一个贫穷的措施,但在这个特殊的环境中,大多数C扩展沙箱不允许的,它应该是足够好,让别人说:“哦,我的解决方案比一个慢”,甚至“我刚刚改进了30倍!”。真正的问题是,我在哪里可以找到这个可怜的分析器? – bukzor 2011-05-02 03:27:22