File tree Expand file tree Collapse file tree
docker/host-x86_64/optional-x86_64-gnu-offload Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ FROM ubuntu:24.04
2+
3+ ARG DEBIAN_FRONTEND=noninteractive
4+
5+ RUN apt-get update && apt-get install -y --no-install-recommends \
6+ g++ \
7+ make \
8+ ninja-build \
9+ file \
10+ curl \
11+ ca-certificates \
12+ python3 \
13+ git \
14+ cmake \
15+ pkg-config \
16+ xz-utils \
17+ zlib1g-dev \
18+ && rm -rf /var/lib/apt/lists/*
19+
20+ COPY scripts/sccache.sh /scripts/
21+ RUN sh /scripts/sccache.sh
22+
23+ ENV NO_DOWNLOAD_CI_LLVM 1
24+ ENV CODEGEN_BACKENDS llvm
25+
26+ ENV RUST_CONFIGURE_ARGS \
27+ --build=x86_64-unknown-linux-gnu \
28+ --enable-clang \
29+ --enable-lld \
30+ --enable-llvm-offload \
31+ --enable-llvm-link-shared \
32+ --enable-ninja \
33+ --enable-option-checking \
34+ --disable-docs \
35+ --set llvm.download-ci-llvm=false
36+
37+ ENV SCRIPT="../x.py test --stage 2 --no-fail-fast \
38+ tests/codegen-llvm/gpu_offload"
Original file line number Diff line number Diff line change @@ -501,6 +501,11 @@ auto:
501501 doc_url : https://rustc-dev-guide.rust-lang.org/tests/autodiff-ci-job.html
502502 << : *job-linux-4c
503503
504+ - name : optional-x86_64-gnu-offload
505+ continue_on_error : true
506+ doc_url : https://rustc-dev-guide.rust-lang.org/tests/offload-ci-job.html
507+ << : *job-linux-4c
508+
504509 # ###################
505510 # macOS Builders #
506511 # ###################
Original file line number Diff line number Diff line change 3636 - [ GCC codegen backend] ( ./tests/codegen-backend-tests/cg_gcc.md )
3737 - [ Performance testing] ( ./tests/perf.md )
3838 - [ Autodiff CI job] ( ./tests/autodiff-ci-job.md )
39+ - [ Offload CI job] ( ./tests/offload-ci-job.md )
3940 - [ Pre-stabilization CI job for the next solver and polonius alpha] ( ./tests/x86_64-gnu-next-trait-solver-polonius-ci-job.md )
4041 - [ Standard library semver breakage test] ( ./tests/stdlib-semver-check.md )
4142 - [ Misc info] ( ./tests/misc.md )
Original file line number Diff line number Diff line change 1+ # Offload CI job
2+
3+ The [ ` optional-x86_64-gnu-offload ` ] job provides continuous test coverage for
4+ the experimental ` offload ` feature.
5+ It is an optional [ auto job] ( ./ci.md#auto-builds ) , so a failure does not prevent a
6+ pull request from being merged.
7+
8+ For more context about the feature, see the [ offload tracking issue] and the
9+ [ offload internals] ( ../offload/internals.md ) chapter.
10+
11+ ## What is tested
12+
13+ The job checks:
14+
15+ - host-side LLVM IR generation;
16+ - device-side LLVM IR generation for AMDGPU and NVPTX targets;
17+ - argument lowering in host and device code;
18+
19+ ## Running the job
20+
21+ To run the job in a try build, comment on a pull request:
22+
23+ ``` text
24+ @bors try jobs=optional-x86_64-gnu-offload
25+ ```
26+
27+ To run the job locally, run this command from a Rust checkout:
28+
29+ ``` console
30+ $ cargo run --manifest-path src/ci/citool/Cargo.toml run-local optional-x86_64-gnu-offload
31+ ```
32+
33+ See [ Testing with Docker] ( ./docker.md ) for more information about running CI jobs locally.
34+
35+ ## Point of contact
36+
37+ If you have questions or need help with a failure in this job, open a new topic
38+ in the [ offload Zulip channel] .
39+
40+ [ offload Zulip channel ] : https://rust-lang.zulipchat.com/#narrow/channel/422870-t-compiler.2Fgpgpu-backend
41+ [ offload tracking issue ] : https://github.com/rust-lang/rust/issues/131513
42+ [ `optional-x86_64-gnu-offload` ] : https://github.com/rust-lang/rust/blob/HEAD/src/ci/github-actions/jobs.yml
You can’t perform that action at this time.
0 commit comments