为Pony添加ETW支持

2017-12-20
阅读 1 分钟
2.6k
退而求其次,我为尝试给Pony加了ETW(Event Tracing for Windows)支持(分支etw-tracelogging)。ETW其实更像是高性能的日志而不是动态跟踪,虽然也能拿到堆栈,但是性能、灵活性、安全性都差DTrace很多。实现方法也比较简单,就是把原来DTrace宏换成TraceLogging API调用。

为pony程序添加IACA标记(二)

2017-11-22
阅读 7 分钟
2.1k
在上一篇文章介绍了一种加IACA标记的方法,但使用还是很麻烦,所以我尝试修改pony编译器,直接增加了IACA支持,目前代码在iaca分支。 使用方法 因为还没发PR到上游,所以要自己克隆编译。 {代码...} 然后安装官方的编译步骤编译就好了,通常就是一句make。 在需要添加IACA标记的代码加上IACA.start()和IACA.stop()就可以...

为pony程序添加IACA标记(一)

2017-11-07
阅读 4 分钟
2.3k
IACA(Intel® Architecture Code Analyzer)是Intel出品的静态代码分析工具,可以用来分析代码的数据依赖、代码吞吐量、延迟,对于理解CPU执行和性能优化有很大帮助。

Windows下调试pony程序

2017-11-01
阅读 1 分钟
1.7k
pony在3年以前去掉了windows下调试信息生成,非常暴力: {代码...} 也就是固定去除调试信息选型。 但是我有主要使用Windows进行开发,这就很不方便了,于是尝试把这个选项去掉,然后加上CodeView信息生成(一共就改两行代码)。 再编译发现LLVM会出错: {代码...} 这错误说明在pony编译器里生成了不正确的信息,要改正必...