Uh oh!
There was an error while loading. Please reload this page.
[NativeAOT] Avoid redundant unwind info lookup during stackwalks - #87419
Conversation
Unwind info was looked up twice on non-Windows: Once during initial frame inspection and second during the actual unwind. Cache the lookup results from the initial frame inspection and use them from the actual unwind later, same as it is done on Windows.
ghost
commented
Jun 12, 2023
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Issue DetailsUnwind info was looked up twice on non-Windows: Once during initial frame inspection and second during the actual unwind. Cache the lookup results from the initial frame inspection and use them from the actual unwind later, same as it is done on Windows.
|
jkotas
commented
Jun 12, 2023
Todo API w/ Workstation GC: Before this change: | Requests/sec | 72,812 | With this change: | Requests/sec | 76,727 | |
jkotas
commented
Jun 12, 2023
This is follow up on #86690 (comment) . I have more changes on top this one to make stack unwinding faster on Unix. |
filipnavara
commented
Jun 12, 2023
Related: #75807 |
jkotas
commented
Jun 12, 2023
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
VSadov
commented
Jun 13, 2023
I think the code makes assumption that fetching this info is a relatively cheap operation - like indexing in a table, but it is more complex than that. And there is space in the MethodInfo to keep the info. Nice change! |
Unwind info was looked up twice on non-Windows: Once during initial frame inspection and second during the actual unwind. Cache the lookup results from the initial frame inspection and use them from the actual unwind later, same as it is done on Windows.