Skip to content

Commit 8cc07f9

Browse files
committed
Refine performance report
- no longer do the rough benchmark as the internal benchmark has more information and appears to be more stable - try to append the report to the CI job summary to be able to compare runs
1 parent 32d0e7d commit 8cc07f9

File tree

2 files changed

+7
-19
lines changed

2 files changed

+7
-19
lines changed

.github/workflows/performance-report.yml

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -120,20 +120,6 @@ jobs:
120120
echo "export { rollup as newRollup } from '../../_benchmark/current/rollup.js';" >> ./scripts/perf-report/rollup-artefacts.js
121121
- name: Run internal benchmark
122122
run: node --expose-gc scripts/perf-report/index.js
123-
- name: Install benchmark tool
124-
run: cargo install --locked hyperfine
125-
- name: Run Rough benchmark
126-
run: |
127-
hyperfine --warmup 1 --export-markdown _benchmark/rough-report.md --show-output --runs 3 \
128-
'node _benchmark/previous/bin/rollup -i ./perf/entry.js -o _benchmark/result/previous.js' \
129-
'node _benchmark/current/bin/rollup -i ./perf/entry.js -o _benchmark/result/current.js'
130-
- name: Combine benchmark reports
131-
run: |
132-
echo "# Performance report!" > _benchmark/result.md
133-
echo "## Rough benchmark" >> _benchmark/result.md
134-
cat _benchmark/rough-report.md >> _benchmark/result.md
135-
echo "## Internal benchmark" >> _benchmark/result.md
136-
cat _benchmark/internal-report.md >> _benchmark/result.md
137123
- name: Find Performance report
138124
uses: peter-evans/find-comment@v3
139125
id: findPerformanceReport

scripts/perf-report/report-collector.js

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { writeFile } from 'node:fs/promises';
1+
import { appendFile, writeFile } from 'node:fs/promises';
22
import { fileURLToPath } from 'node:url';
33

44
export default new (class ReportCollector {
@@ -28,10 +28,12 @@ export default new (class ReportCollector {
2828
}
2929
outputMsg() {
3030
if (process.env.CI) {
31-
return writeFile(
32-
fileURLToPath(new URL('../../_benchmark/internal-report.md', import.meta.url)),
33-
removeAnsiStyles(this.#messageList.join('\n'))
34-
);
31+
const result = `# Performance report
32+
${removeAnsiStyles(this.#messageList.join('\n'))}`;
33+
return Promise.all([
34+
writeFile(fileURLToPath(new URL('../../_benchmark/result.md', import.meta.url)), result),
35+
process.env.GITHUB_STEP_SUMMARY && appendFile(process.env.GITHUB_STEP_SUMMARY, result)
36+
]);
3537
}
3638
}
3739
})();

0 commit comments

Comments
 (0)