wtime 是我的第一件开源软件作品。wtime 类似 GNU time ,它可以运行另一个程序,然后在那个程序结束时输出程序消耗的时间(内核态 ring0 时间、用户态 ring3 时间、总时间)、占用的内存(工作集/峰值、页面文件/峰值)、IO 数量(IO 读、写、其他)。
项目主页:http://sourceforge.net/projects/wintime/
wtime 通常用来进行性能测量,因为我上次发现 Windows 上缺少一个像 GNU time 一样的工具,故写了这个小程序。wtime 以 New BSD License(http://www.opensource.org/licenses/bsd-license.php) 发布。
使用样例:
E:/projects/wtime/src>wtime java -version java version "1.6.0_16" Java(TM) SE Runtime Environment (build 1.6.0_16-b01) Java HotSpot(TM) Client VM (build 14.2-b01, mixed mode, sharing) user time: 78,000 us kernel time: 15,600 us total: 220,003 us WorkingSet: 24,576 PeakWorkingSet: 9,785,344 PagefileUsage: 0 PeakPagefileUsage: 29,876,224 Read bytes: 1,982,806 Write bytes: 0 Other bytes: 12,284
可以看到上面的输出直接附加到正常的输出后面。时间以微秒(us)为单位,内存和 IO 均以字节为单位。
P.S. 欢迎帮助我在不同的 Windows 版本下测试,我目前只测过 Win7,而且还是管理员,最好能测下 Vista 的普通用户。