Uuden OpenCL-rajapinnan vanha OpenCL 1.2 on asetettu uudeksi perustasoksi ja kaikki sen ylittävä on valinnaisia ominaisuuksia, kun aiemmin laitteiden oli tuettava kaikkia halutun 2.X-version ominaisuuksia voidakseen tukea edes yhtä.

Khronos Group hallinnoi muun muassa useita merkittäviä avoimen lähdekoodin rajapintoja sekä grafiikkaan että laskentaan. Nyt yhtiö on saanut valmiiksi alustavat ominaisuudet uuden sukupolven laskentarajapinnalleen.

OpenCL 3.0 on todella merkittävän tason muutos ja omalla tavallaan myös askel taakse. Uusi rajapinta tekee OpenCL 1.2:sta oletustason, mitä kaikkien on tuettava, ja kaikesta siitä ylöspäin valinnaista. OpenCL 2.X -versioiden ominaisuudet löytyvät myös uudesta 3.0-versiosta, mutta ne on muutettu valinnaisiksi optioiksi, joiden mahdollisen tuen sovellus voi tarkistaa nopeasti. Myös itse 3.0:n omat uudet ominaisuudet ovat nyt valinnaisia. Aiemmin tiettyä OpenCL-versiota tukevien laitteiden oli tuettava kaikkia sen version ominaisuuksia riippumatta siitä, olisiko sen tyyppisellä laitteella mitään käyttöä niille.

Rajapinnan uudet linjat nähdään parhaana ratkaisuna saada ala hyödyntämään uusia ominaisuuksia. Aiemmin valmistajat ovat saattaneet rajoittaa tuen esimerkiksi 1.2-tasolle, vaikka 2.X sisältäisi hyödyllisiä uudistuksia, koska kyseisen laitteen kannalta täysin hyödyttömien muiden 2.X-ominaisuuksien sisällyttäminen tulisi liian kalliiksi. Toisaalta taas uusi ratkaisu saattaa rajoittaa uudempien ominaisuuksien tukea sovelluspuolella, mikäli sovelluksen halutaan toimivan useilla eri laitteilla. OpenCL 3.0 -kehittäjät voivat luottaa kaikkien tukevan vain 1.2-tasoa ja siten punnitsemaan onko uudempien ominaisuuksien tukemisesta saatava hyöty vaivan arvoista.

Nyt julkaistu OpenCL 3.0 on vielä virallisesti alustava julkaisu, eli sen ominaisuuksia saatetaan palautteen vuoksi hienosäätää ennen lopullista lukkoon lyömistä. Rajapinnasta syvemmin kiinnostuneille suosittelemme Khronoksen tiedotteen ja AnandTechin artikkelin lukua.

Läheet: Khronos, AnandTech

This site uses XenWord.