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

オープン
#977 コメント 0 件 リアクション 0 件 担当者 1 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@ocots がすでに取り組んでいます。

2026年10月11日 から。

評価

この issue はまだ評価されていません。

説明

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).

主要言語
Julia
スター
135
フォーク
11
平均マージ
7時間 51分
マージ済み PR(30日)
22

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

control-toolbox/OptimalControl.jl のほかの issue

control-toolbox/OptimalControl.jl の issue をすべて見る

似ている issue

Julia の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。