Hürden für Nvidia
Was fehlt CUDA also noch, damit sie genauso wenig wegzudenken ist wie eine API? Mit einem Wort: Sie ist nicht mobil. Man weiß, dass die Zukunft der Informatik in der Parallelität liegt, alle bereiten sich auf diesen Wechsel vor, und sämtliche Initiativen und Projekte sowohl im Hardware- als auch im Softwarebereich sind darauf ausgerichtet. Im Hinblick auf das Entwicklungsparadigma befindet man sich momentan noch im prähistorischen Teil: handgestrickte Threads, dabei noch darauf achten, dass der Zugriff auf die gemeinsam genutzten Ressourcen gut geplant ist – das ist heute, wo sich die Anzahl der Kerne eines Prozessors noch an einer Hand abzählen lässt, noch möglich. Doch in einigen Jahren, wenn ein Prozessor aus Hunderten von Kernen besteht, wird das ein Ding der Unmöglichkeit sein. Mit CUDA macht NVIDIA einen ersten Schritt zur Lösung dieses Problems, doch diese Lösung ist offensichtlich den GPUs der Firma mit dem Chamäleon vorbehalten… und steht nicht allen offen: Lediglich die GeForce 8 und 9 (sowie die daraus entstandenen Quadro/Tesla) sind im Moment in der Lage, CUDA-Programme auszuführen.

NVIDIA kann zwar stolz von sich behaupten, weltweit 70 Millionen CUDA-kompatible GPUs verkauft zu haben, doch um sich als Standard zu verankern, reicht das noch lange nicht aus. Und schließlich hat auch die Konkurrenz die Hände nicht in den Schoß gelegt: AMD bietet ein eigenes SDK an (Stream Computing), und auch Intel hat bereits eine hauseigene Lösung angekündigt (Ct), die jedoch noch nicht erhältlich ist. Der Kampf hat also begonnen, und der Markt wird nicht genug Platz für drei Konkurrenten bieten, geschweige einem vierten. So hat beispielsweise Microsoft gerade den Zuschlag für eine universelle API erhalten, die zweifelsfrei der Segen für alle Entwickler wäre.

NVIDIA muss also noch einige Hürden überwinden, damit sich CUDA wirklich durchsetzen kann. Aus technischer Sicht ist CUDA definitiv ein Erfolg, doch nun gilt es noch, die Entwickler davon zu überzeugen, dass es sich um eine glaubwürdige Plattform handelt, und diese Aufgabe scheint nicht einfach zu werden. Glaubt man jedoch den zahlreichen Ankündigungen der letzten Zeit, die sich um diese API drehen, gewinnt man den Eindruck, dass die Vorzeichen eher gut stehen.
Neueste Grafikkarten News
Neueste Grafikkarten Testberichte
- 22/05 – Die glorreichen Sieben: 7x Nvidia Geforce GTX 670 im...
- 18/05 – Exklusiver Hands-On-Test: Schenker XMG P702 mit Radeon HD 7970M
- 16/05 – Vergleichstest: 6 x Radeon HD 7950 im Showdown
- 14/05 – Im Test: AFOX HD 7850 - flinker Radeon-Flachmann im...
- 10/05 – Nvidias GeForce GTX 670 im Test: Königsmörderin aus...

Mal schauen, was da noch alles auf uns zukommt!
...und sobald es auch nur eine Anwendung gibt, die für Heimanwender ansatzweise interessant sein könnte (z.B. Video-/Audiocodierung) kauf ich mir ne Geforce. Aber bis dahin wird wohl noch ein wenig Zeit ins Lande ziehen...
.. möglich ist ja bekanntlich alles, aber ob ein Grafikkartenhersteller es schaffen könnte, Große Unternehmen wie Intel oder AMD vom Markt zu stoßen, kann ich mir nur schwer vorstellen.
Außerdem darf man mal nicht vergessen, dass die CPU Generation auch schon ein bisschen weiter ist.
Meineserarchtens ist eine Forschung dieser Art nur rausgeschmissenes Geld.
Eine Frage: Ich habe zwar nicht den ganzen Thread gelesen aber gäbe es nicht die Möglichkeit, dass die CPU weiterhin "Allgemein-Berechnungen" bearbeitet und in der GPU werden spezielle Berechnungen (halt wie bisher nur Grafik, mit dem kleinen Unterschied, dass noch andere Spezial-Operationen vom GPU übernommen werden) durchführt und sich somit dann eine Entlastung der CPU ergibt, die sich dann wieder dem System widmen kann! Gibts dass? Wirds dass geben? Habe ich das im Text übersprungen?
Ende der CPU? Das ich nicht lache. Darauf hofft Nvidia aber AMD und Intel werden ihre GPU und CPU auf einem Die verschmelzen und dann hat Nvidia nix mehr zu melden. Es steht ja sogar noch in den Sternen ob Nvidia eine Nahalem Lizenz bekommt. Wenn das der Fall ist kann sich Nvidia vom MainboardMarkt verabschieden.
Die Ausführungszeiten auf der GPU sind zwar sehr viel schneller, ich nehme aber an, dass dabei nicht berücksichtigt wurde, dass wenn die Daten später auf der CPU weiter verarbeitet werden müssen, dass in diesem Fall noch die Downloadzeiten der Textur in den normalen Hauptspeicher berücksichtigt werden müssen. Ebenso die Uploadzeiten vom Hauptspeicher in den Grafikspeicher.
Eine Frage: Ich habe zwar nicht den ganzen Thread gelesen aber gäbe es nicht die Möglichkeit, dass die CPU weiterhin "Allgemein-Berechnungen" bearbeitet und in der GPU werden spezielle Berechnungen (halt wie bisher nur Grafik, mit dem kleinen Unterschied, dass noch andere Spezial-Operationen vom GPU übernommen werden) durchführt und sich somit dann eine Entlastung der CPU ergibt, die sich dann wieder dem System widmen kann! Gibts dass? Wirds dass geben? Habe ich das im Text übersprungen?
Anders kann das gar nicht funktionieren, da die eine Software ja schließlich explizit den Treiber ansprechen muss! Denkbar wäre das bei bereits bestehenden Programmen z.B. über Plug-Ins...
Re Knuprecht: Bei AMD könnte ich es mir vorstellen das Sie die die CPU mit GPU's fusionieren wollen. Aber bei Intel wird es hier ein bisschen schwiriger... klar haben sie von allen die "meisten" Erfahrungen mit CPU's doch ist ihre GPU's wissen nicht so enorm wie man das bei AMD/ATI und nVidia sieht.
Komplement an die Redaktion dies ist wirklich eine gute Einleitung was CUDA alles leisten kann beziehungsweise könnte. Ich hab mich bis jetzt nicht mit CUDA beschäftigt, die Benches von dem einfachen Bild sprechen aber für sich und speziell bei hochmathematischen Problemen (z.B.: Durchlaufs-, Prozess - Optimierung usw...) sehe ich noch viel potenzial für CUDA. Werd mir CUDA in nächster Zeit auf jeden fall noch genauer anschauen.
Die GPUs können noch kein x86, also werden CPUs weiterhin brauchen, für alles wofür man CUDA nicht sinnvoll einsetzen kann.
Super Artikel! Informativ, gut aufbereitet und detailliert!
Mit Abstand der beste THG-Artikel seit langem. Weiter so!
Ganz abwegig ist die Gefahr für alteingefleischte CPU-Strukturen nicht. Wenn man sich mal die Entwicklung in der Mikrocontrollerwelt ansieht, welche ja fast ausschließlich mit hocheffizienten Risc-Kernen arbeitet und dann die gelegentlichen Drohäußerungen seitens Nvidias CEO hinzunimmt, kann man durchaus überlegen ob der derzeitige CPU-Weg nicht in naher Zukunft ein physikalisches Ende nimmt. an Diesem Punkt haben die GPUs, einfacher gestrickt als CPUs durchaus Vorteile aufzuweisen. Es wäre mit Sicherheit interessant mal eine Standardanwendung Mithilfe der CUDA-Bibliotheken in C++ oder Delphi zu entwickeln. Letztendlich kann es dem Entwickler egal sein, ob er eine API-Funktion für irgendwas in Windows oder eine CUDA-Funktion direkt auf der HArdware ausführen läßt. Der Aufwand ist erstmal der gleiche(setzt allerdings auch Weltweit vorhandene CUDA Funktionalität voraus). Für mich wäre wichtig, ob man über CUDA dann etwas hardwarenäher programmieren kann als bei der Verwendung der Standard APIs.
ich denke auch nicht, dass intel sich da vom markt drängen lassen wird. die werden mit sicherheit wieder was rausbringen, was die gpgpu unattraktiv macht.

ich hoffe/vermute mal, dass intel da auch gleich einen rundum-schlag ausführen wird und einen prozessor rausbringt, der jede grafikkarte wegfegt.... somit wären dann grafikkarte überflüssig
@tommydödel:
Hey Tommydödel, bist Du eigentlich kein Journalist? Und wie hast Du Dich trotz Legasthenie bis hierher durchmogeln können?
"Kann sich Intel und AMD dem entgegenstellen?"
Merke:
~~~~~~~~
Intel = 1 Unternehmen
AMD = 1 Unternehmen
1 + 1 = 2
2 > 1
Intel und AMD > 1 Unternehmen.
Ergo:
"Können sich Intel und AMD dem entgegenstellen?"
So, und jetzt geh nach Hause und besuch' einen Einsteiger-Kurs für deutsche Grammatik!
wenn ihr wirklich mal die Leistung der Karten gut vergleichen wollt, dann solltet ihr mal da Fluids Example euch anschauen! Da sieht man sehr gut welche Leistung die unterschiedlichen Grafikkarten bieten.
Im übrigen gebe ich euch recht, dass das Speichern von Daten die meiste zeit in Anspruch nimmt. Wieviele Berechnungen eine GPU wirklich schafft kann man eigentlich nur mit einem Programm testen, dass nur die im Speicher vorhandenen Daten benutzt.
Mich würde es freuen wenn es durch CUDA möglich würde MultiGPU-Setups ohne Leistungseinbußen nutzen zu können. Wenn zum Beispiel durch CUDA Physikberechnungen neben der Bildgenerierung bei Spielen auf GPUs laufen die 2te oder 3te GPU den Leistungszuwachs Richtung 80-90% verschiebt. Und das ohne Mikroruckler wenns geht.
Aber da CUDA nur auf Nvidia läuft wird das wohl ein Wunschtraum bleiben, denn das potenzielle Spiel wäre dann bei ATI Karten grottenlahm oder überhaupt nicht möglich.
Ich hab irgendwann mal gelesen, dass die GPU zwar jede CPU bei bestimmten Berechnungen an die Wand rechnet, die CPU aber durchweg flexibler ist. Die CPU kann alles machen wenn Not am Mann ist. Grafik/Audio/Kodierung/Physikberechung blabla.... Die Performance ist dann klar am Boden aber es geht. Bei GPUs solls nicht so einfach sein.
Richtig geil wäre es, wenn Raytracing auf die Graka ausgelagert werden könnte durch diese Technik. Cinema4D, 3D SMax oder sowas. Ein Bild bei dem ein heutiger Quadcore sich den Wolf rechnet innerhalb von einem Zenhtel der Zeit berechnet wäre mal was. Dann braucht PIXAR keine Rechnerfarmen mehr, dann stehen 4-5 Teslasysteme nebem dem Schreibtisch und fertig.
ich hab jetzt net alles gelesen, aber das hat sich ja abgezeichnet. intel wettert gegen nvidia, weil sie erkannt haben, daß nvidia mit dieser technologie ein ass im ärmel haben, an das intel wohl nicht gedacht hat. programmierbare cpus sind mit sicherheit die zukunft, extrem variabel und sauschnell. mit sauschnell meine ich, die cpu muss ja, quasi wie wir, eine berechnung elends lange und aufwändig durchführen (abgesehen, von mms und wie das alles heisst). bei einer programmierbaren cpu nimmt sich das system einen teil der cpu der für eine berechnung gebraucht wird. dann "wirfts" auf einer seite einen wert rein und holt sich auf der anderen seite das ergebnis. und das schwupps-di-wupp so oft wie benöigt. als ob ein mensch einen taschenrechner benutzen würde. die gpu ist nicht mehr nur gpu, sondern kann jetzt schon für alles benutzt werden, vorausgesetzt es...CUDA
Ich glaube hier habe einige ganz falsche Vortsellungen, was nVIDIA damit bezweckt. Für nVIDIA geht es sicherlich in erster Linie darum, den Absatz ihrer Grafikprozessoren zu steigern und wie erreichen sie das? In dem sie einfach ihren Grafikprozessoren einen neuen Mehrwert geben, der da ist, dass die teure Grafikkarte nicht die ganze Zeit brach liegt, sondern für zusätzliche Anwendungen (ausser 3D- rendering) zur Verfügung steht und die CPU weiter entlastet, so das mehr CPU- Zeit für andere Anwendungen bereitsteht. Kurz, der Computer kann die gleichen Aufgaben in weniger Zeit erledigen = Zeit gespart = Geld gespart = Investionskosten schneller wieder raus.
@metal_alf: Habe ich zwar schon gesagt, aber ja, darum geht es nVIDIA doch nur. ODer glaubt du ernsthaft, das nVIDIA einen "CPU" auf den Markt bringen wird, auf dem momentan keinerlei Standardbetriebsystem läuft? Das ist das Hauptproblem von iNTEL und AMD, sie müssen immer Abwärtskompatibel zur Software sein.
@Knuprecht: Stell dir mal folgendes vor: Programmierer Max Muxi braucht keine Highendgrafikkarte aber will einen schnellen Prozessor, damit sein Code schnell durch den Compiler kommt, muss jetzt aber einen Highend Prozessor kaufen auf dem eine Highend Grafikkarte integriert ist und dafür min. 2/3 mehr Zahlen als für ein Highend Prozessor ohne Grafikkarte und ein Mainboard mit Onboardgrafik/ oder eben einer anderen lowcost Grafiklösung. Kannst du dir sein Gesichtsausdruck vorstellen der Verärgerung über diese unsinnige mehrausgabe erahnen lässt. Und selbst wenn AMD und iNTEL auch noch Varianten ohne Grafik anbieten würden, wären alle anderen Verärgert, weil sie sich nicht nur alle 2 Monate eine neue Grafikkarte kaufen müssten, sondern auch gleich noch einen Prozessor, wo es der alte doch noch tut.
Und sicher gibt es auch noch eine Menge Technische hindernisse, die dem im Wege stehen, sonst hätten Konsolenhersteller schon längst diese "tolle" Idee in die tat umgesetzt, da ändert sich schließlich bis zur nächsten Konsole nichts.
ein wirklich "guter" rechner könnte nur aus drei komponenten bestehen.
hauptplatine inkl. sämtlicher i/o geräte
arbeistspeicher
cpu
alles andere ist künstlich erfunden worden um mehr geld abzocken zu können.
zum glück haben sich diese tolle physikbeschleuniger bisher nicht durchgesetzt.