Il team che si occupa del WebKit in Apple ha proposto un nuovo Community Group al World Wide Web Consortium (W3C) dedicato allo sviluppo di una nuova API – probabilmente basata sulla tecnologia Metal – consentendo l’accelerazione di operazioni relative alla grafica 3D e al calcolo generale, sfruttando la GPU.
Sul blog degli sviluppatori che si occupano del WebKit, si parla di progressi nel campo dell’hardware delle GPU che hanno permesso altrettanti miglioramenti nelle API software. Si citano piattaforme quali Metal, Direct3D 12 di Microsoft e le Vulkan del Khronos Group spiegando che queste richiedono meno investimenti e offrono migliori prestazioni rispetto a quanto possibile con lo standard OpenGL. “Sebbene queste tecnologie sfruttino concetti simili” si legge nel post di Dean Jackson, “sfortunatamente nessuna è disponibile per tutte le piattaforme”. “Cosa significa questo per il web? Queste nuove tecnologie sono chiaramente il prossimo passo evolutivo per contenuti che possono trarre beneficio dalla potenza della GPU”.
“Il successo della piattaforma web richiede la definizione di uno standard comune che consenta implementazioni multiple ma abbiamo tante API grafiche dalle molte sfaccettature dal punto di vista dell’architettura”. “Una moderna tecnologia di basso livello in grado di accelerare grafica e calcoli richiede la progettazione di API che è possibile implementare in cima a vari sistemi, inclusi quelli menzionati prima. Con la disponibilità di un ampio panorama di tecnologie grafiche, seguire specifiche API come OpenGL non è più possibile”.
“Il nuovo gruppo del W3C aiuterà a valutare e progettare un nuovo standard web in grado di sfruttare l’hardware delle moderne GPU e allo stesso tempo operare in modo sicuro su una serie di differenti tecnologie grafiche” scrive Jackson. Le API proposte potranno essere sfruttate anche per compiti diversi legati all’accelerazione di calcoli grafici che sfruttano l’hardware della GPU e dovranno essere facili da adottare. “Dovranno poter funzionare con altri standard emergenti critici quali WebAssembly e WebVR” scrive Jackson, “e, soprattutto, lo standard deve essere sviluppato come aperto, permettendo sia a esperti del settore, sia all’ampia comunità del web, di partecipare”.
Il team di Apple che si occupa del WebKit, propone API inizialmente denominate “WebGPU”, un insieme di procedure sulle quali ha cominciato a lavorare “alcuni anni addietro” con risultati incoraggianti che ora vuole condividere con il Community Group del W3C. Stando a quanto riportato nella bozza della proposta, WebGPU è nata come una rappresentazione (mapping) da Metal a JavaScript.
La tecnologia grafica Metal è stata presentata nel 2014 in concomitanza dell’arrivo di iOS 8, pensata per massimizzare le prestazioni del chip Apple A7 e successivi, migliorando sensibilmente le chiamate alle routine di disegno: L’anno seguente Metal arrivò anche su Mac con OS X 10.11 El Capitan, offrendo miglioramenti delle prestazioni a livello di tutto il sistema e consentire ai giochi e alle app professionali per Mac di sfruttare i processori grafici. A quanto sembra di capire a questo punto Apple cerca di trasformare Metal in un framework multipiattaforma, mossa che consentirebbe una più vasta adozione oltre a semplificare lo sviluppo di applicazioni destinate a più sistemi.