• Mythri A's avatar
    [turboprop] Reduce BytecodeBudgetInterrupt overhead from Turboprop · 5b783479
    Mythri A authored
    Earlier we used the same interrupt budget always and waited for higher
    number of ticks when tiering up from Turboprop to TurboFan. On some of
    the real world pages this adds a reasonable overhead for processing
    these interrupts. This cl sets the interrupt budget to a higher value so
    there are fewer interrupts. This cl:
    1. Sets the interrupt budget on feedback cell to
    FLAG_interrupt_budget * scale factor when we install optimized code.
    2. Resets the budget to FLAG_interrupt_budget when there is a
    deoptimization.
    3. Updates the runtime profiler to remove the scaling of number of ticks
    needed for optimization when tiering up from TP to TF.
    
    On sheets benchmark, we spend 40-50ms when servicing interrupts from
    Turboprop code. This change brings it down to ~7ms. We also see
    improvements on other pages.
    
    
    Bug: v8:9684
    Change-Id: Ia3e5e998d1fff44f2e08a240a8769b7ebe794da2
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2696661
    Commit-Queue: Mythri Alle <mythria@chromium.org>
    Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#72906}
    5b783479
Name
Last commit
Last update
.github Loading commit data...
build_overrides Loading commit data...
custom_deps Loading commit data...
docs Loading commit data...
gni Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.clang-tidy Loading commit data...
.editorconfig Loading commit data...
.flake8 Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
COMMON_OWNERS Loading commit data...
DEPS Loading commit data...
DIR_METADATA Loading commit data...
ENG_REVIEW_OWNERS Loading commit data...
INFRA_OWNERS Loading commit data...
INTL_OWNERS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
MIPS_OWNERS Loading commit data...
OWNERS Loading commit data...
PPC_OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
RISCV_OWNERS Loading commit data...
S390_OWNERS Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...