mudler / mudler/vllm.cpp

Qualify HRX HIP function attributes for registered host kernels

Open
#3,082 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
423
Forks
53
Avg merge
20h 26m
Merged PRs (30d)
310

Description

Row: BACKEND-ROCM

This issue owns the HRX HIP function-attribute compatibility gap found while evaluating #3080 on gfx1100.

At HRX 6bcd5a4ff111fa5bf160ab9f4592ca8e7cc810b1, the replacement libamdhip64 passes all 99 selected upstream ADD tests using the unchanged HIP binary. The same HIP llama-server aborts on its first Qwen3-0.6B request with Flash Attention enabled: hipErrorInvalidHandle from hipFuncSetAttribute(fattn_kernel, hipFuncAttributeMaxDynamicSharedMemorySize, nbytes_shared_total) at AMD llama.cpp 6319038132ed12f968ea68f37753f705da830ea8 fattn-mma-f16.cuh:1945. The conventional HIP runtime completes the same request. Turning Flash Attention off equally in both runtimes lets both complete all 16 diagnostic requests.

HRX api.c:12683–12697 interprets the input directly as an internal tagged streaming symbol. The caller supplies a registered host kernel address, as the installed HIP interface permits. The neighboring kernel launch resolver already distinguishes both forms. Existing attribute tests construct only a tagged fake symbol and miss this caller form. Source inspection is consistent with the runtime error; the exact failing host-pointer map lookup is not yet measured.

The #3080 operator owns a scoped committed spec, upstream-native failing regression, minimal resolver repair, independent review, and GPU rerun of the unchanged Flash Attention request. Keep existing validation and errors for invalid pointers/attributes. Preserve the failing logs and loaded-library identities. Do not disable Flash Attention or weaken correctness as the repair.

The issue closes only when the owning flow lands its fix and evidence. Upstream patch disposition remains explicit. No backend adoption or performance claim follows from this compatibility repair alone.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with HRX api.c:12683–12697 and the neighboring kernel launch resolver, then inspect the existing attribute tests that cover only tagged fake symbols. Reproduce the unchanged Flash Attention request from #3080 with the recorded library identities and logs. Done means the registered host-kernel form is handled while invalid-pointer and attribute validation remain intact, followed by the specified GPU rerun and upstream patch disposition.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.