Skip to content

Eval bug: MTP decoding crash on pre-Ampere GPUs (with working patch!) #25713

Description

@theIvanR

Name and Version

version: 10011 (bf2c86d)
built with MSVC 19.29.30159.0 for Windows AMD64

Operating systems

Windows

GGML backends

CUDA

Hardware

  • CPU: Xeon E5-2699 v3
  • RAM: 64 GB
  • GPU: 4× Tesla K40c (Compute Capability 3.5 / SM35)
  • CUDA: 11.8

Models

Any MTP models, for example Qwen 3.6 35B A3B MTP GGUF model (unsloth from HF)

Problem description & steps to reproduce

Steps to reproduce

  1. Build the latest llama.cpp from master.
  2. Run a Qwen 3.6 35B A3B MTP GGUF model (unsloth from HF)
  3. Use CUDA backend.
  4. Enable MTP inference.

Run with:

@echo off
setlocal

set CUDA_LAUNCH_BLOCKING=1

set "LLAMA_EXE=C:\Users\Admin\source\llama.cpp\build_gpu_cuda\bin\llama-server.exe"

set "MODEL_DIR=C:\Users\Admin\Documents\LLM Models\unsloth\Qwen3.6-35B-A3B-MTP-GGUF"
set "MODEL=Qwen3.6-35B-A3B-UD-Q4_K_XL.gguf"
set "MMPROJ=mmproj-F16.gguf"

pushd "%MODEL_DIR%" || exit /b 1

"%LLAMA_EXE%" ^
  -m "%MODEL%" ^
  --mmproj "%MMPROJ%" ^
  -ngl 999 ^
  --tensor-split 0.25,0.25,0.25,0.25 ^
  --spec-type draft-mtp --spec-draft-n-max 2

set "ERR=%ERRORLEVEL%"
popd
exit /b %ERR%

Expected Outcome

  • Working inference.

Actual Outcome

  • Without MTP enabled model inference works, with MTP enabled model inference crashes.
    cuda.cu:104: CUDA error

Cause and Remediation of Problem

First Bad Commit

When this PR was merged: #25679

Relevant log output

Logs
cuda.cu:104: CUDA error

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions