Nvidia stellt „CUDA 5“ offiziell vor
Wer Programme nicht auf dem Hauptprozessor sondern der Grafikkarte berechnen lassen möchte, sprich auf der GPU anstatt der CPU, kann zu den frei verfügbaren Schnittstellen „Direct Compute“ oder „OpenCL“ greifen, die sowohl von AMD als auch von Nvidia-Grafikkarten berechnet werden können.
Darüber hinaus ist es auf einer aktuellen GeForce-Karte auch möglich, die Nvidia-exklusive Schnittstelle „CUDA“ zu nutzen, die auch explizit auf die Nvidia-GPUs angepasst worden ist. CUDA geht am heutigen Tag nun in die fünfte Runde und kommt mit einigen Verbesserungen daher. So kann CUDA 5 nun mit dem Feature „Dynamic Parallelism“ umgehen, das ab der GK110-GPU (Tesla K20) unterstützt wird. Durch Dynamic Parallelism kann die GPU innerhalb eines Programms selber neue Threads erzeugen und damit nicht nur die CPU entlasten (da diese von der Aufgabe befreit wird), sondern genauso die Performance erhöhen.
Ebenso ist es einer GPU durch CUDA 5 möglich, Libraries selber aufzurufen und mit einem CUDA-Kern zu verbinden. Die einzelnen Quelldateien können dabei separat voneinander kompiliert werden, um voneinander unabhängige Dateien zu erhalten. Dadurch soll die benötigte Zeit zum Kompilieren von Projekten teils massiv um den Faktor fünf gesenkt werden können.
„GPUDirect“ ist ebenso neu in CUDA 5 und dafür zuständig, dass die GPUs in unterschiedlichen Nodes direkt miteinander kommunizieren können, ohne den üblichen Umweg über den langsamen Arbeitsspeicher gehen zu müssen. Stattdessen wird diese direkt über einen GDDR5-Speichercontroller geregelt. Die Kommunikation der Nodes untereinander wird dabei über einen Netzwerkcontroller geregelt. Auch das Feature soll die Performance erhöhen, wobei der Nutzen davon abhängig ist, inwieweit Daten von einem Node auf einen anderen Node transportiert werden müssen.
CUDA 5 wird eine GPU-beschleunigte Version der Programmierplattform Eclipse (für Linux und Mac OS) ermöglichen, die die Geschwindigkeit und damit die Produktivität massiv verbessern soll. Zusätzlich wird es ein „CUDA Ressource Center“ geben, wobei es sich um eine Hilfe-Dokumentation zur CUDA-Programmierung handelt. Dort wird es zahlreiche Code-Samples, Anleitungen, Spezifikationen und weitere Hilfestellungen geben. Das CUDA Ressource Center wird sowohl in einer Online- als auch einer Offline-Version zur Verfügung stehen.
Laut Nvidia ist die neue CUDA-Version darauf ausgelegt, die Performance zu erhöhen und gleichzeitig die Entwicklung zu vereinfachen. So soll es kein „Hexenwerk“ sein, die neuen Features in den bereits vorhandenen Code einzubauen. Ab dem heutigen Tag lässt sich CUDA 5 in der Developer Zone von Nvidia kostenlos herunterladen.