Extrem schnelles Fibonacci auf der GPU mit Thrust

2025-06-27
Extrem schnelles Fibonacci auf der GPU mit Thrust

Dieser Blogbeitrag zeigt, wie man unglaublich schnelle Fibonacci-Sequenzberechnungen mit GPU-Programmierung und der NVIDIA Thrust-Bibliothek durchführt. Er beginnt mit der Erklärung des Scan-Algorithmus und zeigt dann, wie man Scan-Operationen in Thrust für einfache Addition und Multiplikation verwendet und dies auf Matrixoperationen erweitert. Schließlich wird veranschaulicht, wie man Fibonacci-Zahlen effizient mit Matrixoperationen und der Scan-Operation berechnet und dabei modulare Arithmetik verwendet, um Integer-Überläufe zu vermeiden. Der Autor berechnet F99999999 (mod 9837) in nur 17 Millisekunden auf einer NVIDIA GeForce RTX 3060 Mobile GPU.

Mehr lesen

Hoch effiziente Matrixtransposition in Mojo: CUDA übertreffen?

2025-06-06
Hoch effiziente Matrixtransposition in Mojo: CUDA übertreffen?

Dieser Blogbeitrag beschreibt detailliert, wie man einen hocheffizienten Matrixtranspositionskern auf der Hopper-Architektur mit Mojo implementiert. Der Autor führt durch Optimierungen, beginnend mit einem naiven Ansatz und gipfelnd in einem Kern, der eine Bandbreite von 2775,49 GB/s erreicht – vergleichbar mit und möglicherweise besser als äquivalente CUDA-Implementierungen. Zu den Optimierungen gehören die Verwendung von TMA-Deskriptoren (Tensor Map Access), Shared-Memory-Optimierungen, Data Swizzling und Thread-Coarsening. Der Beitrag geht auf die Implementierungsdetails und Leistungsgewinne jeder Technik ein und liefert vollständige Codebeispiele.

Mehr lesen
Entwicklung Matrixtransposition