Qualify HRX HIP function attributes for registered host kernels
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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