Szerző: Bodnár Ádám

2009. augusztus 6. 17:07

A GPU-t és a CPU-t is összefogja már az OpenCL

Az ATI Stream szoftverfejlesztő készlet 2.0 béta változatának keretén belül az AMD kiadta az első x86-os OpenCL fejlesztői környezetet.

Az Open Computing Language (OpenCL) egy olyan nyílt, keresztplatformos alkalmazásfejlesztői interfész, amely lehetővé teszi C nyelvű alkalmazások készítését grafikus chipekre, kihasználva a bennük rejlő hatalmas számítási potenciált. Ezt az AMD implementálta x86-os chipekre, a cég most kiadott megoldásával a programok x86-os CPU-kon is futtathatók, a korábbinál jobban felhasználva a többmagos, többszálú feldolgozásra képes lapkák előnyeit. Így a felhasználók akkor is tudnak OpenCL-re fejleszteni és az elkészült alkalmazásokat tesztelni, ha nem rendelkeznek OpenCL-kompatibilis GPU-val.

Az OpenCL kiterjesztése az x86-os világba azért is fontos, mert ezzel megszületett az első olyan alkalmazásprogramozási interfész, amely egyetlen, közös keretrendszerben teszi lehetővé olyan programok elkészültét, amelyek a GPU-kat és CPU-kat egyaránt képesek kihasználni. Ez lényegében nem mást jelent, mint a szoftverek korábbinál jobb skálázódását: amennyiben egy gépben többmagos processzor és GPU is van, a szoftver heterogén futással mindkettőt munkára tudja bírni, de GPU hiányában a CPU-n is futhat.

Az utóbbi időben nagy figyelmet kaptak azok a megoldások és kezdeményezések, amelyek a grafikus chipekben rejtőző potenciált nem grafikus célokra használták, például az NVIDIA CUDA vagy akár az OpenCL révén. Az első, OpenCL-t támogató operációs rendszer az ősszel érkező Apple Mac OS X Snow Leopard (10.6), az Apple egyébként az OpenCL egyik atyja az NVIDIA-val, az AMD-vel és az Intellel együtt, de az OpenCL fejlesztését a független Khronos Group felügyeli.

Az OpenCL széles körű elterjedését azonban minimum bizonytalanná teszi, hogy a PC-s operációs rendszerek piacán egyeduralkodó Microsoft egy rivális megoldással állt elő a Windows 7-ben érkező DirectX 11 képében, amelyben a compute shaderek szintén azt jelentik a programozók számára, hogy rugalmasan, egyszerűen adhatnak számítási feladatokat a grafikus processzornak is, anélkül, hogy azokat grafikus megközelítésben kellene tálalniuk. Kérdés, hogy a DX11 árnyékában az OpenCL mekkora szeletet tud magának kihasítani a PC-ken. A Windowson kívüli világban, a mérnöki-tudományos rendszerek Linux-központú világában azonban utat találhat magának az OpenCL, elsősorban nyíltságának köszönhetően.

Az ATI Stream SDK 2.0 béta futtatásához Windows XP/Vista, OpenSUSE 11 vagy Ubuntu Linux 8.04 operációs rendszer szükséges 32 vagy 64 bites x86-os processzoron. A támogatott fordítók Windowson a Microsoft Visual Studio 2008 Professional Edition, Linuxon pedig a GCC 4.3 vagy újabb, illetve az Intel C Compiler 11-es verziója. A szoftver SSE3-mat támogató processzort igényel.

Nagyon széles az a skála, amin az állásinterjú visszajelzések tartalmi minősége mozog: túl rövid, túl hosszú, semmitmondó, értelmetlen vagy semmi. A friss heti kraftie hírlevélben ezt jártuk körül. Ha tetszett a cikk, iratkozz fel, és minden héten elküldjük emailben a legfrissebbet!

a címlapról