Enable native Kev inference with the Vulkan backend
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 30/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Ambito
- ai-infra-agents, backend, desktop-dev, mobile-dev
Direzione di ricerca
Start with the Kev example in examples/kev/ and the Vulkan export example in examples/vulkan/. Examine the Vulkan backend in backends/vulkan/ to identify missing operator support for GatedDeltaNet and dynamic shapes. Write a small GDN parity test as a first step, then extend the export and CMake linkage to allow kev_runner to use the Vulkan backend. Validate against the PyTorch reference implementation.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Enable the native Kev example on the Vulkan backend, extending the XNNPACK and MLX support added in #23023.
Kev runs prefill followed by pointer-head scoring, with an immutable prefix snapshot reused across question batches. The goal is to support this workflow through the existing C++ API on Vulkan-capable GPUs, without Python at inference.
Start with Kev's model/export code, the Vulkan export example, and the Vulkan backend. Qwen3.5 MoE's GatedDeltaNet implementation provides a reference for GDN math and state layouts; Vulkan will need its own lowering or shader support where coverage is missing.
Work to cover:
- Identify operator and dynamic-shape gaps in Kev's
prefillandscoregraphs. Add the required Vulkan support, including GDN, with focused backend regression tests. A small GDN parity test is a useful first step. - Add a Vulkan export option and CMake linkage so the existing
kev_runnerandkev_benchmarkrun the exported model throughModule. - Preserve
system_one, explicitprefill/evaluate, configurable token limits, variable question/option counts, and batching beyond eight questions. Repeated evaluations must leave the prefix unchanged. - Start with an unquantized FP32 path, retaining the fitted temperature and checkpoint metadata. Check logits, probabilities, and reused state against upstream Kev's PyTorch implementation and the existing FP32 path, with documented tolerances.
- Verify the backbone, including GDN, executes on Vulkan and report any CPU fallback. Document a tested GPU, precision requirements, export/build/run commands, and measurements using
kev_benchmark.
Keep the integration in the existing example and reuse the runner and benchmark. A Vulkan-capable GPU and the Vulkan SDK are needed for validation.
cc @SS-JIA @manuelcandales @digantdesai @cbilgin @iseeyuan @lucylq @helunwencser @tarun292 @kimishpatel @jackzhxng
- Lingua principale
- Python
- Stelle
- 5k
- Fork
- 1.2k
- Merge medio
- 2g 13h
- PR unite (30g)
- 595
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di pytorch/executorch
-
enhancement triaged
Difficoltà 2/5 Mezza giornata Idoneità per principianti 68/100
pytorch/executorch#21640 ·
-
good first issue module: examples module: webgpu
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
pytorch/executorch#23099 ·
-
good first issue module: cuda module: examples
Difficoltà 5/5 Più di una settimana Idoneità per principianti 30/100
pytorch/executorch#23097 ·
-
module: qnn partner: qualcomm
pytorch/executorch#23096 · 1 commento · 1 reazione · 1 assegnatario ·
-
pytorch/executorch#23058 · 1 reazione · 1 assegnatario ·
Tutte le issue di pytorch/executorch
Issue simili
-
area: harness bug status: needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
Human-Agent-Society/reef#625 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 80/100
learningequality/kolibri#15351 · 2 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Name consistency Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
eellak/triplestore#65 · 1 commento ·