NET : CLR Profiler的使用 经常讲课的时候会提到值类型和引用类型,也会提到如何查看它们的大小.多次被朋友问到,如何真的想要知道到底每个方法分配了多少内存之类的问题,其实这可以通过CLR Profiler工具来监控. 有兴趣的朋友可以查看下面这篇文档 http://msdn.microsoft.com/zh-cn/library/ms979205(en-us).aspx 演示程序 using System; public class ProfilerSample1 { static…
来自:http://www.cnblogs.com/btchenguang/archive/2012/02/03/2337112.html def foo(): sum = 0 for i in range(10000): sum += i sumA = bar() sumB = bar() return sum def bar(): sum = 0 for i in range(100000): sum += i return sum if __name__ == "__main__"…
1 使用profile分析函数性能示例1, 以profile为例: import profile def profileTest(): Total =1; for i in range(10): Total=Total*(i+1) print Total return Total if __name__ == "__main__": profile.run("profileTest()")…
#! /usr/bin/env python # encoding=utf8 import profile def func1(): for i in range(1000): pass def func2(): for i in range(1000): func1() profile.run("func2()") 输出: 其中输出每列的具体解释如下: ●ncalls:表示函数调用的次数: ●tottime:表示指定函数的总的运行时间,除掉函数中调用子函数的运行时间: ●percal…
在分析python代码性能瓶颈,但又不想修改源代码的时候,ipython shell以及第三方库提供了很多扩展工具,可以不用在代码里面加上统计性能的装饰器,也能很方便直观的分析代码性能.下面以我自己实现的一个快排代码为例,带你使用集中不同的性能分析工具. def quick_sort(data, low, high): if low >= high: return left, right = low, high key = data[left] while left < right: whil…