AMD hat das ATI Stream Software Development Kit (SDK) v2.3 veröffentlicht. Seit der Version 2.0 des ATI Stream SDK setzt AMD voll und ganz auf die plattformunabhängige, offene Open Computing Language (OpenCL). Im ATI Stream SDK 1.x wurde noch die proprietäre Hochsprache Brook+ verwendet, die AMD aber nicht mehr weiterentwickelt. Im Zuge des Wegfalls der Marke ATI soll nun auch in einem kommenden Release die Umbenennung des ATI Stream SDKs in AMD Accelerated Parallel Processing SDK erfolgen. 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.3 werden erstmals auch die kommenden ersten APUs "Ontario" und "Zacate" unterstützt. Eine genau Liste der Unterstützten Hardware kann hier gefunden werden. Gegenüber den vier vorangegangenen Veröffentlichungen (2.0, 2.01, 2.1, 2.2) 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 Release Notes dokumentiert.
Seit dem Stream SDK 2.2 wird der OpenCL 1.1 Standard 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 cl_amd_fp64) 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 AMD APP OpenCL Programming Guide auf Seite 124 entnommen werden.
Was ist neu im Stream SDK 2.3 ?
Improved OpenCL runtime performance:
Improved kernel launch times.
Improved PCIe transfer times.
Enabled DRMDMA for Evergreen GPUs, as well as AMD Radeon™ HD 6870 and AMD Radeon™ HD 6850 devices.
Increased size of staging buffers.
Enhanced Binary Image Format (BIF).
Support for UVD video hardware component through OpenCL (Windows 7).
Support for Northern Islands family of devices.
Support for AMD Radeon™ HD 6310 and AMD Radeon™ 6250 devices.
Preview Feature: An optimization pragma for unrolling loops.
Preview Feature: Support for CPU/X86 image. This enables the support for Image formats, as described in the Khronos specification for OpenCL, to be run on the x86 CPU. It is enabled by the following environment variable in your application: CPU_IMAGE_SUPPORT.
Um OpenCL-Anwendungen auf AMD GPUs laufen lassen zu können, muss auf dem jeweiligen System neben dem AMD Catalyst 10.12 auch das SDK installiert sein. Seit kurzem bietet AMD neben dem normalen AMD-Catalyst-Treiberpaket zusätzlich noch die AMD Catalyst Accelerated Parallel Processing (APP) Technology Edition zum Download an. In diesem Paket ist bereits das ATI Stream SDK bzw. AMD APP SDK enthalten - allerdings nur in einer abgespeckten Version. 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 & 9.10 und Red Hat Enterprise Linux 5.5 & 5.4 (ebenfalls jeweils 32-bit und 64-bit).
Diesen Artikel bookmarken oder senden an ...
