oneapi-src / oneapi-src/level-zero
kernel arguments and group size thread safety recommendations
Nessuno ha ancora preso questa issue.
- Lingua principale
- C++
- Stelle
- 335
- Fork
- 140
- Merge medio
- 12h 32m
- PR unite (30g)
- 5
Descrizione
The spec doesn't seem to explicitly say this but kernel objects are currently defined should be generated from modules per command recording thread.
I wonder if it would be better to add a way to just record a kernel to a command list, set group size and inputs for and dispatch it. This seems more thread safe and would allow for sharing kernel objects across threads if all you wanted to do was record a command stream with different inputs or group sizes.
Otherwise you'd have to create a new kernel object per command stream, I suppose it depends on whether the API usage envisages kernel objects are being light to construct or something that will trigger a compiler backend pass.
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.
Direzione di ricerca
Esamina l’API degli oggetti kernel e della registrazione dei comandi descritta nell’issue, concentrandoti su come dovrebbero funzionare gli argomenti del kernel, la dimensione del gruppo e il dispatch tra i recording threads. Il lavoro sarebbe completato con una decisione chiara sulla specifica e un comportamento dell’API documentato per la condivisione degli oggetti kernel rispetto alla loro creazione per ogni command stream.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp
- Ambito
- api
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100