Dokumentation / DeutschQuelltext ansehen ↗

Beispiele und Tutorials

English | 简体中文 | 日本語 | Deutsch | Русский

Dokumentation · Schnellstart · 中文

1. NVIDIA Laufzeitbeispiel

Einstiegspunkt: ptx-runtime.

Im Basisfall wird die FP32-Addition zweimal bei jeder Länge durchgeführt: 1, 63, 64, 65 und 257. Dabei werden jedes Ergebnis und 16 Tail-Sentinel-Werte überprüft. Es demonstriert Geräteauswahl, Upload, Argumentbindung, Tail-Bounds, Readback und wiederholte Ausführung.

Informationen zum Erstellen und Auswählen eines Backends finden Sie im Schnellstart.

2. Gezielte Fälle

Platzieren Sie diese Argumente nach -- des Befehls. Führen Sie den Tensorfall beispielsweise aus mit:

cargo run --locked -p ruda-driver-cuda --features direct-ptx --example ptx-runtime -- --tensor
Argument Verhalten Beispielquelle
--tensor Tensor-Metadaten- und Layoutprüfungen tensor.rs
--shared Prüfungen des gemeinsam genutzten Speichers shared.rs
--half FP16/BF16 prüft half_precision.rs
--bitwise Bitweise Operationsprüfungen bitwise.rs
--shared-over-limit Diagnose der Grenze des gemeinsam genutzten Speichers shared.rs
--expect-cold Die Kompilierung der Asserts erfolgte ohne einen Festplatten-Cache-Treffer Haupteinstiegspunkt
--expect-warm Stellt einen Festplatten-Cache-Treffer ohne Neukompilierung fest Haupteinstiegspunkt

--shared-over-limit verwendet einen separaten Zweig mit vorzeitiger Rückkehr. Kombinieren Sie es nicht mit Kalt-/Warm-Cache-Prüfungen.

3. Kalte und warme Caches

Verwenden Sie für jeden Kompilierungspfad ein separates neues Cache-Verzeichnis. Verwenden Sie dieses Verzeichnis für die Kalt- und Warmläufe desselben Pfads erneut.

Nachdem Sie einen Kompilierungspfad ausgewählt haben, wie in Erste Schritte beschrieben, führen Sie diese Befehle in derselben PowerShell-Sitzung aus:

$env:RUDA_PTX_TEST_CACHE = 'target/ptx-example-cache-' + [guid]::NewGuid().ToString('N')
cargo run --locked -p ruda-driver-cuda --features direct-ptx --example ptx-runtime -- --expect-cold
cargo run --locked -p ruda-driver-cuda --features direct-ptx --example ptx-runtime -- --expect-warm

Lassen Sie den Compiler, die Eingabeargumente und den Cache-Pfad zwischen den Läufen unverändert.

4. Beispiele für Compute-Bibliotheken

Bereiten Sie die Build-Umgebung vor, bevor Sie Beispiele ausführen.

Aufgabe Befehl Ausgabeprüfungen
FP32 CSR Matrix-Vektor-Multiplikation cargo run --locked -p ruSPARSE --features cuda --example csrmv Liest zurück und prüft [7.0, 2.0, 18.5]
CUDA Ring AllReduce cargo run --locked -p ruCCL --features cuda --example all_reduce Vier logische Ränge für GPU 0, 257 Elemente, Summe/Mittelwert und Eingabeerhaltung

5. Training und Modellinferenz