Skip to content

Commit e1158c8

Browse files
Merge pull request #21104 from emberjs/nvp/reduce-tracerbench-hacks-via-PRing-tracerbench
Reduce tracerbench hacks via PRing tracerbench updates
2 parents f9ecf88 + 9b47ac7 commit e1158c8

3 files changed

Lines changed: 55 additions & 33 deletions

File tree

bin/benchmark/run.mjs

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -171,36 +171,13 @@ async function bootAndRun({ headless = true } = {}) {
171171
'--debug',
172172
'--browserArgs',
173173
[
174-
'--no-sandbox',
175-
'--crash-dumps-dir=./tmp',
176-
// Disable task throttling (also in TracerBench defaults, but explicit here for clarity)
177-
'--disable-background-timer-throttling',
178-
'--disable-backgrounding-occluded-windows',
179-
'--disable-renderer-backgrounding',
180-
// Disable caching and unnecessary subsystems
181-
'--disable-dev-shm-usage',
182-
'--disable-cache',
183-
'--disable-v8-idle-tasks',
184-
'--disable-breakpad',
185-
'--disable-component-update',
186-
'--disable-background-networking',
187-
'--disable-notifications',
188-
'--disable-hang-monitor',
189-
'--safebrowsing-disable-auto-update',
190-
'--ignore-certificate-errors',
191-
'--v8-cache-options=none',
192174
// Use the new headless mode to support multiple targets
193175
...(headless ? ['--headless=new'] : []),
194176
// GPU: use software rendering via SwiftShader, but do NOT
195177
// combine --disable-gpu with --use-gl or --disable-software-rasterizer
196178
// as the contradictory flags cause use-after-free crashes on macOS
197179
'--disable-gpu',
198180
'--disable-gpu-compositing',
199-
// Disable Chrome ML/TFLite features (suppresses XNNPACK/TFLite init)
200-
'--disable-features=TranslateUI',
201-
'--disable-features=UseChromiumML',
202-
'--disable-features=UseTfLite',
203-
'--disable-features=TensorFlowLite',
204181
].join(','),
205182
];
206183

Lines changed: 52 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,60 @@
11
diff --git a/dist/create-trace-benchmark.js b/dist/create-trace-benchmark.js
2-
index 5918e8f7665b3e796ef88283fc40c2b3286a564f..e1a8768964de8b3c16d38bfb6280d836b45aba0b 100644
2+
index 5918e8f7665b3e796ef88283fc40c2b3286a564f..b9927ba8f639c0a9ecc70144362da439468f1b3a 100644
33
--- a/dist/create-trace-benchmark.js
44
+++ b/dist/create-trace-benchmark.js
5-
@@ -45,9 +45,8 @@ function createTraceBenchmark(group, sampleTrace, options = {}) {
5+
@@ -45,35 +45,27 @@ function createTraceBenchmark(group, sampleTrace, options = {}) {
66
}
77
exports.default = createTraceBenchmark;
88
function getCategories(isTrial, options) {
99
- const categories = ['-*', ...defaultCategories];
10-
+ const categories = [...defaultCategories];
11-
if (isTrial) {
10+
- if (isTrial) {
1211
- categories.push(...captureAllDevtoolsTimelineCategories, ...captureCpuProfileCategories, captureCpuProfilesHiresCategory, captureFilmStripCategory, ...capturePaintProfileCategories);
13-
if (options.additionalTrialCategories) {
14-
categories.push(...options.additionalTrialCategories);
15-
}
12+
- if (options.additionalTrialCategories) {
13+
- categories.push(...options.additionalTrialCategories);
14+
- }
15+
+ const categories = [...defaultCategories];
16+
+ // include the basic disabled by default devtools categories
17+
+ if (options.captureDevtoolsTimeline) {
18+
+ categories.push(...captureDevtoolsTimelineCategories);
19+
}
20+
- else {
21+
- // include the basic disabled by default devtools categories
22+
- if (options.captureDevtoolsTimeline) {
23+
- categories.push(...captureDevtoolsTimelineCategories);
24+
- }
25+
- if (options.captureV8RuntimeStats) {
26+
- // this breaks devtools display of CPU profile in dev tools
27+
- categories.push(...captureV8RuntimeStatsCategories);
28+
- }
29+
- if (options.captureCpuProfile) {
30+
- // includes runtime samples
31+
- categories.push(...captureCpuProfileCategories);
32+
- }
33+
- if (options.captureFilmStrip) {
34+
- categories.push(captureFilmStripCategory);
35+
- }
36+
- if (options.capturePaintProfile) {
37+
- categories.push(...capturePaintProfileCategories);
38+
- }
39+
- if (options.additionalCategories) {
40+
- categories.push(...options.additionalCategories);
41+
- }
42+
+ if (options.captureV8RuntimeStats) {
43+
+ // this breaks devtools display of CPU profile in dev tools
44+
+ categories.push(...captureV8RuntimeStatsCategories);
45+
+ }
46+
+ if (options.captureCpuProfile) {
47+
+ // includes runtime samples
48+
+ categories.push(...captureCpuProfileCategories);
49+
+ }
50+
+ if (options.captureFilmStrip) {
51+
+ categories.push(captureFilmStripCategory);
52+
+ }
53+
+ if (options.capturePaintProfile) {
54+
+ categories.push(...capturePaintProfileCategories);
55+
+ }
56+
+ if (options.additionalCategories) {
57+
+ categories.push(...options.additionalCategories);
58+
}
59+
return categories;
60+
}

pnpm-lock.yaml

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)