News Nvidia gibt CUDA frei - noch nicht kompatibel mit AMD-Grafikkarten, aber in der Zukunft

ENDLICH!!! Wurde auch langsam Zeit:daumen:. Ich würde aber gern den tatsächlichen Grund wissen, warum Nvidia die Schnittstelle veröfentlicht.
 
Und genau das ist ein Grund warum Nvidia es zumindest nicht umsonst machen sollte.

Das regelt sich von selbst. Ich sehe keine Details zum Vertrag. Nvidia sitzt immernoch am Steuer. Sie können sich warscheinlich immer für Updates entscheiden, die plötzlich die kompatibilität zu anderen Platformen komplett zerstört. Mal schaun, wie gut sie mit sich arbeiten lassen.
 
Überfälliger Schritt, gegen OpenCL hätte CUDA auf Dauer als Nvidia-Only-Produkt keine Chance gehabt.

Stellt sich jedoch die Frage ob das jetzt noch viel helfen wird….

mfg
 
wie kommt der sinneswandel auf einmal Nvidia? :what:

finde es super das cuda offengelegt wird aber bei nvidia kann ich mir nicht vorstellen das die das ohne hintergedanken machen

aber soll mich nicht störden ich werde weiterhin bei nvidia bleiben da mir deren treiber besser gefallen der von ATI/AMD sagt mir überhauptnicht zu
 
Das könnte eine Zäsur für Physik in Computerspielen bedeuten, vor allem für spielrelevante Physik. Wenn auch AMD-Karten in Zukunft Physx nutzen könnten, dann bräuchten sich die Spieleentwickler langfristig nicht mehr auf aufgehübschte Optik beschränken um AMD-Nutzer nicht auszuschließen, sondern könnten in die vollen gehen.:daumen:

Ja genau, weil Nvidia Sony und MS zu Weihnachten zusätzlich ein kostenloses Upgrade auf eine Kepler-GPU für deren Konsolen schenken wird, damit die "LEAD"-Plattformen auch mithalten können, sonst regt sich da bei den Entwicklern mal rein garnix. Nix Konsolentauglich. nix mehr Features in Games :D

Finde es aber aus einem ganz anderen Grund nett: Damit besteht vielleicht endlich die Möglichkeit, dass auch ATI-Karten unter Linux (funktionierende) Hardwarebeschleunigung bieten, weil Cuda ist jetzt schon um Welten besser implementiert als XvBA....

mfg
 
hört sich interessant an aber ich lehne mich erst mal zurück und schaue was daraus wird, physX für AMD fänd ich gut, dann würde es sicher noch vermehrt in spielen eingesetzt werden:daumen:
 
Braucht man CUDA nicht wegen OpenCL eh nicht mehr? Oder verwechsel ich da was?

CUDA kann afaik deutlich mehr, als OpenCL.


Na die Spielehersteller werden sicher noch was für Physx berappen müssen - und auch wenn CUDA jetzt offen wird, heißt das ja nicht dass AMD umsonst Physx betreiben darf.

Ähem:
Die PhysX-Engine war für Softwareentwickler schon immer kostenlos. Das war und ist der Grundgedanke des Geschäftsmodells: Hohe Verbreitung, weil für die Entwickler leicht zu integrieren, dadurch hoher Nutzen für Leute, die sich PhysX-Beschleuniger kaufen und dadurch dann Einnahmen.

Und AMD hat mit der ganzen Sache wenig zu tun und kriegt erst recht keine Rechnung. Nvidia hat den Quellcode freigestellt - damit kann jeder (der es kann ;) ), eine CUDA-Schnittstelle für jede beliebige Architektur (z.B. AMD-Grafikkarten) kompilieren.


wie kommt der sinneswandel auf einmal Nvidia? :what:

Mein Tipp: Nvidia hat GCN-Samples in die Hände bekommen und festgestellt, dass die Architektur schlecht mit CUDA harmoniert und ihr Potential nur mit gezielter Optimierung und direkter Ansprechung ausspielen könnte. Genau die wird es aber nicht geben, wenn Entwickler die Möglichkeit haben, sich auf eine Schnittstelle zu konzentrieren, anstatt mehrere unterstützen zu müssen. Ausgehend von der ohnehin schon deutlich größeren Beliebtheit von CUDA kann man so eine Nvidia-kontrollierte Schnittstelle als universellen Standard etablieren, während die Konkurrenz bis zum nächsten Architektursprung (also irgendwann Mitte des Jahrzehnts...) im gpGPU-Bereich nur durch schlechte Benchmarkergebnisse auffällt.
 
Für Software-Entwickler ist sie frei zugänglich, aber wenn Hardware-Hersteller kompatible Software anbieten wollen, müssen sie wohl aufgrund von Patenten, Lizenzen etc. Abgaben an Nvidia zahlen. Denn die PhysX-API ist (meines Wissens) nicht frei.

..und um Nvidias bösen Hintergedanken zu veröffentlichen:
Jeder Nvidia-Hasser/ATI-Fanboy würde ihnen (Nvidia) mit dem Kauf einer Radeon auch noch Geld geben... ein teuflischer Plan :D
 
Zuletzt bearbeitet:
Mein Tipp: Nvidia hat GCN-Samples in die Hände bekommen und festgestellt, dass die Architektur schlecht mit CUDA harmoniert und ihr Potential nur mit gezielter Optimierung und direkter Ansprechung ausspielen könnte. Genau die wird es aber nicht geben, wenn Entwickler die Möglichkeit haben, sich auf eine Schnittstelle zu konzentrieren, anstatt mehrere unterstützen zu müssen. Ausgehend von der ohnehin schon deutlich größeren Beliebtheit von CUDA kann man so eine Nvidia-kontrollierte Schnittstelle als universellen Standard etablieren, während die Konkurrenz bis zum nächsten Architektursprung (also irgendwann Mitte des Jahrzehnts...) im gpGPU-Bereich nur durch schlechte Benchmarkergebnisse auffällt.

Das glaube ich eher weniger.
Allein schon die Aussage, dass die neue Architektur nicht gut mit CUDA läuft ist sehr unwahrscheinlich. Dieser Code muss nun gut in den AMD Treiber eingearbeitet werden (wodurch ein CUDA-Support für AMD Karten noch eine weile dauern wird). Woher will nun also nvidia Wissen, wie CUDA auf den neuen AMD Karten läuft? Nehmen wir mal an, nvidia hat Samples, meinst du Sie haben einen Treiber, der optimal auf die neue Karte abgestimmt ist?
CUDA benutzt außerdem keine speziellen Befehle von der GPU die nicht auch schon ein paar Jahre jede AMD Karte kann, von daher sollte das alles kein Problem werden.
 
Finally, with the move to LLVM NVIDIA is also opening up CUDA, if ever so slightly. On a technical level NVIDIA’s CUDA LLVM compiler is a closed fork of LLVM (allowed via LLVM’s BSD-type license), and due to the changes NVIDIA has made it’s not possible to blindly plug in languages and architectures to the compiler. To actually add languages and architectures to CUDA LLVM you need the source code to it, and that’s where CUDA is becoming “open.” NVIDIA will not be releasing CUDA LLVM in a truly open source manner, but they will be releasing the source in a manner akin to Microsoft’s “shared source” initiative – eligible researchers and developers will be able to apply to NVIDIA for access to the source code. This allows NVIDIA to share CUDA LLVM with the necessary parties to expand its functionality without sharing it with everyone and having the inner workings of the Fermi code generator exposed, or having someone (i.e. AMD) add support for a new architecture and hurt NVIDIA’s hardware business in the process.
Quelle: AnandTech - NVIDIA Releases CUDA 4.1: CUDA Goes LLVM and Open Source (Kind Of)

No Way Leute ;)

Ich glaube kaum, dass Nvidias Computer Ja zu AMD sagt.
 
is doch logo

lieber geb ich meinem Konkurrenten mein Produkt und alle nutzen es, als wenn irgendwann sein Konkurrenzprodukt meins aussticht

hätte schon viel früher kommen sollen
 
Einige Leute schreiben hier etwas von PhysX.
Ist Cuda = PhysX?
Sind das nicht verschiedene Techniken, bei denen die Grafikkarte Berechnungen von der CPU übernimmt? Cuda übernimmt meines Erachtens z. B. die Berechnung von Videos über die Grafikkarte und PhysX die Berechnung der Spielphysik über den Grafikchip.
 
Zuletzt bearbeitet:
Na endlich, nVidia sieht ein das propietäres Gedöns - und sei es noch so gut - sich einfach nicht als Standard durchsetzen kann, und gibt CUDA auch für andere frei. <3


(Evtl. ist damit auch der Weg für PhysX frei ein genereller Physik-Standard zu werden, genug können tut die Engine ja, dann gibts entdlich Gameplay-relevante Physikspielereien )
 
Ein wichtiger Schritt in die richtige Richtung!

Und meiner Meinung nach auch nötig um zu verhindern, dass sich das (bis dato) einfach besser portierbare Open CL weiter durchsetzt

Vor allem für uns Spieler ist das natürlich ein massiver Vorteil, einerseits gibt es so, wie gesagt, wahrscheinlich in naher Zukunft PhysX auf Radeons, andererseits gibt es so durch die höhere Verbreitung von PhysX tauglichen GPUs bald wahrscheinlich mehr GPU PhysX in Spielen, vermutlich auch Gameplayrelevantes
 
Originalartikelunterüberschrift schrieb:
Aktuell werden nur bestimmte Nvidia-Chips und Intel-x86-CPUs unterstützt, in Zukunft sollen aber auch AMD-GPUs teilhaben dürfen.

Aha, gemeint sind wohl APUs;).

Der erste Schritt in die richtige Richtung, jetzt noch ein einheitliches Physiksystem (Phisx) das auch für ältere Titel welche an einen speziellen GPU Hersteller gebunden sind für die Gegenseite nutzbar macht und gut iss, meinetwegen würde ich auch durchgehen lassen, dass man für das exklusive Physx noch ne günstige -bis Midrange NiveaKarte zukauft(wenn man dadurch bei aktivierter "Physikbeschleuderung" ein vertretbares Leistungsplus bekommt) ohne die derzeitige offizielle Beschränkungspolitik dass es bei einer entdeckten Fremdhersteller VGA dieses Feature deaktiviert wird.
Solche Dinger kann sich NV sparen, wenn jetzt schon die aktuellen AMD 9er AMD Chipsätze offiziell SLI unterstützen, ist der Schritt aus Sicht des Kunden zu erwarten.
Auch wenn man eine AMD Karte primär nutzt, würde Nv wenigstens ein bißchen mehr verdienen, sofern man als Normalo 0815 User / Spieler schon nicht weiß wo man sich zu informieren hat wie man die Sperre umgeht.
 
Zuletzt bearbeitet:
Für Software-Entwickler ist sie frei zugänglich, aber wenn Hardware-Hersteller kompatible Software anbieten wollen, müssen sie wohl aufgrund von Patenten, Lizenzen etc. Abgaben an Nvidia zahlen. Denn die PhysX-API ist (meines Wissens) nicht frei.
Einige Leute schreiben hier etwas von PhysX.
Ist Cuda = PhysX?
Sind das nicht verschiedene Techniken, bei denen die Grafikkarte Berechnungen von der CPU übernimmt?

Der PhysX-GPU-Client ist eine Anwendung, die auf Cuda läuft. (daneben gibt es noch PhysX-Clients für x86-CPUs, die PowerPC-CPUs von Xbox360 und PS3 und natürlich, nicht mehr gepflegt, für die alte Ageia PPU. Und dann kann PhysX auch noch die PhysX-Engine im Spiel selbst oder eben den Befehlssatz zwischen beiden meinen)
Dementsprechend muss die Hardware auch nicht kompatibel gemacht werden, man muss nur den CUDA-Treiberaufsatz für die jeweilige Architektur anpassen. Das ist mit der genannten Veröffentlichung möglich (und zwar für jeden für jede Architektur, nicht nur für Hardwarehersteller für ihre eigene) und das ist offensichtlich auch Sinn dieser Veröffentlichung.

Das glaube ich eher weniger.
Allein schon die Aussage, dass die neue Architektur nicht gut mit CUDA läuft ist sehr unwahrscheinlich. Dieser Code muss nun gut in den AMD Treiber eingearbeitet werden (wodurch ein CUDA-Support für AMD Karten noch eine weile dauern wird). Woher will nun also nvidia Wissen, wie CUDA auf den neuen AMD Karten läuft? Nehmen wir mal an, nvidia hat Samples, meinst du Sie haben einen Treiber, der optimal auf die neue Karte abgestimmt ist?
CUDA benutzt außerdem keine speziellen Befehle von der GPU die nicht auch schon ein paar Jahre jede AMD Karte kann, von daher sollte das alles kein Problem werden.

Das hat nichts mit speziellen Befehlen zu tun, die sind sowieso Architekturspezifisch und es kann sich jeder selbst überlegen, wie er die CUDA-Befehle am besten in Maschienencode für seine Architetkur umsetzt. Aber es gibt grundlegende Berechnungselemente, die eine Architektur entweder direkt kann, oder aufwendig in mehreren Durchgängen nachstellen muss. Das fängt an bei Cache- und Puffergrößen (wenn CUDA mehrheitlich mit Paketgrößen arbeitet, die bei AMD erst in der nächst höheren Speicherhierarchie Platz finden, haben sie keine Chance), geht über einzelne Rechenverfahren (schwer, da was detailiertes über GPUs rauszufinden, aktuelles Beispiel aus dem CPU-Bereich wäre FMA4, dass nicht nur zwei Befehle zusammenfasst, sondern auch noch mehrere Speicherungen/Kopien unnötig macht) und endet bei der Lastverteilung auf verschiedene Einheiten. So wird GCN offensichtlich ein Hybrid aus einer konventionellen Shadern und einer universellen Verwaltungseinheit sein. Wenn CUDA-Befehle so komplex sind, dass sie nur auf der universellen Einheit in der vorgesehenen Zahl von Durchgängen ausgeführt werden können, dann würden große Teile eines GCN-Chips brach liegen. Auch Latenzen können ein Thema sein. Bei Grafikberechnungen lassen die sich gut kaschieren (klare Renderingstruktur -> Preloading leicht möglich, Multithreading gut abstimmbar), bei gpGPU eher nicht. Wenn Nvidia hier einen Vorsprung hat, könnten sie den so in Szene setzen.
Generell darf man auch eins nicht vergessen: AMD braucht so oder so Zeit für eine vernünftige Umsetzung. Wenn dann noch Probleme dazu kommen, steht AMD vor der Wahl. Offiziell keine Unterstützung zu versprechen wäre das vorläufige Ende von AMDs gpGPU-Computing, z.B. IBM, Oracle und ARM sich zu CUDA bekennen. Eine Unterstützung in ferner Zukunft anzukündigen würde ebenfalls bedeuten, dass auf absehbare Zeit niemand AMD-Karten für professionelle Zwecke kauft und es könnte ein ernsthaftes Problem für Fusion werden, wenn diverse Multimedia- und Endanwenderprogramme auf CUDA aufspringen und von Intel GPU-Unterstützung erhalten. Baldige Unterstützung anzukündigen und dann eine schlecht optimierte oder gar fehlerhafte Implementation zu liefern, würde den Ruf auf Jahre hinaus schädigen.

Fazit: Nvidia in Sachen CUDA-Leistung die Stirn zu bieten ist allgemein schwer, die haben nunmal Heimvorteil. Es kann auch durchaus technische Gründe geben, warum es noch schwerer oder fast unmöglich wird. Sollte dies in Bezug auf GCN der Fall sein, wäre dies für Nvidia ein optimaler Zeitpunkt für eine Öffnung, die die ganze Plattform umgekehrt deutlich attraktiver für Softwareentwickler macht.
 
Zurück