Repository navigation
Scaffold hippihx HIP op zoo base - #1
Merged
Merged
Conversation
Add a gfx1030-first library skeleton so vllm-rdna rdna_extras can stay thin serve wiring. Includes CMake fatbin-per-arch policy, tile-class directories, and a torch-free Python protocol. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
Host-stub docs now prefer g++ when the default c++ cannot link libstdc++. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
gfx1030 and gfx1100 compile the same FA/EXL3/AWQ/shared tiles as two fatbins (no WMMA ifdef, no fdot2.bf16, wave32). gfx900 stays Vega-only; gfx906 is documented Later. FA LDS migrate pins and PCIe wire-class locks are docs only. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
Drop the Vega20 pairing. Document Cyan Skillfish gfx1013 as Later (VERIFY before sharing dot.hpp), gfx1101/1102 as built DOT slots, and gfx1151 plus Deck gfx103x as Later DOT fatbins. Forbid HSA_OVERRIDE / foreign ISA load. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
These slots compile the same wave32 stubs as gfx1030 — they can run, not dest-tuned. Each still owns its --offload-arch; never HSA_OVERRIDE. gfx906 stays Later non-DOT (real Vega20/MI50, not BC-250). Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
RADV/llama.cpp report Cyan Skillfish warp size 64 and no matrix cores. Do not share wave32 dot.hpp / FA with gfx1030 until hipDeviceProp.warpSize is measured. If HIP is wave64, Skillfish-only — never force wave32 or HSA_OVERRIDE. Serve bind keys on arch + wave size. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
Steam Deck is gfx1033 / wave32 RDNA2, same class as gfx1030. Cyan Skillfish gfx1013 is not Deck: it builds unoptimized without refusing the slot, and does not force -mwavefrontsize32. Serve bind keys on arch + wave. gfx906 stays Later. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
Cyan Skillfish is still a different GFX (not Navi21, not Van Gogh) and stays portable/unoptimized. The warp-64 note is a SKU wave check, not a different ISA family. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
BlivionIaG
marked this pull request as ready for review
September 8, 2026 21:23
BlivionIaG
added a commit
that referenced
this pull request
Sep 8, 2026
* docs: extras backport review — observe locks, do not dump HIP bodies Review opengfx1030/vllm-rdna rdna_extras @ d71721c79547 and PRs #1–#3. Zoo-class kernels belong here later, but dest HIP is still ATen-wrapped and GDN capture is unsafe, so copying csrc/rocm/*.cu would fork ISA with no consume path. Record observed LDS/launch numbers on tile READMEs and reject torch/ATen includes under tiles/. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com> * docs: lock cherry-pick attribution for foreign HIP Imported kernels keep the source Author and Committer. Cherry-pick -x; do not squash or rewrite leapdragon, kletorch, extras agent, or a17t commits as Cursor Agent. Cite introducer SHAs on tile READMEs. Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
BlivionIaG
added a commit
that referenced
this pull request
Sep 9, 2026
opengfx1030/vllm-rdna rdna_extras is one commit past the d71721c review. PR #1 squash-merged Uncached+push AR onto dest extras; PRs #2 and #3 did not move. Record dest presence, keep AR default-off and occupancy pin closed, and do not pick the dest squash (unique HIP stays Aron Hsiao). Kernel bodies still stay in extras. Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: BlivionIaG <BlivionIaG@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Scaffold the hippihx library so
opengfx1030/vllm-rdnardna_extrascan stay a thin serve wiring layer.What this is
HIP kernel / op zoo. gfx1030 and gfx1100/1101/1102 are first-class DOT consumers of the same tile source (one
--offload-archper fatbin, never one multi-arch object). gfx1151, Deck gfx103x (wave32, including Steam Deck gfx1033), and gfx1013 (BC-250 / Cyan Skillfish) build the same DOT stubs — they can run, not dest-tuned.BC-250 is RDNA2 — same generation as V620 and Steam Deck, a different GFX (not Navi21, not Van Gogh, not Vega20). It is not refused. Do not force
-mwavefrontsize32. gfx900 is a Vega stub (mad_mix/pk_fma, no DOT objects). gfx906 is Later Vega20/MI50, not BC-250.Layering is
plan/bind/run(methodology only — not a b12x CUDA/CuTe clone).Room-locked follow-ups
moe.shared—include/hippihx/dot.hpp; never#ifdef WMMA.sequence/causal_convstub — scalar FMA,state_len≈4, not undergdn_scan.fdot2.bf16, PCIe Uncached+push Later + INT8/Q8 preferred, zeroed scratch / no D2H.aa720d1): gfx1033 Steam Deck = wave32 RDNA2; gfx1013 = BC-250 RDNA2 Skillfish, portable/unoptimized (SKU wave unverified — RADV reports 64; never force-mwavefrontsize32/HSA_OVERRIDE; serve bind keys on arch + wave); gfx1151 portable DOT; gfx906 = real Vega20/MI50 Later non-DOT, not BC-250.Also in this PR
docs/ARCHITECTURE.md+ CONTRIBUTINGlist_ops()(includessequence.causal_conv)hipccis absentVerified
pytest: 19 passedhipcchere — silicon offload not runStill out of scope
vllm-rdnaedits, no b12x/CUDA/CuTe/WMMA on shared contracts