[all-commits] [llvm/llvm-project] 614807: [BOLT] Support multiple perf data inputs
Amir Ayupov via All-commits
all-commits at lists.llvm.org
Mon Jun 1 08:24:32 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 61480755ee91a7e1a24726fbcf4d6fd0e9b561e9
https://github.com/llvm/llvm-project/commit/61480755ee91a7e1a24726fbcf4d6fd0e9b561e9
Author: Amir Ayupov <aaupov at fb.com>
Date: 2026-06-01 (Mon, 01 Jun 2026)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/test/X86/pre-aggregated-perf.test
M bolt/test/perf2bolt/perf_test.test
M bolt/tools/driver/llvm-bolt.cpp
M bolt/tools/heatmap/heatmap.cpp
Log Message:
-----------
[BOLT] Support multiple perf data inputs
Allow multiple -p/-perfdata args (comma-separated and repeated).
Process them in parallel with `--perfdata-jobs/-pj` (default 4,
0 for all available hardware threads). Keep YAML/DataReader
inputs single-profile only.
This also enables density computation with multiple perf files.
Prior to that, it was impossible to compute total density as
it wasn't computed from symbolized profiles.
Depends on
#199323
#199322
#199321
#199320
Test Plan:
Updated pre-aggregated-perf.test and perf_test
For a large binary (300MB text) and 7 ETM perf data files
(6GB each), compared to parallel perf2bolt + merge-fdata:
* processing time is equal: 670+3s -> 669s (within noise),
* output is equivalent: sorted fdata is equal.
Reviewers:
paschalis-mpeis, rafaelauler, yozhu, ayermolo, yavtuk, maksfb, yota9
Reviewed By: paschalis-mpeis, rafaelauler
Pull Request: https://github.com/llvm/llvm-project/pull/199324
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list