News Das AMD Accelerated Parallel Processing (APP) SDK 2.4 wurde veröffentlicht

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.amd.com/US/PRODUCTS/TECHNOLOGIES/STREAM-TECHNOLOGY/Pages/stream-technology.aspx" target="b"><img src="http://www.planet3dnow.de/photoplog/file.php?n=11626" border="0" alt="AMD APP Logo"></a></div>AMD hat das AMD Accelerated Parallel Processing (APP) Software Development Kit (SDK) v2.4 veröffentlicht. Hinter diesem sperrigen Namen verbirgt sich AMDs Lösung zur Entwicklung parallelisierter Software auf Basis der OpenCL-Programmierplattform. Das SDK trug bis vor kurzem noch den Namen ATI Stream SDK, der aber im Zuge des Wegfalls der Marke ATI im Januar 2011 in AMD APP SDK geändert wurde. Die OpenCL Entwicklungsumgebung unterstützt nicht nur die hauseigenen GPUs ab der RV7xx Generation, sondern auch alle aktuellen x86 CPUs. Mit dem Stream SDK 2.4 werden neben den <a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1289302063">APUs "Ontario" und "Zacate"</a> auch erstmals die <a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1301990785">APUs der A-Serie</a> unterstützt, die unter dem Codenamen "Llano" besser bekannt sein dürften. Dieser Schritt ist vor allem mit Blick auf den <a href="http://developer.amd.com/afds/pages/default.aspx" target="b">AMD Fusion Developer Summit (AFDS)</a> vom 13. bis 16. Juni wichtig, schließlich soll hier der Austausch von Erfahrungen bei der Softwareentwicklung für heterogene Systeme im Mittelpunkt stehen.

Die neue Version nutzt erstmals den Vorteil aus, dass bei den APUs die CPU-Kerne und die GPU am gleichen Speichercontroller hängen. Die Laufzeitumgebung regelt den Datenaustausch zwischen den beiden Recheneinheiten der APUs nun ohne jegliches Kopieren zwischen den Speicherbereichen im Systemspeicher. Leider ist es AMD noch immer nicht gelungen, die Dual-Chip-Lösung ATI Radeon HD 5970 richtig zu unterstützen. Nach wie vor kann nur eine GPU genutzt werden. Ob dieses Problem auch auf den Nachfolger AMD Radeon HD 6990 zutrifft, wird nicht angegeben. Weiterhin wird aufgeführt, dass es zu einer Reduktion der erzielbaren Genauigkeit für Berechnungen doppelter Genauigkeit kommt, wenn ein Modell der neuen AMD-Radeon-HD-6900-Serie verwendet wird. Eine genau Liste der unterstützten Hardware kann <a href="http://developer.amd.com/gpu/ATIStreamSDK/pages/DriverCompatibility.aspx" target="b">hier</a> gefunden werden. Gegenüber den fünf vorangegangenen Veröffentlichungen (<a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1261469126">2.0</a>, <a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=376098">2.01</a>, <a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1272989740">2.1</a>, <a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1281603770">2.2</a>, <a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1292582439">2.3</a>) hat AMD erneut weitere Features hinzugefügt (siehe Liste unten) und will zudem an der Performance gearbeitet haben. Außerdem wurden zahlreiche Fehler in Compiler und Runtime behoben. Eine genaue Liste der behobenen und bekannten Probleme ist in den offiziellen <a href="http://docs.google.com/gview?url=http://developer.amd.com/gpu/AMDAPPSDK/assets/AMD_APP_SDK_Release_Notes_Developer.pdf" target="b">Release Notes</a> dokumentiert.<p style="clear:left;"><center><a href="http://www.planet3dnow.de/photoplog/index.php?n=11616"><img src="http://www.planet3dnow.de/photoplog/file.php?n=11616&w=l" border="1" alt="AMD Radeon HD 6800 Serie - Launch"></a></center>
Seit der Version 2.0 des ATI Stream SDK setzt AMD voll und ganz auf die plattformunabhängige, offene Open Computing Language (OpenCL), während mit dem <a href="http://developer.amd.com/gpu/ATIStreamSDK/ATIStreamSDKv1.4Beta/Pages/default.aspx" target="b">ATI Stream SDK 1.x</a> noch die proprietäre Hochsprache Brook+ verwendet wurde, die AMD aber nicht mehr weiterentwickelt. Ab dem Stream SDK 2.2 wird auch der <a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=381944" target="b">OpenCL 1.1 Standard</a> unterstützt, zudem bietet AMD Unterstützung für eine Reihe von Extensions (Erweiterung zum OpenCL 1.1 Standard). So werden beispielsweise Berechnungen mit Gleitkommazahlen doppelter Genauigkeit als Extension (nicht als optionale, sondern als AMD spezifische vendor extension <i>cl_amd_fp64</i>) angeboten. Zusätzlich zu den Basisoperatoren für Addition, Subtraktion und Multiplikation im SDK v2.1 können seit dem SDK 2.2 erstmals unter anderem trigonometrische Funktionen, Datentypumwandlungen und weitere Operatoren für Berechnungen doppelter Genauigkeit auf der GPU genutzt werden. Allerdings unterscheidet sich der nutzbare Umfang zwischen den Evergreen, RV7xx (nur Beta-Unterstützung) und x86 CPUs. Eine komplette Liste der auf den GPUs unterstützten Operationen kann dem <a href="http://docs.google.com/gview?url=http://developer.amd.com/gpu/AMDAPPSDK/assets/AMD_Accelerated_Parallel_Processing_OpenCL_Programming_Guide.pdf" target="b">AMD APP OpenCL Programming Guide</a> auf Seite 141 entnommen werden.
<blockquote><b><U>Was ist neu im AMD APP SDK V2.4?</U></b><ul><li>Improved OpenCL runtime performance:<ul><li>Zero copy transfer of data between CPU and GPU for APUs (Windows only)</li><li>Improved PCIe transfer speed</li><li>Improved kernel launch times</li></ul></li><li>Support for AMD A-series devices</li><li>Support for:</li><ul><li>AMD C-30 Accelerated Processor with AMD Radeon™ HD 6250 graphics card</li><li>AMD C-50 Accelerated Processor with AMD Radeon™ HD 6250 graphics card</li><li>AMD E-240 Accelerated Processor with AMD Radeon™ HD 6310 graphics card</li><li>AMD E-350 Accelerated Processor with AMD Radeon™ HD 6310 graphics card</li><li>AMD Radeon™ HD 6670 graphics card</li><li>AMD Radeon™ HD 6570 graphics card</li><li>AMD Radeon™ HD 6450 graphics card</li></ul></li><li>Support for CPU/x86 images
(Enables the support for image formats, as described in the Khronos OpenCL Specification, to be run on the x86 CPU) </li><li>Preview Feature: Support for cl_khr_fp64 on the CPU</li><li>Cached reads (-fno-alias)</li><li>Binary image format improvements</li><li>DXVA buffer sharing</li><li>FFT performance improvements</li><li>Uninstallation of SDK 2.4 or its components is now done through the Catalyst Install Manager (CIM). See the <a href="http://developer.amd.com/gpu/AMDAPPSDK/assets/AMD_APP_SDK_Installation_Notes.pdf" target="b">Installation Notes</a> for a description of the procedure.</li><li>Samples:<ul><li>New samples:<ul><li>LUDecomposition</li><li>TransferOverlap</li><li>BufferBandwidth</li><li>BlackScholesDP</li></ul></li><li>An optimized AESEncryptDecrypt sample.</li><li>Added syntax highlighting files.</li><li>Added --flags command line option to specify build flags for kernel code.</li><li>Added --platformId (short form: -p) command line option to run a sample on a specific platform.</li><li>CLInfo sample removed, and CLInfo target file shipped with the Developer package.</li><li>Numerous bug fixes.</li></ul></li><li>For the <a href="http://developer.amd.com/gpu/StreamProfiler/Pages/default.aspx" target="b"><b>AMD APP Profiler v2.2</b></a>:<ul><li>Support for OpenCL™ application summary</li><li>Support for profiling with AMD Radeon™ HD6900 series GPUs (requires AMD APP SDK v2.4 and AMD Catalyst 11.2 or newer)</li><li>Improved Session List Explorer</li><li>Improved user documentation (now also accessible online in <a href="http://developer.amd.com/gpu/AMDAPPSDK/documentation/Pages/default.aspx" target="b">Documentation</a>)</li></ul></li><li>For the <a href="http://developer.amd.com/gpu/ska/Pages/default.aspx" target="b"><b>AMD APP KernelAnalyzer v1.8</b></a>:<ul><li>Support for AMD Catalyst 11.1 – 11.3</li><li>Support for setting the OpenCL compiler build options</li><li>Improved analysis for AMD Radeon™ HD 6970 graphics cards</li><li>Support for displaying x86 assembly code</li></ul></li><li>Commencing with Catalyst 11.3, the AMD Accelerated Parallel Processing (APP) OpenCL runtime is included in the GPU drivers. More frequent updates to the run-time may be obtained by updating the drivers.</li></ul></blockquote>

<center><a href="http://www.planet3dnow.de/photoplog/images/54308/1_OpenCL_Extension_Diagram.png" target="b"><img src="http://www.planet3dnow.de/photoplog/images/54308/large/1_OpenCL_Extension_Diagram.png" border="1" alt="OpenCL Extension Diagram"></a><FONT SIZE=-2>

<i>Quelle: <a href="http://www.amdzone.com/phpbb3/viewtopic.php?f=52&t=137821&p=186099#p186099" target="b">"OpenCL: A Nimble, Extendable Open Standard"</a></i></a></FONT></center>

Um OpenCL-Anwendungen auf AMD GPUs laufen lassen zu können, musste bisher auf dem jeweiligen System neben einem aktuellen AMD Catalyst-Treiberpaket auch das SDK installiert sein. Dies war nötig, da nur mit dem SDK auch die notwendige OpenCL-Laufzeitumgebung auf dem System installiert wird. Dieser für den Endanwender eher unglücklichen Lösung trug das Unternehmen dann Rechnung, indem zunächst als Übergangslösung neben dem normalen AMD-Catalyst-Treiberpaket zusätzlich noch die AMD Catalyst Accelerated Parallel Processing (APP) Technology Edition zum Download angeboten wurde. In diesem Paket war bereits das ATI Stream SDK bzw. AMD APP SDK enthalten - allerdings nur in einer abgespeckten Version. Mit dem AMD APP SDK 2.4 ist es jetzt gelungen die OpenCL-Laufzeitumgebung aus dem SDK herauszulösen. Der <a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1301415116">AMD Catalyst 11.3</a> ist das erste Treiberpaket, dessen Standardversion bereits mit der OpenCL-Laufzeitumgebung ausgeliefert wird. Sollen die Anwendungen lediglich auf einer x86 CPU (beliebiger Hersteller, muss SSE2 unterstützen) ausgeführt werden, reicht die Installation des SDKs. Aktuell unterstützt AMD neben den Windows-Betriebssystemen XP, Vista und 7 sowohl in der 32-bit als auch in der 64-bit Version auch die Linux-Distributionen openSUSE 11.3, Ubuntu 10.04 und Red Hat Enterprise Linux 6 & 5.5 (ebenfalls jeweils 32-bit und 64-bit).


<b>Download:</b><ul><li><a href="http://developer.amd.com/gpu/AMDAPPSDK/downloads/Pages/default.aspx" target="b">AMD Accelerated Parallel Processing (APP) SDK 2.4 [Windows, Linux]</a><FONT SIZE=-2>
<a href="http://developer.amd.com/support/KnowledgeBase/Lists/KnowledgeBase/DispForm.aspx?ID=127" target="b">Vor der Installation des neuen SDKs sollte zunächst eine eventuell vorhandene alte Version von dem System entfernt werden!</a></FONT></li></ul>

<b>Links zum Thema:</b>
<ul><li><a href="http://developer.amd.com/zones/OpenCLZone/Pages/default.aspx" target="b">OpenCL Zone</a></li><li><a href="http://developer.amd.com/gpu/ATIStreamSDK/pages/Documentation.aspx" target="b">Documentation</a></li><li><a href="http://developer.amd.com/documentation/videos/OpenCLTechnicalOverviewVideoSeries/Pages/default.aspx" target="b">ATI Stream OpenCL Technical Overview Video Series</a></li><li><a href="http://developer.amd.com/zones/OpenCLZone/Events/pages/OpenCLWebinars.aspx" target="b">OpenCL Programming Webinar Series</a></li>
<li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1296059864">AMD stellt OpenCL University Kit bereit</a></li></ul></p>
 
gibt es denn schon programme die das nutzen und einen vorteil dadurch haben?
 
Scheint auch wider bei den 80SP GPUs, eine Leistungssteigerung gegeben zu haben. Mal schauen welche SW in zukunft davon profitieren wird.
 
Zurück
Oben Unten