was genau bringt das für heimanwender?
Es werden früher oder später ganz normale Programme rauskommen die zum Teil OpenCL basiert sind und so zum Teil von der Grafikkarte berechnet werden. Gerade bei Audio, Bild und Filmbearbeitungssoftware könnte man hier einige Performancegewinne erreichen, besonders wenn CPU und GPU gemeinsam an dem selben rechnen, deswegen implementiert AMD ja OpenCL auch auf ihren CPUs.
kann man bei Spielen jetzt auch mit ATI PhysX nutzen mit öffentlichen Treiber?
Hoffe es setzt sich durch damit man egal welche Karte man kauft PhysX untersttützung erhält.
Wohl kaum. Denn wie schon erwähnt ist PhysX eine Bibliothek welche aber nur in 3 Ausführungen realisiert ist.
1. Direkt auf einer PhysX Karte.
2. Direkt auf einer NVidia Karte mittels CUDA.
3. Direkt auf der CPU.
Die ersten zwei fallen bei Ati Karten weg, bleibt also nur der 3. Weg der bisher genutzt wurde und der sorgt für gewaltige Leistungseinbrüche. Erst wenn NVidia ihr PhysX auf OpenCL realisieren und das (ggf. ohne Lizenzgebühren) anbieten wird PhysX auch auf einer Ati laufen, vorher nicht. Ausserdem läge die Entscheidung darüber wie gut das ganze auf Ati Karten läuft allein bei NVidia, also das ganze könnte stark von Ati weg aber zu NVidia hin optimiert werden.
Aber keine Sorge mit OpenCL gibt es nun eine einheitliche Schnittstelle die jeder nutzen kann und PhysX ist nicht die einzige Physik Schnittstelle sondern vielleicht die welche von NVidia am meisten gepuscht wird. Um genau zu sein spreche ich hier von Havok auch wenn du davon vielleicht noch nichts oder nur am Rande gehört hast, wird diese Engine bereits von einem großen Teil der Spiele genutzt. Das einzige Problem dabei ist nur, dass diese bisher nur auf CPU Basis läuft aber die GPU basierte Version ist soweit ich weis in Arbeit. Wobei ich mir gerade nicht sicher bin ob es wirklich auf OpenCL oder doch eher auf den Compute Shadern basieren soll, wobei ich mal ersteres annehme.
kennt sich jmd. mit der OpenCL Api aus? Ich kann C++ aber nur Konsolenanwendungen und würde gern mal was neues lernen was auch mit der GPU zu tun hat. Wenn da jmd. im Thema drin ist und ein paar nützliche Links parat hat =) Plz ne PN.
Naja mit der OpenCL Api habe ich bisher nichts gemacht aber für OpenGL was auch mit der GPU zu tun hat, hätte ich was:
http://nehe.gamedev.net/ (links unter Lessons)
Gut, bis du mal ein schwarzes Fenster hast dauert es etwas und es wird auch ein bisschen Windows API genutzt um Tasten abzufangen, Fehlermeldungen zu generieren und ein Fenster zu erzeugen welches dann mit dem Rendering Context von OpenGL verbunden wird. Auch denke ich, dass du wenn du bisher keine Erfahrung mit der WinAPI hast womöglich nicht gleich alles verstehst aber danach sollte es eigentlich laufen.
Später kannst du dich auch z.B. in SDL (oder etwas anderes) einarbeiten und den Windows API Teil über Bord werfen. Danach sollte es (ggf. mit ein paar kleinen Änderungen) sogar plattformunabhängig sein.
Auch ist das Tutorial etwas älter aber dennoch sollte es für einen Einstieg reichen.
Wenn du OpenCL nicht nur für normale Berechnungen lernen willst sondern ggf. auch für die Manipulation von 3D Grafik ist das sogar ein guter Einstige da du mit OpenCL direkt auf OpenGL Elemente zugreifen kannst um diese zu verändern.
Fuer den Physik-Kram braucht man ne Schnittstelle und Bibliotheken. Die Schnittstellen sind DX11 oder OpenCL. Bei den Bibliotheken kocht aktuell jeder sein eigenes Sueppchen; da unterstuetzt AMD jetzt aber auch was Plattformuebergreifendes.
Eigentlich kocht bei den Schnittstellen jeder sein eigenes Süppchen, nämlich Ati mit Stream und NVidia mit CUDA und nun kommt der Compute Shader welcher zu DirectX11 (Microsoft) gehört und eben das hier erwähnte OpenCL. Die letzteren beiden sollen Grafikkartenunabhängig laufen. Auch sei es geplant dass letztere beiden über die eigenen Schnittstellen realisiert werden sollen, was der Sinn davon sein soll weis ich auch nicht...
Und was die Physik Bibliotheken angeht gibt es eigentlich nur zwei, nämlich zum einen NVidia die ihr eigenes Süppchen mit PhysX kochen, was eben nur auf NVidia Karten oder aber auch (recht langsam) der CPU läuft (und natürlich den Ursprungskarten). Die andere Bibliothek heißt Havok. Sie ermöglicht momentan Physik auf CPU Basis, zwei von vielen dieser Spiele die sie nutzen sind zum Beispiel Half Life 2 und Oblivion. Havok wird momentan von AMD unterstützt und von Intel entwickelt. Soweit ich weis soll irgendwann eine GPU basierte Version folgen.
So sehe ich das auch. Was hat denn ATi für GPGPU Erfahrungen? Ich lach mich wirklich kaputt...
Wozu sollten sie überhaupt was machen? ATI ist ein Grafikkartenhersteller kein Software Hersteller! Das ist so als würdest du von ATI verlangen ihre Spiele selbst zu programmieren damit sie was für DirectX oder OpenGL tun
. Einzige Aufgabe von ATI ist es eine funktionierende Schnittstelle bereitzustellen und womöglich ist es ihr Plan anstatt ihre eigene nicht kompatible Schnittstelle wie NVidia mit ihrer CUDA Schnittstelle lieber auf OpenCL oder ComputeShader zu setzen.
Und wieso bekommt ein Catalyst nie qualitätsverifizierung à la WHQL?
Guter Witz
. Dir ist hoffentlich klar, dass WHQL nur für Treiber vorgesehen ist nicht für normale Software und Catalyst ist nicht der Treiber sondern die Software zur Steuerung dieses. Aber damit du nicht rumtrollen kannst muss Microsoft natürlich nun seine WHQL Vergabe auch auf Software umstellen
...
Edit:
Lass mich raten...du bist 12?
Ich spiele seid 4 Wochen C&C Generäle, Archlord und Project Torque. Sind wohl eher kaum aktuelle Spiele. Und WHQL stand nie für höhere Performance sondern für eine "geprüfte Kompatibilität" seitens Microsoft.
Nein lass mich mal raten... du bist 10? Und bist gerade noch dabei lesen zu lernen, weil seinen Post richtig gelesen hast du anscheinend nicht.
Er hat nicht gesagt, dass WHQL für Performance steht sondern weil jeder nach dieser schreit ATI eben jeden Monat diese mit den Treibern leicht erhöhen will, jedoch die Zeit für eine Prüfung dieses seitens Microsoft eben etwas länger sein kann, so dass ein Teil der Treiber ohne diese released werden muss! Und es gibt sehr wohl WHQL Treiber genauso wie nicht jeder Treiber von NVidia ein WHQL Treiber ist...
NoD.sunrise: Aha, seltsam das Anno mit Catalyst 9.6 so läuft wie es laufen soll auch unter DirectX10 und dann mit Catalyst 9.8 diese Grafikfehler
Anno ist tatsächlich ein merkwürdiger Fall, denn auf meiner 3870 läuft es mit den neusten Treibern Problemlos auf der 4870 eines anderen gibt es aber mit den selben Treibern Probleme...
Dann soll ATi finanzielle Mittel (genau wie Nvidia) aufwenden um kompatibilitätsprobleme zu präventieren.
Dass das Spiel nicht auf der aktuellen RV870 läuft, liegt am Treiber. Denn dieser ist u.A. für die Threaderkennung verantwortlich.
Das wird ja immer lächerlicher. Wenn der Fehler wirklich bei dem Spieleentwickler liegt (und das liegt er heutzutage wirklich nicht selten), dann soll ATI Geld ausgeben um die Fehler des Entwicklers auszumerzen? Wieso tut ATI nicht gleich die Bugs aus Spielen entfernen und ggf. diese umprogrammieren, ein Gothic 3 ohne jegliche Bugs und Nachladeruckler wäre was feines aber nein ATI ist daran schuld da sie es nicht umprogrammiert haben...