Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve collided exception performance #100169

Merged
merged 6 commits into from
Mar 28, 2024

Commits on Mar 23, 2024

  1. Improve collided exception performance

    With the new EH enabled, one exception handling performance test has
    regressed while all other improved dramatically. I have investigated the
    test case and it turned out that the regression is due to the way we
    unwind during second pass when we have an exception that occured in a
    catch or finally funclet call chain and escaped it.
    What we do is that we unwind stack until we reach the parent stack frame
    of the catch / finally and then continue searching for handlers.
    The NativeAOT that the new EH is based on doesn't unwind stack though,
    it just moves the current stack frame iterator to the position of the
    previous exception's stack frame iterator by copying its state.
    I have applied the same mechanism to the new EH in coreclr and it
    improved the performance of that test 3-4 times on my machine.
    janvorli committed Mar 23, 2024
    Configuration menu
    Copy the full SHA
    1ccb05f View commit details
    Browse the repository at this point in the history

Commits on Mar 25, 2024

  1. Configuration menu
    Copy the full SHA
    bc57e00 View commit details
    Browse the repository at this point in the history

Commits on Mar 26, 2024

  1. Configuration menu
    Copy the full SHA
    add6b2f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    17dab65 View commit details
    Browse the repository at this point in the history

Commits on Mar 27, 2024

  1. Configuration menu
    Copy the full SHA
    bed0c2b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    86389ea View commit details
    Browse the repository at this point in the history