【发布时间】:2016-06-15 13:31:05
【问题描述】:
我很想知道 JIT 编译的顺序是哪些方法。
我知道有一个探查器 API 允许这样做,但我必须为此用 C++ 编写探查器。 还有一个名为 ProfileOptimization 的功能可以创建 JIT 配置文件,以便将来更快地进行后台 JIT。它创建一些二进制文件。如果我有 .exe/.pdb ,也许有可能从中获取方法名称?
我使用 perfmon 来获取 JITted 方法的数量,但数量不足以开始我的 nano 优化战争
谢谢!
【问题讨论】:
-
这不是唯一的“但是”。假设您让 C++ 代码按照需要运行,并且您了解了 jitting 顺序,那么您将如何实际更改它?为什么您希望该程序能够更好地运行?你会让事情变得更糟的几率很高。无论如何,您都无法击败背景抖动。或者 Ngen.exe,最明显的不 jit 方法。
-
我可以更改代码和度量。如果它不能更好地工作 - 我会保留代码原样:) 这就是为什么我确信它会更好地工作。在我的情况下,NGEN/PGO 不是一个选项。我想玩一下jitting,但我需要日志。如果它们包含特定方法的 JIT 时间,那就更好了。
标签: .net compilation jit