Repository navigation
Vendor candle-kernels with a CUDA 12.2+ guard; CUDA build green again (#86) - #88
Merged
Merged
Conversation
…in_nan (#86) CUDA 12.6's cuda_fp16.hpp defines __hmax_nan/__hmin_nan for every arch, and candle-kernels 0.11.0 compatibility.cuh defined them again under __CUDA_ARCH__ < 800, so build-cuda-wheel.yml has been red on every branch since 2026-10-04. candle-kernels is now vendored like the other two forks (cuda12-candle-kernels-0.11.0.patch, vendor_candle.sh produces and --checks three trees, [patch.crates-io] in torch_c), and the block is guarded on the toolkit: < 800 and CUDA < 12.2. The 12.2 threshold follows upstream candle's later fix and is an assumption; a wrong threshold fails loudly. - build-cuda-wheel.yml now triggers on the vendored trees and the lock. - test_int8.py: patch wiring, lock, the exact guard, --check drift refusal. Nullified: stripping the version clause turns three vendoring tests red. Local: cargo build --release --locked passes (no nvcc here; CI builds it).
The int8 fork added DType::I8 without touching cuda_backend, so the cuda feature failed with E0004 at ten matches once the kernels compiled. CudaStorageSlice has no I8 variant, so nine sites refuse I8 by name (CudaError::UnsupportedDtype with the op); Scalar::I8 passes through as a kernel argument. Patch regenerated; vendor_candle.sh --check passes.
Contributor
Gate on CI (issue #24)Full gate: 123 suites = 115 run on at least one CI runner + 8 local-only. The local gate (
Local-only: verified by no CI runner (8)
Suites that verified nothing, or failed, on a runner
Every suite, every runner
A SKIP is unverified on that runner, never passed. UNVERIFIED means the suite ran and every one of its tests skipped by name. |
|
The 12.6 / |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #86 (once build-cuda-wheel is green on this branch)
Defect fixed: CUDA build red on every branch since 2026-10-04 (
__hmax_nanredefined under CUDA 12.6). candle-kernels vendored like candle-core / candle-metal-kernels; one-hunk patch guards the block on__CUDA_ARCH__ < 800and CUDA < 12.2 (threshold assumed from upstream candle's later fix; a wrong threshold fails loudly, never silently).Test added: 4 vendoring tests in
tests/numerics/test_int8.py; nullified by stripping the guard (3 red).Evidence: local
cargo build --release --lockedpasses (no nvcc on this Mac). Only build-cuda-wheel (CUDA 12.6, sm_75) can prove the CUDA build; it is a build claim only (AGENTS.md §16).