From eac02dfe16a889c4cb35ffe7c4a120c4762bf7d0 Mon Sep 17 00:00:00 2001 From: Noah Falk Date: Tue, 30 Sep 2025 12:19:22 -0700 Subject: [PATCH 1/2] Update debugging and profiling documentation Clarify performance impact of enabling perf maps or jit dumps. --- docs/core/runtime-config/debugging-profiling.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/core/runtime-config/debugging-profiling.md b/docs/core/runtime-config/debugging-profiling.md index 69224074a8b9c..7f0c8e438799b 100644 --- a/docs/core/runtime-config/debugging-profiling.md +++ b/docs/core/runtime-config/debugging-profiling.md @@ -52,11 +52,11 @@ This article details the settings you can use to configure .NET debugging and pr ## Export perf maps and jit dumps -- Enables or disables selective enablement of perf maps or jit dumps. These files allow third party tools, such as the Linux `perf` tool, to identify call sites for dynamically generated code and precompiled ReadyToRun (R2R) modules. +- Enables or disables perf maps or jit dumps. These files allow third party tools, such as the Linux `perf` tool, to provide human readable names for dynamically generated code and precompiled ReadyToRun (R2R) modules. - If you omit this setting, writing perf map and jit dump files are both disabled. This is equivalent to setting the value to `0`. - When perf maps are disabled, not all managed callsites will be properly resolved. - Depending on the Linux kernel version, both formats are supported by the `perf` tool. -- Enabling perf maps or jit dumps causes a 10-20% overhead. To minimize performance impact, it's recommended to selectively enable either perf maps or jit dumps, but not both. +- Enabling perf maps or jit dumps may cause up to a 20% overhead though often it is much less. To minimize performance impact, it's recommended to selectively enable either perf maps or jit dumps, but not both. The impact only occurs while the application is JITing code. Often that occurs at startup but it may occur later if the application is running a new code path for the first time. The following table compares perf maps and jit maps. From fd56a0fbf8fe8495a98d4b8cb3a32532f8f53b64 Mon Sep 17 00:00:00 2001 From: Noah Falk Date: Tue, 30 Sep 2025 13:42:33 -0700 Subject: [PATCH 2/2] Update docs/core/runtime-config/debugging-profiling.md Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com> --- docs/core/runtime-config/debugging-profiling.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/runtime-config/debugging-profiling.md b/docs/core/runtime-config/debugging-profiling.md index 7f0c8e438799b..13cdea3ccba28 100644 --- a/docs/core/runtime-config/debugging-profiling.md +++ b/docs/core/runtime-config/debugging-profiling.md @@ -56,7 +56,7 @@ This article details the settings you can use to configure .NET debugging and pr - If you omit this setting, writing perf map and jit dump files are both disabled. This is equivalent to setting the value to `0`. - When perf maps are disabled, not all managed callsites will be properly resolved. - Depending on the Linux kernel version, both formats are supported by the `perf` tool. -- Enabling perf maps or jit dumps may cause up to a 20% overhead though often it is much less. To minimize performance impact, it's recommended to selectively enable either perf maps or jit dumps, but not both. The impact only occurs while the application is JITing code. Often that occurs at startup but it may occur later if the application is running a new code path for the first time. +- Enabling perf maps or jit dumps might cause up to a 20% overhead, though often it's much less. To minimize performance impact, it's recommended to selectively enable either perf maps or jit dumps, but not both. The impact only occurs while the application is JITing code. Often that occurs at startup, but it might occur later if the application is running a new code path for the first time. The following table compares perf maps and jit maps.