News AFDS 2011: Microsoft kündigt C++ AMP an

Dr@

Grand Admiral Special
Mitglied seit
19.05.2009
Beiträge
12.791
Renomée
4.066
Standort
Baden-Württemberg
  • BOINC Pentathlon 2011
  • BOINC Pentathlon 2012
<div class="newsfloatleft"><a href="http://www.planet3dnow.de/photoplog/index.php?n=10580"><img src="http://www.planet3dnow.de/photoplog/file.php?n=10580" border="0" alt="MS Logo"></a></div>Herb Sutter, Microsoft Principal Architect, hat gestern auf dem gerade stattfindenden AMD Fusion Developer Summit angekündigt, dass über die Programmiersprache C++ künftig auch GPUs programmiert werden können sollen. Bisher standen hierfür nur C++-ähnliche Lösungen wie beispielsweise OpenCL oder CUDA C++ zur Verfügung. Durch die Bibliothek <i>C++ Accelerated Massive Parallelism</i> (C++ AMP) hofft Microsoft die Programmierung von parallelen Anwendungen, die auf GPUs ausgeführt werden sollen, stark zu vereinfachen und einer wesentlich größeren Entwicklergruppe zugänglich zu machen.<p style="clear:left;"><center><a href="http://www.planet3dnow.de/photoplog/index.php?n=15222"><img src="http://www.planet3dnow.de/photoplog/file.php?n=15222" border="1" alt="C++ AMP"></a> <a href="http://www.planet3dnow.de/photoplog/index.php?n=15223"><img src="http://www.planet3dnow.de/photoplog/file.php?n=15223" border="1" alt="C++ AMP"></a></center>

Microsoft will C++ AMP bereits in die nächste Version der hauseigenen Entwicklungsumgebung Visual-Studio integrieren. Darüber hinaus plant Microsoft die Spezifikation offenzulegen, sodass sie auch von anderen Compilern integriert werden kann. Weniger überraschend ist AMD einer der ersten Hardwarehersteller, der den neuen Standard unterstützen will. Auch NVIDIA hat bereits per <a href="http://blogs.nvidia.com/2011/06/microsoft-going-all-in-on-gpu-computing/" target="b">Blog-Eintrag</a> ebenfalls seine Unterstützung verkündet.

<b>Quelle:</b> <a href="http://developer.amd.com/afds/pages/default.aspx" target="b">AFDS 2011</a>

<b>Links zum Thema:</b>
<ul><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1308218951">Roadmap für AMD Accelerated Parallel Processing SDK</a></li><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1308155314">AMD FUSION Developer Summit 2011 - Jem Davies, ARM</a></li><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1308127718">AMD zeigt "Trinity"-Demo auf AFDS 2011</a></li><li>User-News: <a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=395675">AMD präsentiert nächstes GPU Design und kehrt VLIW den Rücken.</a></li></ul></p>
 
Ob das fuer viele schon der 'Tod' von OpenCL sein wird - bevor es wirklich wach gekuesst wurde?
Ich hoffe nicht.
 
Einerseits scheint es gut zu sein (solange es offen bleibt), andererseits wird damit OpenCL langfristig das Wasser abgegraben.
 
Ich seh dies noch nicht als Ende von OpenCL da:

- OpenCL auf viel mehr als Microsoft-Systemen läuft (ARM, PS3, APPLE, Linux)
- wo wird bisher DirectCompute von MS verwendet ?

OpenCL läuft sogar auf XP - DirectCompute nicht *lol*
 
- OpenCL auf viel mehr als Microsoft-Systemen läuft (ARM, PS3, APPLE, Linux)
- wo wird bisher DirectCompute von MS verwendet ?

OpenCL läuft sogar auf XP - DirectCompute nicht *lol*


Gewichtige Argumente - die hoffentlich reichen, um OpenCL weiter zu befluegeln.
 
C++ AMP wird nicht, wie Direct Compute, ausschließlich auf einigen Windowssystemen laufen können, sondern es soll eine allgemeine Erweiterung für C++ sein.
 
Ich seh dies noch nicht als Ende von OpenCL da:

- OpenCL auf viel mehr als Microsoft-Systemen läuft (ARM, PS3, APPLE, Linux)
- wo wird bisher DirectCompute von MS verwendet ?

OpenCL läuft sogar auf XP - DirectCompute nicht *lol*
Ja und? Wo steht, dass C++ AMP zwingend DirectCompute voraussetzt und nur auf Microsoft-Systemen laufen wird?
 
Ich habe den Stream gesehen und es wurde gesagt, dass Microsoft dabei helfen wird, C++ AMP überall einzubauen. Bei AMD betrifft dies Windows- und Nicht-Windows-Systeme. ;)
 
Herb Sutter war da aber ziemlich deutlich. Den Stream kann man sich ja auf der Seite vom AFDS ansehen. (ziemlich am Ende des Vortrags)

Es ist offen und plattformunabhängig.

C++ AMP ist quasi eine Schnittstelle über die per C++ auf bestimmte Recheneinheiten zugegriffen werden kann. Dabei wird der vorhandene C++ Funktionsumfang auf den von der jeweiligen Einheit unterstützten eingeschränkt.
Das kann DircetCompute für GPUs sein.

Zum Start von C++ AMP wird von MS nur CPU und Direct3D als Restriktionen unterstützt. Wobei für die GPU-Nutzung dann DirectCompute verwendet wird. Funktionieren soll dies auf DX11 GPUs.

Es ist also eine Frage der Implementierung. Dies kann für jede Plattform, Hardware und jedes Betriebssystem geschehen. Angeblich will MS auch den Hardwarepartnern bei der Umsetzung helfen. MS wird aber sicherlich nicht die Implementierung für Linux selber schreiben.

Am Ende sagt er noch, dass beispielsweise AMD C++ AMP in seinen FSA-Referenzcompiler für Windows und Nicht-Windows-Plattformen integrieren wird. FSA steht für Fusion System Architecture. Darunter versammelt AMD sein Softwaremodell, mit dem die APUs befeuert werden sollen.
 
Auf diese Arbeit dürfte AMD lange hingearbeitet haben und genau diese Erweiterung der Sprache C++ nutzt die Rechenpower von GPGPU-Chips aus - also ohne einem Hauch von 3D-Inhalten!

Dieses AMP (Accelerated Massive Parallelism) wird im Laufe der Entwicklung bei Microsoft mit Asynchronous Agents Library, Parallel Patterns Library (PPL), Task Scheduler und Resource Manager ergänzt werden.

C# und .NET sollen auch mit AMP zukünftig unterstützt werden.

Und weil Microsoft das der internationalen Spezifikationsorganisation ANSI zur Standardisierung von C++ vorschlägt - ist das wesentlich bedeutsamer, als wenn AMD da irgendwelche Heimlösungen der Entwicklergemeinde vorschlägt.

Was mich im Grunde genommen etwas verwirrt, ist die Tatsache, dass der Konzern diese C++ Bibliothek "for free", also die eigenen Perlen praktisch verschenken will.

Und wenn das Herb Sutter so verspricht, dann faselt das nicht irgendendjemand so etwas von PDFs und PowerPoint-Folien ab - Nein er ist Microsofts Chefmananger für Softwarearchitektur-und native Programmiersprachen. Und darüber hinaus ist er Vorsitzender des C++ Standardisierungskomitees ... also wenn das nichts ist, dann kann AMD einpacken und nach Hause gehen.

MFG Bobo(2011)
 
Bobo sehe ich auch so. Das ist ein Hammer!

Was mich im Grunde genommen etwas verwirrt, ist die Tatsache, dass der Konzern diese C++ Bibliothek "for free", also die eigenen Perlen praktisch verschenken will.

Ich denke mal man macht das weil es hilfreich bei der Verbreitung der Technologie ist. Man scheint das höher zu gewichten als eine mögliche Konkurrenz. Dieses Verhalten haben ich bei Microsoft in den letzten Jahren öfter beobachten können.
 
C++ AMP ist die Killerapplikation für AMD
Stimme da ebenfalls zu, bisher hieß es immer, das AMD ja "nett" sei, aber nvidia mit den ganzen CUDA Tools und Bibliotheken deutlich komfortabler ist (war).

Das sollte mit MS jetzt anders werden. Sehr interessant.
 
Ist dies das lange erwartete Sterben von CUDA ?

Ich fänds "toll" wenn CUDA langsam wieder in der Unbedeutsamkeit verschwindet - etwa wie GLIDE von 3Dfx

Naja ich erwarte, dass die beiden GPU-Giganten weiterhin ihr kleines Süppchen kochen werden wie bei OpenCL

AMD GPU -> CAL / IL -> OpenCL
nVIDIA -> CUDA -> OpenCL

daraus dann ebend:

AMD GPU -> CAL / IL -> Camp
....
 
Ist dies das lange erwartete Sterben von CUDA ? ...
"Jain". In dem CUDA-Framework sind die verschiedensten Funktionen und Aufgaben enthalten.

Das beinhaltet das proprietäre PhysX/APEX-Framework - aber eben auch OpenCL - da war ja insbesondere Apple mit Nvidia ganz dick lieb Freund.

... Ich fänds "toll" wenn CUDA langsam wieder in der Unbedeutsamkeit verschwindet - etwa wie GLIDE von 3Dfx ...
Seufz ... Glide funktionierte und das sehr performant - aber die internen Probleme bei der Chipentwicklung haben wohl die Ressourcen zur Weiterentwicklung gebremst. *rose*

MFG Bobo(2011)
 
Zurück
Oben Unten