NVIDIA / NVIDIA/cuda-python

cuda.core: a second grow of a grown VMM buffer fails

Offen
#2,908 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug cuda.core
Vorherrschende Sprache
Cython
Sterne
3.4k
Forks
329
Ø Merge
1 T. 23 Std.
Gemergte PRs (30 T.)
116

Beschreibung

After one grow a buffer is backed by two physical chunks. The slow path retains only the handle of the mapping at buf.handle and maps aligned_prev_size bytes from it, but cuMemMap requires the size to equal the handle's full size, so the second grow fails. On main the attempt also unmaps the old range first and cannot restore it; with #2880 the old buffer stays intact and the grow raises cleanly. Fix belongs to the ownership redesign (epic #2906).

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem im Issue beschriebenen langsamen Pfad zum Vergrößern des cuda.core VMM-Puffers und konzentriere dich auf buf.handle, aligned_prev_size und den Aufruf von cuMemMap. Prüfe das Epic zum Ownership-Redesign #2906 und das Verhalten in #2880; abgeschlossen ist die Arbeit, wenn ein zweites Vergrößern nicht mehr aufgrund der Nichtübereinstimmung von Handle und Größe fehlschlägt und ein fehlgeschlagenes Vergrößern den alten Puffer intakt lässt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
backend
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.