OpenCL

Az OpenCL egy Apple által megálmodott és a Khronos Group vezetésével fejlesztett felület, mely nyílt ipari szabványnak tekinthető, és a gyártók széles körben támogatják. A koncepció célja az adatpárhuzamos végrehajtásra tervezett, illetve a heterogén módon programozható processzorok képességeinek minél jobb kiaknázása. Ezzel gyorsítható a feldolgozás, valamint a rendelkezésre álló erőforrások energiahatékony felhasználása is lehetséges.

Hirdetés

Az OpenCL koncepciójának alappillérei között szerepel, hogy tudjon kezelni bármilyen végrehajtó egységet, a végrehajtási modell pedig többdimenziós szerkezetre épít, ahol az adatokon párhuzamosan futtathatók a számítások.

Az OpenCL segítségével a programozók képesek kihasználni a grafikus processzorok általános számítási teljesítményét, így azok a grafika mellett olyan jól párhuzamosítható feladatokra is befoghatók, amelyeken eddig a központi processzor dolgozott. Természetesen az OpenCL lehetőségei itt nem érnek véget, hiszen gyakorlatilag bármilyen speciális processzorhoz alkalmazható a felület, a rendszer hatékonyabb kihasználása érdekében.

Az OpenCL felület az operációs rendszertől teljesen független, így bárhol megoldható a támogatása. A megfelelő driverről mindig az adott hardver gyártója gondoskodik. Esetenként előfordulhat, hogy egy cég a konkurens hardvereit is támogatja, de ez egyéni preferencia kérdése. Itt persze szó sincs hivatalos támogatásról, vagyis a nem gyári drivereket csak saját felelősségre szabad használni.

A PC-s gyártók támogatásával kapcsolatban, a könnyebb átláthatóság kedvérét egy táblázatba foglaltuk össze az aktuális helyzetet a legfrissebb, végleges driverek képességeit figyelembe véve:

A gyártók OpenCL driverei
Driver AMD
Intel NVIDIA
OpenCL verzió
1.2
1.2
1.1
OpenCL driver típusa Heterogén (CPU+GPU és APU)
Heterogén (CPU és APU) csak GPU
APU-k kezelése
(OpenCL 1.2-es felületen)
Minden AMD APU
Harmadik és negyedik generációs Core i, illetve Pentium és Celeron sorozat vagy újabb
-
GPU-k kezelése
(OpenCL 1.2-es felületen)
Radeon HD 5000, 6000, 7000 és R sorozat vagy újabb Intel HD Graphics 2500/4000 és Iris sorozat vagy újabb -
APU-k kezelése
(OpenCL 1.1-es felületen)
- -
-
GPU-k kezelése
(OpenCL 1.1-es felületen)
-
-
GeForce 400, 500, 600 és 700 sorozat vagy újabb
GPU-k kezelése
(OpenCL 1.0-s felületen)
Radeon HD 4000 sorozat (béta támogatás)
- Ion; GeForce 8, 9, 100, 200, 300 sorozat
Konkurens CPU-k nem hivatalos támogatása Intel, VIA
nincs -
OpenCL CPU driver utasításkészlete SSE2, SSE3, SSE4A, AVX, XOP, FMA3, FMA4
SSE4.1, SSE4.2, AVX
-
Operációs rendszer támogatása Windows 7, 8, 8.1, Vista, XP, illetve Linux
Windows 7, 8, 8.1, XP, illetve Linux Windows 7, 8, 8.1, Vista, XP, illetve Linux

Hirdetés