Skip to content

Cache LLVM between try runs #112011

Open
Open
@jyn514

Description

@jyn514

We currently spend an inordinate amount of time rebuilding LLVM on every try run. See for example https://github.com/rust-lang-ci/rust/actions/runs/5073748000/jobs/9113150676#step:25:38905, where building LLVM with PGO and BOLT takes up 111 out of 131 total minutes of the run.

We should cache LLVM between runs so perf runs don't take so long. It should be fine to cache LLVM until the next time the src/llvm-project is updated, the same way download-ci-llvm works today. To avoid having three different LLVM artifacts stored in S3 per commit, we'd replace the current artifacts with the BOLT artifacts, leaving the -alt builds as the unoptimized + debug-assertions build.

@rust-lang/wg-llvm @Kobzol @rust-lang/infra

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.T-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions