Documentation: GPU for the indirect method (flows and shooting)
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 documentation covers the GPU for the direct method only. The page GPU (docs/src/solve/gpu.md) walks through solve(ocp; modeler=:exa_gpu, …): prerequisites, a worked problem, descriptive and explicit modes, which combinations work, performance notes.
The indirect method has nothing equivalent. The Flows overview has a short section "CPU and GPU" (docs/src/flows/overview.md) that says Flow(ocp, law; method=:gpu) exists, that the initial state and costate must be CuArrays, and sends the reader to the GPU flows page of CTFlows. A reader who wants to shoot on the GPU has no worked example in this documentation.
Proposal
Add a page (or a section next to the direct one) on the GPU for flows and shooting, built like the direct page:
- prerequisites (CUDA, Mooncake, the integrator package) and the
method=:gpukeyword of the constructor (not of the call); - one worked problem: build
Flow(ocp, law; method=:gpu), giveCuArrayinitial state and costate, integrate, and check the result against the CPU flow; - a shooting function evaluated on the GPU, with the solver of the nonlinear system on the CPU or GPU (to be checked: what CTFlows supports and what is useful in practice);
- what does not work (CPU arrays with
method=:gpu, Mooncake not loaded) and the error the user gets; - performance notes: when it pays off (large dimension or many trajectories), consistent with control-toolbox/CTFlows.jl#448 (Mooncake on CPU) and the ensemble flows of control-toolbox/CTFlows.jl#341.
Constraints
- The GPU blocks cannot be executed by the usual docs build: the direct page runs on the occidata runner (see #885 and #946). The new page should follow the same mechanism, with the output of the last run shown and checked by
@asserts on the runner. - Depends on the CTFlows side: control-toolbox/CTFlows.jl#436 (obscure
MethodErrors ofmethod=:gpu) is closed, so the errors can be quoted once released; the "CPU and GPU" section of the Flows overview, which says the error "does not name the cause yet", must then be updated.
Part of the final read tracked in #968.
- 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
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của control-toolbox/OptimalControl.jl
-
[Doc] User guide to the duals: every kind, constraint ↔ dual, direct ↔ indirectCó thể đã có người làm @ocots đã nhận 6 ngày trước. Đang mở
control-toolbox/OptimalControl.jl#1035 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Tests of the duals: every kind of constraint, direct vs indirect, pinned algorithmsCó thể đã có người làm @ocots đã nhận 6 ngày trước. Đang mở
control-toolbox/OptimalControl.jl#1034 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Doc] Examples for the sign convention of duals and costate (min/max, writing of constraints, direct vs indirect)Có thể đã có người làm @ocots đã nhận 14 ngày trước. Đang mở
control-toolbox/OptimalControl.jl#1016 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Documentation: sign conventions (min/max, p⁰, constraints, duals) and how they appear in a solutionCó thể đã có người làm @ocots đã nhận 16 ngày trước. Đang mởdocumentation
control-toolbox/OptimalControl.jl#1015 · 2 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Tests fail on Julia 1.13: keyword-only anonymous function in test/problems/goddard.jlCó thể đã có người làm @ocots đã nhận 18 ngày trước. Đang mở
control-toolbox/OptimalControl.jl#996 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của control-toolbox/OptimalControl.jl
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Add project: Typst_jll.jlCó thể đã có người làm @github-actions đã nhận hôm nay. Đang mởadd-project
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 76/100
YDX-2147483647/best-of-typst#590 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100