Azért, hogy fejlessze ATI üzletágát, az AMD az OpenCL-t (Open Computer Language) és természetesen a Microsoft DirectX 11 API-jait is támogatja. A konkurens NVIDIA a CUDA compillert támogatja az általános célú GPU-ihoz, míg az Intel a Larrabee-hez megint mást. Az AMD az OpenCL-támogatás tegnapi bejelentése után megkezdte a Stream SDK-i (software development kit) fejlesztését. A következő 18 hónapban megjelenő frissítések segítségére lesznek a fejlesztőknek abban, hogy kihasználják az ATI GPU-k képességeit. Ezzel újabb, fejlettebb alkalmazások előállítását segítik az üzleti HPC (high-performance computing) terén és a játékoknál is.
Ami a hardveroldalt illeti, az AMD egy Accelerated Computing elnevezésű projekt keretei között dolgozik tovább a kombinált, egyetlen szilíciumlapkán lévő CPU és GPU megoldásokon. Tulajdonképpen ez a projekt volt a legfőbb oka annak, hogy az AMD 2006-ban megvásárolta az ATI-t. A vállalat mostanában dobta piacra a FireStream 9250 GPU-t, amelyet kifejezetten a HPC-piacra szántak.
Az AMD OpenCL-lel kapcsolatos bejelentése ugyanarra a hétre esik, amikor az Intel először beszélt részletekbe menően a Larrabee grafikus processzorról az iparág legnívósabbjaként számon tartott grafikai konferencián, a SIGGRAPH-on. Mint arról beszámoltunk, a 2009-2010 között megjelenő grafikus processzor x86-os processzormagokat használ grafikai feladatokhoz. (A pontos megjelenési dátumra még várnunk kell, de remélhetőleg a közelgő IDF-en már szó esik erről is.) Az Intel igyekszik megkönnyíteni az alkalmazások fejlesztőinek életét, legyen szó akár HPC alkalmazásokról, akár játékokról, hiszen az a chip, amely x86-os alapokra épül, a jól ismert és bevált x86 utasításkészlet segítségével, C és C++ nyelveken is programozható. Az Intel - természetesen - támogatja a DirectX-et és ezen kívül az OpenGL API-kat.
Az Intel és az AMD erőfeszítései azt jelzik, hogy a két vállalat mekkora jelentőséget tulajdonít a grafikának a következő pár év számítástechnikai fejlesztéseiben. Szeretnék maximálisan kihasználni a GPU-k abbeli képességét, hogy komplex problémákat parallel lebontásban dolgozzanak fel. Az IBM már megmutatta a Roadrunner szuperszámítógép segítségével, hogy ez hogyan lehetséges. A Roadrunner Cell processzorokat használ gyorsítóként a komplex problémák megoldásához, míg hétköznapi AMD Opteron processzorokat a hétköznapi számítási feladatokhoz.
Ugyanekkor az NVIDIA igyekszik rávenni a fejlesztőket saját compillerének, a CUDA-nak (Compute Unified Device Architecture) a használatára. A CUDA egy C fordító és egy eszközkészlet, amelynek segítségével a GPU úgy programozható, mint egy CPU. Amikor az NVIDIA júniusban bejelentette a HPC-alkalmazásokhoz szánt Tesla GPU-t, vele együtt bejelentették a CUDA 2.0-s változata elkészítésének terveit is.
Nyilvánvalóan mindegyik cég azt a programozási nyelvet támogatja, amely a legjobban kötődik az adott cég technológiai gyökereihez. Például az Intel az x86-alapú megoldásokat támogatja, hiszen ebben a legjobb, és óriási mennyiségű, ilyen architektúrára épülő processzor van már a piacon több évtizede. Arról nem is beszélve, hogy az alkalmazások fejlesztői jól ismerik ezt az architektúrát, ami óriási előny a konkurensekkel szemben.
A tökéletes megoldás egy közös programozási nyelv lenne, de mindhárom cég eltérő chiparchitektúrákat fejleszt, így ez nem lehetséges - eltérő programozási megközelítésekre van szükség.