News ATI Stream Software Development Kit (SDK) v2.2

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
<center><a href="http://developer.amd.com/gpu/ATIStreamSDK/Pages/default.aspx"><img src="http://www.planet3dnow.de/photoplog/images/54308/1_ATI-Stream-SDK-2.2.jpg" border="1" alt="ATI Stream SDK"></a></center>

AMD hat das ATI Stream Software Development Kit (SDK) v2.2 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 <a href="http://developer.amd.com/gpu/ATIStreamSDK/ATIStreamSDKv1.4Beta/Pages/default.aspx" target="b">ATI Stream SDK 1.x</a> wurde noch die proprietäre Hochsprache Brook+ verwendet, die AMD aber nicht mehr weiterentwickelt. Die OpenCL Entwicklungsumgebung unterstützt nicht nur die hauseigenen GPUs ab der RV7xx Generation, sondern auch alle aktuellen x86 CPUs. Eine genau Liste der Unterstützten Hardware ist auf der <a href="http://developer.amd.com/gpu/ATIStreamSDK/Pages/default.aspx#two" target="b">offiziellen Produktseite</a> zu finden.

Gegenüber den drei 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>) hat AMD die Unterstützung für den <a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=381944" target="b">OpenCL 1.1 Standard</a>, weitere Betriebssysteme sowie Compiler und neue Features (siehe Liste unten) hinzugefügt. Bisher lediglich als Preview angebotene Funktionen sind jetzt offiziell als Extension (Erweiterung zum OpenCL 1.1 Standard) verfügbar. Berechnungen mit Gleitkommazahlen doppelter Genauigkeit werden ebenfalls 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 jetzt erstmals unter anderem trigonometrische Funktionen, Datentypumwandlungen und weitere Operatoren für Berechnungen auf der GPU genutzt werden. Allerdings unterscheidet sich der nutzbare Umfang zwischen den Evergreen, RV770 (nur Beta-Unterstützung) und x86 CPUs. Eine komplette Liste der auf den GPUs unterstützten Operationen kann dem <a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_OpenCL_Programming_Guide.pdf" target="b">ATI Stream SDK OpenCL Programming Guide</a> auf Seite 120 entnommen werden. Außerdem wurden Fehler in Compiler und Runtime behoben. Eine genaue Liste der behobenen und bekannten Probleme ist in den offiziellen <a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_Release_Notes_Developer.pdf" target="b">Release Notes</a> zu finden.

<blockquote><FONT SIZE=+1><b><U>Was ist neu in v2.2 ?</U></b></FONT><ul><li><b>Support for OpenCL 1.1 specification.<SUP>3</SUP></b><ul><li>Please see the <a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/opencl-1.1-rev33.pdf" target="b">OpenCL 1.1 specification</a> for more information about this feature.</li></ul></li>
<li><b>Support for Ubuntu 10.04 and Red Hat® Enterprise Linux® 5.5.</b></li>
<li><b>Support for X86 CPUs with SSE2.x or later</b> (Adds to existing support for X86 CPUs with SSE3.x or later).</li>
<li><b>Support for Microsoft Visual Studio 2010 Professional Edition and Minimalist GNU for Windows (MinGW) [GCC 4.4].</b></li>
<li><b>Support for GNU Compiler Collection (GCC) 4.1 or later on Linux® systems</b> (Adds to existing support for GCC 4.3 or later).</li>
<li><b>Support for single-channel OpenCL image format.<SUP>3</SUP></b></li>
<li><b>Support for OpenCL / DirectX 10 interoperability.</b><ul><li>Please see this <a href="http://www.khronos.org/registry/cl/extensions/khr/cl_khr_d3d10_sharing.txt" target="b">Khronos OpenCL extension registry entry</a> for more information about this extension.</li></ul></li>
<li><b>Support for additional double-precision floating point routines in OpenCL C kernels.</b><ul><li>Please see chapter A, section 9 of the <a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_OpenCL_Programming_Guide.pdf" target="b">ATI Stream SDK OpenCL Programming Guide</a> for more information about the additional routines added in this release.</li></ul></li>
<li><b>Support for generating and loading binary OpenCL kernels.</b><ul><li>Please see this <a href="http://developer.amd.com/support/KnowledgeBase/Lists/KnowledgeBase/DispForm.aspx?ID=115" target="b">knowledge base article</a> for more information about this feature.</li></ul></li>
<li><b>Support for native OpenCL kernels.<SUP>4</SUP></b></li>
<li><b><U>Preview Feature:</U> Support for accessing additional physical memory on the GPU from OpenCL applications.<SUP>3,7</SUP></b><ul><li>Please see this <a href="http://developer.amd.com/support/KnowledgeBase/Lists/KnowledgeBase/DispForm.aspx?ID=123" target="b">knowledge base article</a> for more information about this feature.</li></ul></li>
<li><b><U>Preview Feature:</U> Support for printf() in OpenCL C kernels.</b><ul><li>Please see chapter A, section 8 of the <a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_OpenCL_Programming_Guide.pdf" target="b">ATI Stream SDK OpenCL Programming Guide</a> for more information about this extension.</li></ul></li>
<li><b><U>Extension:</U> Support for additional event states when registering event callbacks in OpenCL 1.1.</b><ul><li>Please see chapter A, section 8 of the <a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_OpenCL_Programming_Guide.pdf" target="b">ATI Stream SDK OpenCL Programming Guide</a> for more information about this extension.</li></ul></li>
<li><b>Additional OpenCL samples:</b><ul><li>ConstantBandwidth (under cl/MicroBenchmarks)</li><li>GlobalMemoryBandwidth (under cl/MicroBenchmarks)</li><li>ImageBandwidth (under cl/MicroBenchmarks)</li><li>LDSBandwidth (under cl/MicroBenchmarks)</li><li>MemoryOptimizations</li><li>PCIeBandwidth (under cl/MicroBenchmarks)</li><li>SimpleDX10</li><li>SimpleMultiDevice</li></ul></li>
<li><b>Package Update: ATI Stream Profiler 1.4.</b></li>
<li><b>Various OpenCL compiler and runtime fixes and enhancements</b> (see <a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_Release_Notes_Developer.pdf" target="b">developer release notes</a> for more details).</li>
<li><b>Expanded OpenCL performance optimization guidelines in the <a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_OpenCL_Programming_Guide.pdf" target="b">ATI Stream SDK OpenCL Programming Guide</a>, including:</b><ul><li>Global memory optimizations</li><li>LDS optimizations</li><li>Register and LDS impact on number of active wavefronts</li><li>Load-balancing across multiple OpenCL devices</li><li>Instruction bandwidths</li><li>Key cache sizes and bandwidths for "Evergreen" GPUs</li></ul></li>
<FONT SIZE=-2><b>3</b> Support available on ATI Radeon 5000 Series GPUs, ATI FirePro V8800 Series GPUs, ATI FirePro V7800 Series GPUs, ATI FirePro V5800 Series GPUs, ATI FirePro V4800 Series GPUs, ATI FirePro V3800 Series GPUs, ATI Mobility Radeon 5000 Series GPUs, ATI FirePro M7820 GPU and ATI FirePro M5800 GPU
<b>4</b> Support available on x86 CPU w/ SSE2.x or later.
<b>7</b> Supported only on non-CrossFire configurations.</FONT></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, muss auf dem jeweiligen System neben dem <a href="http://support.amd.com/us/kbarticles/Pages/OpenCL11ATICat107UpdateDriver.aspx">ATI Catalyst 10.7 Update Driver for OpenCL 1.1 Support</a> auch das SDK installiert sein. 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.2, Ubuntu 10.04 & 9.10 und Red Hat Enterprise Linux 5.5 & 5.4 (ebenfalls jeweils 32-bit und 64-bit).


<b>Download:</b> <a href="http://developer.amd.com/GPU/ATISTREAMSDK/Pages/default.aspx#five" target="b">ATI Stream Software Development Kit (SDK) v2.2 [Windows, Linux]</a>

<b>Links zum Thema:</b>
<ul><li><a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=384125">Pressemitteilung</a></li><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1278322413">ATI Stream SDK Roadmap aufgetaucht</a></li><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1279613880">ATI Catalyst Software Q2 2010 Newsletter aufgetaucht</a></li><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?id=1277300964">AMD FireStream 93xx offiziell angekündigt</a></li>
<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/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_Release_Notes_Developer.pdf" target="b">ATI Stream SDK Developer Release Notes</a></li><li><a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_Installation_Notes.pdf" target="b">ATI Stream SDK Installation Notes</a></li><li><a href="http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_Getting_Started_Guide_v2.2.pdf" target="b">ATI Stream SDK Getting Started Guide</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></ul>
 
Das sieht nach einem größeren Sprung aus oder irre ich mich da?
Wer Kennt sich da aus und kann Meinungen/Erklärungen usw abgeben?
Bzw was fehlt noch großartiges
bzw. wo sind bei OpenCL vs. Cuda noch die Probleme/Rückstände?
 
Das sieht nach einem größeren Sprung aus oder irre ich mich da?
Wer Kennt sich da aus und kann Meinungen/Erklärungen usw abgeben?
Bzw was fehlt noch großartiges
bzw. wo sind bei OpenCL vs. Cuda noch die Probleme/Rückstände?
Im Profisegment, also ATI Fire vs. Nvidia Quadro/Tesla, ist der grüne Grafikexperte mit CUDA in überdeutlicher Marktführerschaft.

Nvidia hat sich so auch einen Entwicklervorsprung erarbeitet. Bislang war Nvidias CUDA auch näher dran an OpenCL als ATIs Brook+ in deren Stream.

MFG Bobo(2010)
 
Ich nehme an es dauert noch ein wenig bis auch die Win 7 64Bit Version verfügbar ist? Weil bei dem Link kommt im Moment noch immer:

"We apologize, but the page you requested is unavailable. It may be temporarily offline due to maintenance, or it may not exist."
 
Ich nehme an es dauert noch ein wenig bis auch die Win 7 64Bit Version verfügbar ist? Weil bei dem Link kommt im Moment noch immer:

"We apologize, but the page you requested is unavailable. It may be temporarily offline due to maintenance, or it may not exist."

Also bei mir funktioniert der Link ohne Probleme!
 
Im Profisegment, also ATI Fire vs. Nvidia Quadro/Tesla, ist der grüne Grafikexperte mit CUDA in überdeutlicher Marktführerschaft.

Nvidia hat sich so auch einen Entwicklervorsprung erarbeitet. Bislang war Nvidias CUDA auch näher dran an OpenCL als ATIs Brook+ in deren Stream.

MFG Bobo(2010)
Es wäre interessant, wie der Vorsprung im Detail aussieht.

Der große Vorsprung war mir schon geläufig.

(Und wie viel AMD mit SKD 2.2 aufholen konnte.)
 
Habe gerade die Win7 64 Version ohne Probleme installiert.

Gibt es eigentlich schon Informationen, wann die OpenCL Komponente Teil des regulären Catalyst Pakets wird (also man nicht mehr das SDK für OpenCL benötigt)?

lg
 
Also laut Everest gehts auch mitn normalen Catalyst 10.7; auch das neue kleine Programm clinfo is dieser Meinung;

Number of platforms: 1
Platform Profile: FULL_PROFILE
Platform Version: OpenCL 1.1 ATI-Stream-v2.2 (302)
Platform Name: ATI Stream
Platform Vendor: Advanced Micro Devices, Inc.
Platform Extensions: cl_khr_icd cl_amd_event_callback cl_khr_d3d10_sharing


Platform Name: ATI Stream
Number of devices: 2
Device Type: CL_DEVICE_TYPE_CPU
Device ID: 4098
Max compute units: 6
Max work items dimensions: 3
Max work items[0]: 1024
Max work items[1]: 1024
Max work items[2]: 1024
Max work group size: 1024
Preferred vector width char: 16
Preferred vector width short: 8
Preferred vector width int: 4
Preferred vector width long: 2
Preferred vector width float: 4
Preferred vector width double: 0
Max clock frequency: 2812Mhz
Address bits: 64
Max memory allocation: 1073741824
Image support: No
Max size of kernel argument: 4096
Alignment (bits) of base address: 1024
Minimum alignment (bytes) for any datatype: 128
Single precision floating point capability
Denorms: Yes
Quiet NaNs: Yes
Round to nearest even: Yes
Round to zero: Yes
Round to +ve and infinity: Yes
IEEE754-2008 fused multiply-add: No
Cache type: Read/Write
Cache line size: 64
Cache size: 65536
Global memory size: 3221225472
Constant buffer size: 65536
Max number of constant args: 8
Local memory type: Global
Local memory size: 32768
Profiling timer resolution: 364
Device endianess: Little
Available: Yes
Compiler available: Yes
Execution capabilities:
Execute OpenCL kernels: Yes
Execute native function: Yes
Queue properties:
Out-of-Order: No
Profiling : Yes
Platform ID: 0000000001063568
Name: AMD Phenom(tm) II X6 1055T Processor
Vendor: AuthenticAMD
Driver version: 2.0
Profile: FULL_PROFILE
Version: OpenCL 1.1 ATI-Stream-v2.2 (302)
Extensions: cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_byte_addressable_store cl_khr_gl_sharing cl_ext_device_fission cl_amd_device_attribute_query cl_amd_printf cl_khr_d3d10_sharing
Device Type: CL_DEVICE_TYPE_GPU
Device ID: 4098
Max compute units: 10
Max work items dimensions: 3
Max work items[0]: 256
Max work items[1]: 256
Max work items[2]: 256
Max work group size: 256
Preferred vector width char: 16
Preferred vector width short: 8
Preferred vector width int: 4
Preferred vector width long: 2
Preferred vector width float: 4
Preferred vector width double: 0
Max clock frequency: 880Mhz
Address bits: 32
Max memory allocation: 134217728
Image support: Yes
Max number of images read arguments: 128
Max number of images write arguments: 8
Max image 2D width: 8192
Max image 2D height: 8192
Max image 3D width: 2048
Max image 3D height: 2048
Max image 3D depth: 2048
Max samplers within kernel: 16
Max size of kernel argument: 1024
Alignment (bits) of base address: 32768
Minimum alignment (bytes) for any datatype: 128
Single precision floating point capability
Denorms: No
Quiet NaNs: Yes
Round to nearest even: Yes
Round to zero: Yes
Round to +ve and infinity: Yes
IEEE754-2008 fused multiply-add: Yes
Cache type: None
Cache line size: 0
Cache size: 0
Global memory size: 536870912
Constant buffer size: 65536
Max number of constant args: 8
Local memory type: Scratchpad
Local memory size: 32768
Profiling timer resolution: 1
Device endianess: Little
Available: Yes
Compiler available: Yes
Execution capabilities:
Execute OpenCL kernels: Yes
Execute native function: No
Queue properties:
Out-of-Order: No
Profiling : Yes
Platform ID: 0000000001063568
Name: Juniper
Vendor: Advanced Micro Devices, Inc.
Driver version: CAL 1.4.737
Profile: FULL_PROFILE
Version: OpenCL 1.1 ATI-Stream-v2.2 (302)
Extensions: cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_printf cl_amd_media_ops cl_khr_d3d10_sharing


Passed!

Es wird jedoch wenigstens noch bis SDK 2.3 dauern - eher Anfang nächstes Jahr bis AMD die erforderlichen Dateien mit in den Catalyst mit rein packt ....
 
Zuletzt bearbeitet:
AMD dürfte stark davon profitieren, dass nun auch Intel auf den OpenCL-Zug aufspringt

Die wollen offensichtlich eine recht effiziente Implementierung für CPUs bringen, was dann den Durchbruch für OpenCL im Mainstream bedeuten könnte.
 
Zurück
Oben Unten