NVIDIA / NVIDIA/cuda-python

Make `no_cache=True` the default in `LinkerOptions`?

Offen
#950 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

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

Beschreibung

During the investigation of #920, I noticed that nvJitLink internally also has its own cache (likely sharing the driver cache). But it is confusing as a PTX developer when monitoring the info log: The first compilation I see this

self.get_info_log()='ptxas info    : 0 bytes gmem\nptxas info    : Function properties for add\nptxas         .     24 bytes stack frame, 16 bytes spill stores, 16 bytes spill loads\nptxas info    : Compile time = 2.002 ms\ninfo    : 16 bytes gmem\n\x00'

but second time onward it's only

self.get_info_log()='info    : 16 bytes gmem\n\x00'

Because the PTX is not re-compiled.

We already have a plan for caching (#176). I feel we should turn off nvJitLink's cache by default.

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 damit, den Einstiegspunkt von LinkerOptions zu finden und zu überprüfen, wie sich das Caching von nvJitLink auf wiederholte PTX-Kompilierungen und info logs auswirkt. Vergleiche die Caching-Pläne in #920 und #176 und definiere anschließend den erwarteten Standardwert sowie einen Test, der das resultierende Kompilierungsverhalten überprüft.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
compilers
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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