c# - 我如何验证 ryujit 正在 jitting 我的应用程序?

标签 c# jit ryujit

我已经为 .NET RyuJit 安装了新的 Jit 编译器,并按照安装文档中的说明在 regedit 的 .NetFramework 中设置了 AltJit=* 键。 http://blogs.msdn.com/b/dotnet/archive/2013/09/30/ryujit-the-next-generation-jit-compiler.aspx

那么我如何验证 RyuJit 是否真的被使用了?

最佳答案

使用 Project + Properties 设置一个什么都不做的项目:

  • Build 选项卡,取消选中 Prefer 32-bit 复选框
  • Debug 选项卡,勾选Enable native code debugging

调试+进入。 Output 窗口显示正在加载的 DLL。这一行就是您要查找的内容:

'ConsoleApplication1.exe': Loaded 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\protojit.dll', Cannot find or open the PDB file.

也可以从 Debug + Windows + Modules 调试器窗口中看到。 protojit.dll 是新抖动的名称。对于 CTP2 版本是准确的,我无法猜测它在开始发货后是否仍然是“原型(prototype)”。


更新:现在在 .NET 4.6 中发布。它使用 clrjit.dll 文件名替换原始抖动。遗留版本仍然存在,可以在新的抖动引起问题时使用,它的名字是 compatjit.dll。更多详细信息,请参阅 this post .

关于c# - 我如何验证 ryujit 正在 jitting 我的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22422021/

相关文章:

c# - 在 C# 中使用泛型理解协变和逆变的问题

python - 是否可以调用间接调用另一个 cuda.jit 函数的 cuda.jit 函数?

java - 关于 JIT 编译器和解释器的说明

c# - 使用 SignalR 推送通知

c# - 如何使用 ListViewPrinter 类打印 Objectlistview

c# - 包装原始值类型的结构是 C# 中的零成本抽象吗?

c# - 在 .NET Framework 4.6 中从 C# 使用 SIMD 操作速度较慢

.net - 在 Visual Studio 2015 RC 中启用 RyuJIT

c# - 反射如何在资源存储库上发挥作用

java - 即时编译和堆栈替换之间的区别