CI and documentation: add the kkt GPU runner (CI job, docs build), keep occidata

Đang mở
#977 0 bình luận 0 reaction 1 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@ocots đang làm issue này rồi.

Từ ngày 11/10/2026.

Đánh giá

Issue này chưa được đánh giá.

Mô tả

Summary

The kkt self-hosted GPU runner is online again (gh api orgs/control-toolbox/actions/runners lists kkt, occidata-runner and pinwheel), and it is faster than occidata. Use it in the CI and in the documentation build, next to occidata.

What to change

  1. .github/workflows/CI.yml: add a job test-gpu-kkt, a copy of test-gpu-occidata, triggered by the label run ci kkt-runner (the label already exists in the repository) and with runs_on: '[["kkt"]]', runner_type: 'self-hosted'. Keep the if: condition on the specific label, as for the other jobs.
  2. .github/workflows/Documentation.yml (gpu_runner: '["occidata"]'): switch to '["kkt"]', since the build is faster there. Update the comments that describe occidata (cold build of 2265 s, the shared box, the Monday cache purge): the timing has to be measured again on kkt, and gpu_timeout_minutes adjusted if it turns out to be much shorter. Check that the push to the gh-pages branch works from this runner, as it was confirmed for occidata (CTActions#71).
  3. Tests that check the runner name: test/runtests.jl already matches ("kkt", "occidata") on RUNNER_NAME, and the environment-contract test uses it (ON_GPU_RUNNER). So the loud failure for a missing GPU already covers both. To verify, then:
    • grep for any other check on one name only (test/suite/flows/test_gpu_routing.jl, the comments in test/suite/environment/test_environment_contract.jl), and update the comments;
    • run the GPU job on kkt once, to see that the GPU tests are not skipped (CUDA_FUNCTIONAL, GPU_EXTENSION_ARMED).
  4. Done — the Handbook's WORKFLOWS.md moved to CTActions, whose docs/conventions/runners.md now says that kkt is back in service since 2026-10-15. Original text: Handbook (WORKFLOWS.md, section on the labels and runners): it said that kkt is retired and "fully retired", and that the label kkt-runner should be deleted. This is no longer true; it has to be corrected in the Handbook, otherwise the next reader will remove what this issue adds.

Also

Related: control-toolbox/CTFlows.jl#412 (GPU test guards compared RUNNER_NAME with kkt only; the same rule, with both names), #885 and #946 (GPU documentation on occidata), and #976 (documentation of the GPU for the indirect method, which will use the same build).

Ngôn ngữ chính
Julia
Star
135
Fork
11
Merge trung bình
7 giờ 51 phút
Pull request đã merge (30 ngày)
22

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của control-toolbox/OptimalControl.jl

Tất cả issue của control-toolbox/OptimalControl.jl

Issue tương tự

Thêm issue về Julia

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.