Skip to content

DFlash2 is not working with --split-mode tensor #27819

Open

Description

@art-den

Assertion is failed on llama-server startup:

ggml\src\ggml-backend-meta.cpp:543: GGML_ASSERT(src_ss[0].axis != GGML_BACKEND_SPLIT_AXIS_0) failed

Minimal command options to reproduce assert:

llama-server.exe ^
    -m Qwen3.8-27B-UD-Q4_K_XL.gguf ^
    --model-draft Qwen3.8-27B-DFlash2-Q4_K_M.gguf ^
    --spec-type draft-dflash ^
    --spec-draft-n-max 2 ^
    --ctx-size 16384 ^
    --split-mode tensor

It is working with --split-mode layer (no assertion on startup)

More information:

  • Windows 10
  • Cuda
  • RTX 5060 Ti 16 Gb x2

Activity

  1. aki1-asr commented on Aug 27, 2026

    @aki1-asr

    I'm experiencing the exact same issue and it's causing me trouble.
    By the way, I've confirmed that the same problem occurs with DSpark as well.
    Additionally, there's no issue with regular DFlash (not v2) or MTP.

    Edit:
    While the triggering conditions are the same, the specific location where the error occurs differs slightly in my case.

    ggml/src/ggml-backend-meta.cpp:537: GGML_ASSERT(ret.axis != GGML_BACKEND_SPLIT_AXIS_UNKNOWN) failed
    

    Environment:

    • Ubuntu Server 26.04
    • ROCm 7.2.4
    • Radeon AI Pro R9700 * 2
  2. art-den commented on Aug 28, 2026

    @art-den
    Author
  3. Anbeeld commented on Aug 28, 2026

    @Anbeeld

    Sharing a separate tensor-split runtime report that may remain relevant after the DFlash2 initialization problem is fixed:

    #27750

    The separate runtime findings are:

    • Qwen3.8 tensor split can fail without DFlash2.
    • A related failure reproduces on official upstream llama.cpp with MTP disabled.
    • Two recent tensor-split runs failed at: ggml_cuda_ar_acquire_slot allreduce.cu:368 cudaEventSynchronize(p->ev_pool[i][slot].ker)
    • A third fresh tensor-split run terminated during first-request prefill.
    • 3/3 recent fresh tensor-split runs failed.
    • CUDA graphs and graph reuse are not required.
    • VRAM exhaustion is not required.
    • Layer split can also eventually fail, but has been substantially more stable.
  4. aki1-asr commented on Aug 29, 2026

    @aki1-asr

    @art-den

    I fetched and tested PR #27858.

    As a result, DSpark loaded correctly and inference worked fine.
    However, for DFlash2, while it loads successfully, it crashes during inference with the following error:

    ggml/src/ggml-backend-meta.cpp:476: GGML_ASSERT(ggml_backend_buffer_is_meta(tensor->buffer)) failed
    

    The draft model I used is: https://huggingface.co/incoai/Qwen3.8-27B-DFlash2-GGUF

  5. art-den commented on Aug 29, 2026

    @art-den
    Author

    @aki1-asr It looks like this is already a problem for ROCm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions