04.03.2019
Der Begriff CUDA ist das Akronym von "Compute Unified Device Architecture".
CUDA ist eine NVIDIA Architektur für parallele Berechnungen. Durch die zusätzliche Nutzung des Grafikprozessors wird die Rechenleistung eines PCs gesteigert.
Früher waren OpenGL und DirectX die einzige Möglichkeit mit GPUs zu interagieren, diese APIs waren jedoch überwiegend für Multimedia Anwendungen geeignet. Berechnungen wurden dagegen nur auf der CPU ausgeführt.
Da Grafikkarten ideal für rechenintensive, stark parallel arbeitende Prozesse sind, nutzen neue Betriebssysteme (Windows 7 und aufwärts) die GPUs nun nicht mehr nur für Grafikberechnungen, sondern als Mehrzweck-Parallelprozessor, auf den jede Anwendung zugreifen kann. So laufen Berechnungen mittlerweile parallel auf der CPU und dem Grafikprozessor, was die Performance enorm steigert. NVIDIA CUDA unterstützt dies und ermöglicht eine einfache und effiziente parallele Entwicklung. Mittlerweile gibt es tausende Anwendungen, unzählige Forschungsberichte und eine große Auswahl an CUDA Tools und Lösungen.
Üblicherweise werden CUDA Cores bzw. Kerne als Äquivalent zu CPU Kernen betrachtet. Jedoch sind die CUDA Cores weniger komplex und treten gleichzeitig in viel größeren Zahlen auf. Während die üblichen Intel-CPUs zwischen 2 und 8 Kernen besitzen, hat beispielsweise die NVIDIA Quadro P1000, die in unserem gleichnamigen Mini-PC verbaut ist, 640 CUDA Cores. Bei High-End-Grafikkarten, wie NVIDIAS Turing-Generation sind es oft über 4000 Kerne. Diese hohe Anzahl ist nötig, da oft viele komplexe Grafikberechnungen gleichzeitig ausgeführt werden müssen. Da GPUs jedoch auf diesen Zweck spezialisiert sind, sind die Kerne auch wesentlich spezifischer konstruiert und daher auch kleiner als bei CPUs.
Eine ausführliche Erklärung zu dem Thema findet sich bei Gamingscan. Wer noch tiefer in das Thema einsteigen möchte und sich für den genauen Unterschied zwischen CUDA Cores und CPU Kernen interessiert, sollte sich das Video "Why CUDA 'Cores' Aren’t Actually Cores" von Gamers Nexus ansehen.
CUDA wird in den verschiedensten Bereichen angewendet. Zum einen in der Bild- und Videoverarbeitung, aber auch im medizinischen Bereich, zum Beispiel bei CT-Bildrekonstruktionen. Die Bereiche KI, Deep Learning und Machine Learning setzen ebenfalls oftmals auf CUDA, denn hier sind anspruchsvolle Entwicklungsumgebungen gefragt. Weitere Themen sind Computerbiologie und –chemie, Raytracing, seismische Analysen und vieles mehr.
Seit CUDA 2006 eingeführt wurde hat es sich enorm weiterentwickelt. Im Oktober 2018 wurde, zusammen mit der Einführung der neuen Turing-GPUs, CUDA 10 vorgestellt. Mehr Infos über die neuen Features sind bei heise.de und auf dem NVIDIA Developer Blog zu finden.
Bei der Nutzung von CUDA können die Programmiersprachen C, C++, Fortran, Python und MATLAB verwendet werden.
Mit CUDA kann unter Windows, Linux und Mac OS gearbeitet werden, vorausgesetzt man hat die richtige Hardware. Dies sind Grafikkarten der NVIDIA Reihen GeForce, Quadro und Tesla sowie NVDIA GRID solutions. Eine Übersicht über CUDA-fähige GPUs ist bei NVIDIA zu finden. Das CUDA Toolkit kann einfach bei NVIDIA heruntergeladen werden.
Zum letzten Mal in diesem Jahr heißt es bei spo-comm „What’s New?“. Auch im November und Dez...
Besonders bei der Entwicklung von Mini-PCs für Industrie- und Embedded-Anwendungen ist der Formfakt...
In einer Ära, in der Technologie exponentiell wächst, hat Machine Learning einen bahnbrechenden Ei...
Ich habe die Datenschutzbestimmungen gelesen und bin damit einverstanden.
Otto-Kraus-Straße 4c
D-90411 Nürnberg
Telefon: +49 (0) 911 / 23 98 37 – 0
E-Mail: info@spo-comm.de
Sie müssen den Inhalt von reCAPTCHA laden, um das Formular abzuschicken. Bitte beachten Sie, dass dabei Daten mit Drittanbietern ausgetauscht werden.
Mehr Informationen