cuda.core: VirtualMemoryResourceOptions accepts values the driver rejects, and modify_allocation mishandles edge inputs
Nessuno ha ancora preso questa issue.
- Lingua principale
- Cython
- Stelle
- 3.4k
- Fork
- 329
- Merge medio
- 1g 21h
- PR unite (30g)
- 113
Descrizione
Validation gaps found while analyzing #2882, each a small change: (1) addr_align larger than the granularity makes the adjacent-reservation probe fail with a misaligned hint, which is treated as fatal instead of falling back to the slow path; (2) new_size < buf.size is silently treated as an access-only update; (3) allocation_type=MANAGED is exposed but current drivers reject it in cuMemCreate; (4) modify_allocation guards a user-reachable condition with assert; (5) allocate(0) reaches the driver and fails while sibling resources return an empty Buffer; (6) the default handle_type=POSIX_FD fails on native Windows WDDM devices and on location_type="host"; (7) for host locations device_id is validated and ignored, HOST_NUMA_CURRENT can never allocate, and a host resource with peers reports is_device_accessible=False. Related: #2694.
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
Inizia tracciando gli entry point cuda.core VirtualMemoryResourceOptions, modify_allocation e allocate, quindi confronta il loro comportamento con quello delle risorse corrispondenti. Verifica ciascuno dei sette casi limite elencati, incluse le posizioni host e Windows WDDM, e aggiungi o aggiorna la copertura in modo che gli input accettati corrispondano al comportamento del driver e che le allocazioni di dimensione zero corrispondano a quello delle risorse corrispondenti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- backend
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 50/100