.NET 运行时分层编译事件
本文中介绍的事件用于收集有关分层编译的信息。 有关如何将这些事件用于诊断的详细信息,请参阅对 .NET 应用程序进行日志记录和跟踪
TieredCompilationSettings 事件
下表显示了关键字和级别。
引发事件的关键字 | Level |
---|---|
CompilationKeyword (0x1000000000) |
信息性 (4) |
下表显示了事件信息。
事件 | 事件 ID | 在发生以下情况时引发 |
---|---|---|
TieredCompilationSettings |
280 | 提供有关分层编译设置的信息。 |
下表显示了事件数据。
字段名 | 数据类型 | 描述 |
---|---|---|
ClrInstanceID |
win:UInt16 |
CoreCLR 实例的唯一 ID。 |
Flags |
win:UInt32 |
指示各种设置的标志。 可以使用按位 OR 提供多个标志,并且 0x0 值指示未提供任何标志。0x1 - 已启用快速 JIT。 如果方法没有预编译代码,则对于第一层,它将快速编译 JIT,但优化更少。0x2 - 为包含循环的方法启用快速 JIT。0x4 - 已启用分层 PGO。 在优化方法之前,可以对其进行分析。0x8 - 已启用 ReadyToRun。 具有预编译 ReadyToRun 代码的方法将在第一层使用该代码。 |
TieredCompilationPause 事件
下表显示了关键字和级别。
引发事件的关键字 | Level |
---|---|
CompilationKeyword (0x1000000000) |
信息性 (4) |
下表显示了事件信息。
事件 | 事件 ID | 在发生以下情况时引发 |
---|---|---|
TieredCompilationPause |
281 | 分层编译已暂停。 由于启动式活动(例如首次调用新方法),分层编译可能会暂停,以减少应用程序启动期间的开销,例如调用计数和后台 JIT 编译。 在启动式活动在短时间内停止后,它将恢复。 |
下表显示了事件数据。
字段名 | 数据类型 | 描述 |
---|---|---|
ClrInstanceID |
win:UInt16 |
CoreCLR 实例的唯一 ID。 |
TieredCompilationResume 事件
下表显示了关键字和级别。
引发事件的关键字 | Level |
---|---|
CompilationKeyword (0x1000000000) |
信息性 (4) |
下表显示了事件信息。
事件 | 事件 ID | 在发生以下情况时引发 |
---|---|---|
TieredCompilationResume |
282 | 已恢复分层编译。 |
下表显示了事件数据。
字段名 | 数据类型 | 描述 |
---|---|---|
ClrInstanceID |
win:UInt16 |
CoreCLR 实例的唯一 ID。 |
NewMethodCount |
win:UInt32 |
在分层编译暂停时首次调用的新方法数。 |
TieredCompilationBackgroundJitStart 事件
下表显示了关键字和级别。
引发事件的关键字 | Level |
---|---|
CompilationKeyword (0x1000000000) |
信息性 (4) |
下表显示了事件信息。
事件 | 事件 ID | 在发生以下情况时引发 |
---|---|---|
TieredCompilationBackgroundJitStart |
283 | 后台 JIT 编译已开始。 |
下表显示了事件数据。
字段名 | 数据类型 | 描述 |
---|---|---|
ClrInstanceID |
win:UInt16 |
CoreCLR 实例的唯一 ID。 |
PendingMethodCount |
win:UInt32 |
挂起后台 JIT 编译的方法数。 |
TieredCompilationBackgroundJitStop 事件
下表显示了关键字和级别。
引发事件的关键字 | Level |
---|---|
CompilationKeyword (0x1000000000) |
信息性 (4) |
下表显示了事件信息。
事件 | 事件 ID | 在发生以下情况时引发 |
---|---|---|
TieredCompilationBackgroundJitStop |
284 | 后台 JIT 编译已停止。 |
下表显示了事件数据。
字段名 | 数据类型 | 描述 |
---|---|---|
ClrInstanceID |
win:UInt16 |
CoreCLR 实例的唯一 ID。 |
PendingMethodCount |
win:UInt32 |
仍在等待后台 JIT 编译的方法数。 |
JittedMethodCount |
win:UInt32 |
自上次启动后台 JIT 编译以来,在后台进行 JIT 编译的方法数。 |