Skip to content

Gather PGO profiles in parallel#159524

Merged
rust-bors[bot] merged 2 commits into
rust-lang:mainfrom
Kobzol:opt-dist-parallel
Jul 19, 2026
Merged

Gather PGO profiles in parallel#159524
rust-bors[bot] merged 2 commits into
rust-lang:mainfrom
Kobzol:opt-dist-parallel

Conversation

@Kobzol

@Kobzol Kobzol commented Jul 18, 2026

Copy link
Copy Markdown
Member

This PR modifies opt-dist to:

  1. Gather PGO profiles in parallel, with 4 benchmarks executed at once. To improve CPU utilization.
  2. Optimize both LLVM and rustc with BOLT in parallel, because this takes ~4 minutes and is mostly sequential.

@rustbot rustbot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jul 18, 2026
@Kobzol

Kobzol commented Jul 18, 2026

Copy link
Copy Markdown
Member Author

@bors try jobs=dist-x86_64-linux

@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jul 18, 2026
Gather PGO profiles in parallel


try-job: dist-x86_64-linux
@Kobzol Kobzol mentioned this pull request Jul 18, 2026
@rust-bors

rust-bors Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b093d06 (b093d067249a36ce406b6dcd2147591f173d75d7)
Base parent: b26c8ef (b26c8ef0535b2de24a0af4048370caf449eebabd)

@Kobzol
Kobzol force-pushed the opt-dist-parallel branch from 70e86de to 6d17554 Compare July 18, 2026 19:29
@Kobzol

Kobzol commented Jul 18, 2026

Copy link
Copy Markdown
Member Author

@bors try jobs=dist-x86_64-linux
@rust-timer queue

@rust-timer

This comment has been minimized.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jul 18, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jul 18, 2026
Gather PGO profiles in parallel


try-job: dist-x86_64-linux
@rust-bors

rust-bors Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: e87c5cd (e87c5cd3898b6e5b5d8447b6fd4f5a1d03593b86)
Base parent: 8a3308e (8a3308ed506be56b8157dfc9242a145153331296)

@rust-timer

This comment has been minimized.

@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (e87c5cd): comparison URL.

Overall result: no relevant changes - no action needed

Benchmarking means the PR may be perf-sensitive. Consider adding rollup=never if this change is not fit for rolling up.

@rustbot label: -S-waiting-on-perf -perf-regression

Instruction count

This perf run didn't have relevant results for this metric.

Max RSS (memory usage)

This perf run didn't have relevant results for this metric.

Cycles

Results (secondary 25.1%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
25.1% [20.2%, 29.8%] 5
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Binary size

This perf run didn't have relevant results for this metric.

Bootstrap: 485.656s -> 485.33s (-0.07%)
Artifact size: 390.03 MiB -> 389.97 MiB (-0.02%)

@rustbot rustbot removed the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jul 18, 2026
@Kobzol
Kobzol marked this pull request as ready for review July 19, 2026 07:19
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@rustbot

rustbot commented Jul 19, 2026

Copy link
Copy Markdown
Collaborator

r? @jieyouxu

rustbot has assigned @jieyouxu.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Why was this reviewer chosen?

The reviewer was selected based on:

  • Fallback group: @Mark-Simulacrum, @jieyouxu
  • @Mark-Simulacrum, @jieyouxu expanded to Mark-Simulacrum, jieyouxu
  • Random selection from Mark-Simulacrum, jieyouxu

@rustbot

This comment has been minimized.

@Kobzol

Kobzol commented Jul 19, 2026

Copy link
Copy Markdown
Member Author

This makes the job faster by about 20 minutes 🎉

@Kobzol
Kobzol force-pushed the opt-dist-parallel branch from 6d17554 to c373810 Compare July 19, 2026 08:18

@jieyouxu jieyouxu left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jieyouxu

Copy link
Copy Markdown
Member

@bors r+

@rust-bors

rust-bors Bot commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

📌 Commit c373810 has been approved by jieyouxu

It is now in the queue for this repository.

@rust-bors rust-bors Bot added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 19, 2026
@rust-bors rust-bors Bot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
rust-bors Bot pushed a commit that referenced this pull request Jul 19, 2026
…uwer

Rollup of 6 pull requests

Successful merges:

 - #159524 (Gather PGO profiles in parallel)
 - #158850 (Avoid underflow for splatted rust-call receivers)
 - #159215 ([compiletest] Differentiate between LLVM LLDB and Apple LLDB)
 - #159347 (Document rustc_public lib.rs and update README)
 - #159469 (Reorganize `tests/ui/issues` [27/N])
 - #159512 (Add regression tests for fixed dead-code issues)
@rust-bors
rust-bors Bot merged commit 3040355 into rust-lang:main Jul 19, 2026
13 checks passed
@rustbot rustbot added this to the 1.99.0 milestone Jul 19, 2026
rust-timer added a commit that referenced this pull request Jul 19, 2026
Rollup merge of #159524 - Kobzol:opt-dist-parallel, r=jieyouxu

Gather PGO profiles in parallel

This PR modifies `opt-dist` to:
1. Gather PGO profiles in parallel, with 4 benchmarks executed at once. To improve CPU utilization.
2. Optimize both LLVM and rustc with BOLT in parallel, because this takes ~4 minutes and is mostly sequential.
@Kobzol
Kobzol deleted the opt-dist-parallel branch July 19, 2026 19:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants