[uma] Add histogram for streaming compile finalization

Measure finalization time for streaming JS compilation (to measure impact
of off-thread streaming finalization).

Bug: chromium:865098
Bug: chromium:1011762
Change-Id: Idc89ea18e55fec87ac7e8cca28925820e0c56b84
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1844783
Auto-Submit: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#64190}
This commit is contained in:
Leszek Swirski 2019-10-07 14:12:50 +02:00 committed by Commit Bot
parent 151fd02b34
commit 5ee115fe23
2 changed files with 8 additions and 3 deletions

View File

@ -1911,6 +1911,12 @@ struct ScriptCompileTimerScope {
case CacheBehaviour::kConsumeCodeCache:
return isolate_->counters()->compile_script_with_consume_cache();
// Note that this only counts the finalization part of streaming, the
// actual streaming compile is counted by BackgroundCompileTask into
// "compile_script_on_background".
case CacheBehaviour::kNoCacheBecauseStreamingSource:
return isolate_->counters()->compile_script_streaming_finalization();
case CacheBehaviour::kNoCacheBecauseInlineScript:
return isolate_->counters()
->compile_script_no_cache_because_inline_script();
@ -1930,9 +1936,6 @@ struct ScriptCompileTimerScope {
// TODO(leszeks): Consider counting separately once modules are more
// common.
case CacheBehaviour::kNoCacheBecauseModule:
// TODO(leszeks): Count separately or remove entirely once we have
// background compilation.
case CacheBehaviour::kNoCacheBecauseStreamingSource:
case CacheBehaviour::kNoCacheBecauseV8Extension:
case CacheBehaviour::kNoCacheBecauseExtensionModule:
case CacheBehaviour::kNoCacheBecausePacScript:

View File

@ -221,6 +221,8 @@ namespace internal {
MICROSECOND) \
HT(compile_script_no_cache_because_cache_too_cold, \
V8.CompileScriptMicroSeconds.NoCache.CacheTooCold, 1000000, MICROSECOND) \
HT(compile_script_streaming_finalization, \
V8.CompileScriptMicroSeconds.StreamingFinalization, 1000000, MICROSECOND) \
HT(compile_script_on_background, \
V8.CompileScriptMicroSeconds.BackgroundThread, 1000000, MICROSECOND) \
HT(compile_function_on_background, \