[tools] Add separate RCS categories for maglev

- Add new optimize-maglev, and optimise-maglev-background RCS groups
- Rename RCS .*NonConcurrent.* to .*Synchronous.* to avoid misgrouping

Change-Id: I553cf176b8586d4c990788987dbda7cf77ba5b98
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6439505
Reviewed-by: Victor Gomes <victorgomes@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/main@{#99729}
This commit is contained in:
Camillo Bruni authored and V8 LUCI CQ committed 2025-04-09 08:54:05 -07:00
1 parent 316dd6fdc7
commit 190676137a
6 files changed
+48 -35

No files matched your search

+1 -1
View File
@@ -1090,7 +1090,7 @@ bool CompileTurbofan_NotConcurrent(Isolate* isolate,
DCHECK_EQ(compilation_info->code_kind(), CodeKind::TURBOFAN_JS);
TimerEventScope<TimerEventRecompileSynchronous> timer(isolate);
RCS_SCOPE(isolate, RuntimeCallCounterId::kOptimizeNonConcurrent);
RCS_SCOPE(isolate, RuntimeCallCounterId::kOptimizeSynchronous);
TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("v8.compile"),
"V8.OptimizeNonConcurrent");
+4 -4
View File
@@ -442,14 +442,14 @@ class RuntimeCallTimer final {
V(BoundFunctionNameGetter) \
V(CodeGenerationFromStringsCallbacks) \
V(CompileBackgroundBaseline) \
V(CompileBackgroundBaselineBuild) \
V(CompileBackgroundBaselinePreVisit) \
V(CompileBackgroundBaselineVisit) \
V(CompileBackgroundBaselineBuild) \
V(CompileBaseline) \
V(CompileBaselineBuild) \
V(CompileBaselineFinalization) \
V(CompileBaselinePreVisit) \
V(CompileBaselineVisit) \
V(CompileBaselineBuild) \
V(CompileCollectSourcePositions) \
V(CompileDeserialize) \
V(CompileEnqueueOnDispatcher) \
@@ -516,11 +516,11 @@ class RuntimeCallTimer final {
V(OptimizeConcurrentPrepare) \
V(OptimizeFinalizePipelineJob) \
V(OptimizeHeapBrokerInitialization) \
V(OptimizeNonConcurrent) \
V(OptimizeNonConcurrentMaglev) \
V(OptimizeRevectorizer) \
V(OptimizeSerialization) \
V(OptimizeSerializeMetadata) \
V(OptimizeSynchronous) \
V(OptimizeSynchronousMaglev) \
V(ParseEval) \
V(ParseFunction) \
V(PropertyCallback) \
+1 -1
View File
@@ -18,7 +18,7 @@ namespace internal {
MaybeHandle<Code> Maglev::Compile(Isolate* isolate, Handle<JSFunction> function,
BytecodeOffset osr_offset) {
DCHECK(v8_flags.maglev);
RCS_SCOPE(isolate, RuntimeCallCounterId::kOptimizeNonConcurrentMaglev);
RCS_SCOPE(isolate, RuntimeCallCounterId::kOptimizeSynchronousMaglev);
std::unique_ptr<maglev::MaglevCompilationInfo> info =
maglev::MaglevCompilationInfo::New(isolate, function, osr_offset);
if (!maglev::MaglevCompiler::Compile(isolate->main_thread_local_isolate(),
+6
View File
@@ -1937,6 +1937,8 @@ code is governed by a BSD-style license that can be found in the LICENSE file.
this.groups = [
this.total,
Group.groups.get('ic').entry(),
Group.groups.get('optimize-maglev-background').entry(),
Group.groups.get('optimize-maglev').entry(),
Group.groups.get('optimize-background').entry(),
Group.groups.get('optimize').entry(),
Group.groups.get('compile-background').entry(),
@@ -2265,6 +2267,10 @@ code is governed by a BSD-style license that can be found in the LICENSE file.
}
Group.add('total', new Group('Total', /.*Total.*/, '#BBB', true, false));
Group.add('ic', new Group('IC', /(.*IC_.*)|IC/, "#3366CC"));
Group.add('optimize-maglev-background', new Group('Optimize-Maglev-Background',
/.*Optimize(d?-?)(Background|Concurrent).*Maglev.*/, "#962c02"));
Group.add('optimize-maglev', new Group('Optimize-Maglev',
/.*Maglev.*/, "#fc4f26"));
Group.add('optimize-background', new Group('Optimize-Background',
/.*Optimize(d?-?)(Background|Concurrent).*/, "#702000"));
Group.add('optimize', new Group('Optimize',
+18 -14
View File
@@ -369,21 +369,25 @@ def read_stats(path, domain, args):
groups = [];
if args.aggregate:
groups = [
('Group-IC', re.compile(".*IC_.*")),
('Group-OptimizeBackground', re.compile(".*OptimizeBackground.*")),
('Group-IC', re.compile(r".*IC_.*")),
('Group-OptimizeMaglevBackground',
re.compile(r".*Optimize(Background|Concurrent).*Maglev.*")),
('Group-OptimizeMaglev', re.compile(r".*Maglev.*")),
('Group-OptimizeBackground',
re.compile(r".*Optimize(Background|Concurrent).*")),
('Group-Optimize',
re.compile("StackGuard|.*Optimize.*|.*Deoptimize.*|Recompile.*")),
('Group-CompileBackground', re.compile("(.*CompileBackground.*)")),
('Group-Compile', re.compile("(^Compile.*)|(.*_Compile.*)")),
('Group-ParseBackground', re.compile(".*ParseBackground.*")),
('Group-Parse', re.compile(".*Parse.*")),
('Group-Callback', re.compile(".*Callback.*")),
('Group-API', re.compile(".*API.*")),
('Group-GC-Custom', re.compile("GC_Custom_.*")),
('Group-GC-Background', re.compile("GC_.*BACKGROUND.*")),
('Group-GC', re.compile("GC_.*|AllocateInTargetSpace")),
('Group-JavaScript', re.compile("JS_Execution")),
('Group-Runtime', re.compile(".*"))
re.compile(r"StackGuard|.*Optimize.*|.*Deoptimize.*|Recompile.*")),
('Group-CompileBackground', re.compile(r"(.*CompileBackground.*)")),
('Group-Compile', re.compile(r"(^Compile.*)|(.*_Compile.*)")),
('Group-ParseBackground', re.compile(r".*ParseBackground.*")),
('Group-Parse', re.compile(r".*Parse.*")),
('Group-Callback', re.compile(r".*Callback.*")),
('Group-API', re.compile(r".*API.*")),
('Group-GC-Custom', re.compile(r"GC_Custom_.*")),
('Group-GC-Background', re.compile(r"GC_.*BACKGROUND.*")),
('Group-GC', re.compile(r"GC_.*|AllocateInTargetSpace")),
('Group-JavaScript', re.compile(r"JS_Execution")),
('Group-Runtime', re.compile(r".*"))
]
with open(path, "rt") as f:
# Process the whole file and sum repeating entries.
+18 -15
View File
@@ -5,20 +5,23 @@
import re
RUNTIME_CALL_STATS_GROUPS = [
('Group-IC', re.compile(".*IC_.*")),
('Group-OptimizeBackground', re.compile(".*OptimizeBackground.*")),
('Group-IC', re.compile(r".*IC_.*")),
('Group-OptimizeMaglevBackground',
re.compile(r".*Optimize(Background|Concurrent).*Maglev.*")),
('Group-OptimizeMaglev', re.compile(r".*Maglev.*")),
('Group-OptimizeBackground', re.compile(r".*OptimizeBackground.*")),
('Group-Optimize',
re.compile("StackGuard|.*Optimize.*|.*Deoptimize.*|Recompile.*")),
('Group-CompileBackground', re.compile("(.*CompileBackground.*)")),
('Group-Compile', re.compile("(^Compile.*)|(.*_Compile.*)")),
('Group-ParseBackground', re.compile(".*ParseBackground.*")),
('Group-Parse', re.compile(".*Parse.*")),
('Group-Network-Data', re.compile(".*GetMoreDataCallback.*")),
('Group-Callback', re.compile(".*(Callback)|(Blink \+\+).*")),
('Group-API', re.compile(".*API.*")),
('Group-GC-Custom', re.compile("GC_Custom_.*")),
('Group-GC-Background', re.compile("GC_.*BACKGROUND.*")),
('Group-GC', re.compile("GC_.*|AllocateInTargetSpace")),
('Group-JavaScript', re.compile("JS_Execution")),
('Group-Runtime', re.compile(".*"))
re.compile(r"StackGuard|.*Optimize.*|.*Deoptimize.*|Recompile.*")),
('Group-CompileBackground', re.compile(r"(.*CompileBackground.*)")),
('Group-Compile', re.compile(r"(^Compile.*)|(.*_Compile.*)")),
('Group-ParseBackground', re.compile(r".*ParseBackground.*")),
('Group-Parse', re.compile(r".*Parse.*")),
('Group-Network-Data', re.compile(r".*GetMoreDataCallback.*")),
('Group-Callback', re.compile(r".*(Callback)|(Blink \+\+).*")),
('Group-API', re.compile(r".*API.*")),
('Group-GC-Custom', re.compile(r"GC_Custom_.*")),
('Group-GC-Background', re.compile(r"GC_.*BACKGROUND.*")),
('Group-GC', re.compile(r"GC_.*|AllocateInTargetSpace")),
('Group-JavaScript', re.compile(r"JS_Execution")),
('Group-Runtime', re.compile(r".*"))
]