about summary refs log tree commit diff
path: root/src/tools/opt-dist
AgeCommit message (Collapse)AuthorLines
2023-10-23Partial Revert: "Auto merge of #117018 - Kobzol:opt-dist-cargo-stage0"Urgau-1/+6
2023-10-22Auto merge of #117062 - Kobzol:update-rustc-perf, r=Mark-Simulacrumbors-2/+2
Update rustc-perf version Needed to unblock https://github.com/rust-lang/rust/pull/116033. The commit first needs to be uploaded to our mirrors. r? `@Mark-Simulacrum`
2023-10-22Update rustc-perf versionJakub Beránek-2/+2
2023-10-22Pass host triple when running tests in `opt-dist`Jakub Beránek-0/+2
2023-10-22Use beta cargo in opt-distJakub Beránek-6/+1
Using the new cargo caused issues when a backwards-incompatible change was made to cargo.
2023-10-16opt-dist: disable unused features for tabled crateklensy-1/+1
2023-10-11Pass BOLT settings at the correct stepJakub Beránek-3/+7
2023-10-09Add `--enable-bolt-settings` bootstrap flagJakub Beránek-0/+6
2023-10-09Optimize `librustc_driver.so` with BOLTJakub Beránek-43/+84
2023-10-02Add artifact size and step duration summaries from `opt-dist` to github job ↵Jakub Beránek-28/+94
summary
2023-10-02Auto merge of #115898 - onur-ozkan:config-change-tracking, r=Mark-Simulacrumbors-1/+1
bootstrap major change detection implementation The use of `changelog-seen` and `bootstrap/CHANGELOG.md` has not been functional in any way for many years. We often do major/breaking changes but never update the changelog file or the `changelog-seen`. This is an alternative method for tracking major or breaking changes and informing developers when such changes occur. Example output when bootstrap detects a major change: ![image](https://github.com/rust-lang/rust/assets/39852038/ee802dfa-a02b-488b-a433-f853ce079b8a)
2023-10-01implement major change tracking for the bootstrap configurationonur-ozkan-1/+1
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-09-18Fix build on WindowsJakub Beránek-0/+1
2023-09-13Resolve clippy warningsJakub Beránek-8/+6
2023-09-13Refactor rustc-perf buildingJakub Beránek-11/+13
2023-09-12Add a Local environment to `opt-dist`Jakub Beránek-5/+77
This makes it easier to build a PGO/BOLT optimized `rustc` locally, outside of CI.
2023-09-12Fix `reset_directory` functionJakub Beránek-1/+1
Before it was not deleting non-empty directories.
2023-09-12Refactor EnvironmentJakub Beránek-272/+260
2023-09-12Make executable extension platform, rather than environment dependentJakub Beránek-20/+20
2023-09-12Store target triple in environmentJakub Beránek-10/+27
2023-09-04Retry download of rustc-perf in opt-distJakub Beránek-1/+30
This should help resolving spurious network errors. It also increases the timeout for the archive download.
2023-09-04Mirror the rustc-perf sourceMark Rousskov-1/+1
This avoids issues with the GitHub /archive/ links which can be somewhat unreliable and are currently causing CI issues.
2023-08-10Auto merge of #114001 - meysam81:issue-111894-fix, r=clubby789bors-2/+2
fix(bootstrap): rename exclude flag to skip 🐛 fixes #111894
2023-08-09Remove usage of `--use-old-text` for BOLTJakub Beránek-1/+6
2023-08-07Rename method in `opt-dist`Jakub Beránek-5/+5
This makes it clearer that the LLVM is the host one (it doesn't necessarily have to be downloaded).
2023-08-06fix(bootstrap): rename exclude flag to skip 🐛Meysam Azad-2/+2
2023-08-02Generalize duration analysisJakub Beránek-11/+23
Use the correct `llvm-profdata` binary in `opt-dist`
2023-07-31Rollup merge of #113804 - Kobzol:opt-dist-version, r=Mark-SimulacrumMatthias Krüger-6/+19
Resolve correct archive version name in `opt-dist` Should resolve the master part of https://github.com/rust-lang/rust/issues/113784. r? `@Mark-Simulacrum`
2023-07-31Pass BOLT profile to bootstrap to be included in the reproducible artifacts ↵Jakub Beránek-23/+28
archive
2023-07-31Implement BOLT optimization in the `opt-dist` toolJakub Beránek-24/+163
2023-07-27Auto merge of #113779 - Kobzol:try-build-no-lto, r=Mark-Simulacrumbors-1/+31
Build the first LLVM without LTO in try builds Currently, we perform three LLVM builds in the Linux x64 dist builder, which is used for `try` builds: 1) "Normal" LLVM - takes ~5s to compile thanks to `sccache`, but ~8 minutes to link because of ThinLTO 2) PGO instrumented LLVM - same timings as 1) 3) PGO optimized LLVM - takes about 20 minutes to build When I tried to disable LTO for build 1), it suddenly takes only about a minute to build, because the linking step is much faster. The first LLVM doesn't really need LTO all that much. Without it, it will be a bit slower to build `rustc` in two subsequent steps, but it seems that the ~7 minutes saved on linking it do win that back. Btw, we can't use the host LLVM for build 1), because this LLVM then builds `rustc` in PGO instrumented mode, and we need the same compiler when later PGO optimizing `rustc`. And we want to use our in-house LLVM for that I think.
2023-07-18Try to build LLVM without LTOJakub Beránek-1/+31
2023-07-17Resolve correct archive version name in `opt-dist`Jakub Beránek-6/+38
2023-07-16Use log groups in `opt-dist`Jakub Beránek-20/+53
Some of the output was quite verbose in CI logs, this should help with that.
2023-07-14Print artifact sizes in `opt-dist`Jakub Beránek-5/+45
2023-07-09Port PGO/LTO/BOLT optimized build pipeline to RustJakub Beránek-0/+1240