huggingface / huggingface/candle
Unable To Build for Nvidia GeForce GTX 1650
- Dominant language
- Rust
- Stars
- 21k
- Forks
- 1.8k
- Avg merge
- 16h 42m
- Merged PRs (30d)
- 25
Description
Here's my nvidia-smi:
```
Sat Jan 24 14:19:47 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.82.09 Driver Version: 580.82.09 CUDA Version: 13.0 |
+-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce GTX 1650 Off | 00000000:01:00.0 Off | N/A |
| N/A 58C P8 2W / 50W | 8MiB / 4096MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 457928 G /usr/lib/xorg/Xorg 4MiB |
+-----------------------------------------------------------------------------------------+
```
With either Cuda 13 or 12 libraries installed I can't manage to compile candle-kernels, which seems required for GPU support:
```
warning: candle-kernels@0.9.2-alpha.2: Builder { cuda_root: None, kernel_paths: ["src/affine.cu", "src/binary.cu", "src/cast.cu", "src/conv.cu", "src/fill.cu", "src/indexing.cu", "src/moe/moe_gguf.cu", "src/moe/moe_wmma.cu", "src/moe/moe_wmma_gguf.cu", "src/quantized.cu", "src/reduce.cu", "src/sort.cu", "src/ternary.cu", "src/unary.cu"], watch: [], include_paths: ["src/binary_op_macros.cuh", "src/compatibility.cuh", "src/cuda_utils.cuh", "src/moe/gguf.cuh", "src/moe/moe_utils.cuh"], compute_cap: Some(75), out_dir: "/home/agent/git/candle/candle-kernels/target/debug/build/candle-kernels-441dca61f066a9ad/out", extra_args: ["--expt-relaxed-constexpr", "-std=c++17", "-O3"] }
error: failed to run custom build command for `candle-kernels v0.9.2-alpha.2 (/home/agent/git/candle/candle-kernels)`
Caused by:
process didn't exit successfully: `/home/agent/git/candle/candle-kernels/target/debug/build/candle-kernels-6e0c8e4102af0db9/build-script-build` (exit status: 101)
--- stdout
cargo::rerun-if-changed=build.rs
cargo::rerun-if-changed=src/compatibility.cuh
cargo::rerun-if-changed=src/cuda_utils.cuh
cargo::rerun-if-changed=src/binary_op_macros.cuh
cargo:info=["/usr", "/usr/local/cuda", "/opt/cuda", "/usr/lib/cuda", "C:/Program Files/NVIDIA GPU Computing Toolkit", "C:/CUDA"]
cargo:rerun-if-env-changed=CUDA_COMPUTE_CAP
cargo:rustc-env=CUDA_COMPUTE_CAP=75
cargo::warning=Builder { cuda_root: None, kernel_paths: ["src/affine.cu", "src/binary.cu", "src/cast.cu", "src/conv.cu", "src/fill.cu", "src/indexing.cu", "src/moe/moe_gguf.cu", "src/moe/moe_wmma.cu", "src/moe/moe_wmma_gguf.cu", "src/quantized.cu", "src/reduce.cu", "src/sort.cu", "src/ternary.cu", "src/unary.cu"], watch: [], include_paths: ["src/binary_op_macros.cuh", "src/compatibility.cuh", "src/cuda_utils.cuh", "src/moe/gguf.cuh", "src/moe/moe_utils.cuh"], compute_cap: Some(75), out_dir: "/home/agent/git/candle/candle-kernels/target/debug/build/candle-kernels-441dca61f066a9ad/out", extra_args: ["--expt-relaxed-constexpr", "-std=c++17", "-O3"] }
cargo:rerun-if-changed=src/binary_op_macros.cuh
cargo:rerun-if-changed=src/compatibility.cuh
cargo:rerun-if-changed=src/cuda_utils.cuh
cargo:rerun-if-changed=src/moe/gguf.cuh
cargo:rerun-if-changed=src/moe/moe_utils.cuh
cargo:rerun-if-env-changed=NVCC_CCBIN
cargo:rerun-if-changed=src/affine.cu
cargo:rerun-if-changed=src/conv.cu
cargo:rerun-if-changed=src/moe/moe_wmma.cu
cargo:rerun-if-changed=src/indexing.cu
cargo:rerun-if-changed=src/binary.cu
cargo:rerun-if-changed=src/fill.cu
cargo:rerun-if-changed=src/moe/moe_gguf.cu
cargo:rerun-if-changed=src/reduce.cu
cargo:rerun-if-changed=src/ternary.cu
cargo:rerun-if-changed=src/cast.cu
cargo:rerun-if-changed=src/moe/moe_wmma_gguf.cu
cargo:rerun-if-changed=src/sort.cu
cargo:rerun-if-changed=src/unary.cu
cargo:rerun-if-changed=src/quantized.cu
--- stderr
src/moe/moe_wmma.cu(110): warning #177-D: variable "laneId" was declared but never referenced
const int laneId = threadId % 32;
^
Remark: The warnings can be suppressed with "-diag-suppress "
src/moe/moe_wmma.cu(172): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment a_frag;
^
detected during instantiation of "void vllm_rs::moe_gemm_grouped_kernel(const T *, const T *, const int32_t *, const int32_t *, const float *, T *, int, int, int32_t, int32_t, int32_t) [with T=nv_bfloat16, WMMA_M=16, WMMA_N=16, WARPS_N=2]" at line 279
src/moe/moe_wmma.cu(173): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment b_frag;
^
detected during instantiation of "void vllm_rs::moe_gemm_grouped_kernel(const T *, const T *, const int32_t *, const int32_t *, const float *, T *, int, int, int32_t, int32_t, int32_t) [with T=nv_bfloat16, WMMA_M=16, WMMA_N=16, WARPS_N=2]" at line 279
src/moe/moe_wmma.cu(172): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment a_frag;
^
detected during instantiation of "void vllm_rs::moe_gemm_grouped_kernel(const T *, const T *, const int32_t *, const int32_t *, const float *, T *, int, int, int32_t, int32_t, int32_t) [with T=nv_bfloat16, WMMA_M=8, WMMA_N=32, WARPS_N=1]" at line 281
src/moe/moe_wmma.cu(173): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment b_frag;
^
detected during instantiation of "void vllm_rs::moe_gemm_grouped_kernel(const T *, const T *, const int32_t *, const int32_t *, const float *, T *, int, int, int32_t, int32_t, int32_t) [with T=nv_bfloat16, WMMA_M=8, WMMA_N=32, WARPS_N=1]" at line 281
src/moe/moe_wmma.cu(37): warning #177-D: variable "vllm_rs::NUM_VECS" was declared but never referenced
constexpr int NUM_VECS = 32;
^
src/moe/moe_wmma.cu(40): warning #177-D: variable "vllm_rs::WARPS_PER_BLOCK" was declared but never referenced
constexpr int WARPS_PER_BLOCK = 4;
^
4 errors detected in the compilation of "src/moe/moe_wmma.cu".
src/moe/moe_wmma_gguf.cu(259): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment a_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=32, block_q_t=block_q8_0, wrap_size=32]" at line 417
src/moe/moe_wmma_gguf.cu(260): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment b_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=32, block_q_t=block_q8_0, wrap_size=32]" at line 417
src/moe/moe_wmma_gguf.cu(259): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment a_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q4_K, wrap_size=32]" at line 417
src/moe/moe_wmma_gguf.cu(260): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment b_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q4_K, wrap_size=32]" at line 417
src/moe/moe_wmma_gguf.cu(259): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment a_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q2_K, wrap_size=64]" at line 417
src/moe/moe_wmma_gguf.cu(260): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment b_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q2_K, wrap_size=64]" at line 417
src/moe/moe_wmma_gguf.cu(259): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment a_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q3_K, wrap_size=64]" at line 417
src/moe/moe_wmma_gguf.cu(260): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment b_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q3_K, wrap_size=64]" at line 417
src/moe/moe_wmma_gguf.cu(259): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment a_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q5_K, wrap_size=64]" at line 417
src/moe/moe_wmma_gguf.cu(260): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment b_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q5_K, wrap_size=64]" at line 417
src/moe/moe_wmma_gguf.cu(259): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment a_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q6_K, wrap_size=64]" at line 417
src/moe/moe_wmma_gguf.cu(260): error: incomplete type "nvcuda::wmma::fragment" (aka "nvcuda::wmma::fragment") is not allowed
fragment b_frag;
^
detected during instantiation of "void moe_gemm_gguf_prefill_kernel(const T *, const uint8_t *, const int32_t *, const int32_t *, const float *, float *, int, int, int32_t, int32_t, int32_t, int) [with T=nv_bfloat16, qk=256, block_q_t=block_q6_K, wrap_size=64]" at line 417
12 errors detected in the compilation of "src/moe/moe_wmma_gguf.cu".
thread 'main' (91160) panicked at /home/agent/.cargo/git/checkouts/bindgen_cuda-327fc90ea2e55a67/c568a81/src/lib.rs:412:13:
nvcc error while compiling "src/moe/moe_wmma.cu":
# CLI "nvcc" "--gpu-architecture=sm_75" "--ptx" "--default-stream" "per-thread" "--output-directory" "/home/agent/git/candle/candle-kernels/target/debug/build/candle-kernels-441dca61f066a9ad/out" "--expt-relaxed-constexpr" "-std=c++17" "-O3" "-Isrc" "-Isrc/moe" "-I/usr/local/cuda/include" "src/moe/moe_wmma.cu"
# stdout
# stderr
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
```
AI assistants seem to think that my GPU doesn't support the necessary CUDA features for the kernel to compile for my GPU, but I"m not sure whether that's correct or not.
Is there any way to use candle without the kernels while still running on the GPU?
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reproducing the cargo build failure for candle-kernels with the reported CUDA libraries and compute capability 75. Inspect candle-kernels/src/moe/moe_wmma.cu and src/moe/moe_wmma_gguf.cu, along with build.rs, then verify that candle-kernels builds successfully and GPU support works on the reported GTX 1650.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- build-system, machine-learning
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100