Au cours de la Game Developers Conference 2015 (GDC), Khronos a dévoilé le nom et le contenu de la nouvelle spécification pour les GPU, qui succédera OpenGL. Jusqu'à présent, on l'appelait GLNext, le nom définitif est Vulkan.
À l'instar de Mantle, Metal et Direct X 12, cette refonte complète de la spécification permet de réduire la dépendance du GPU avec le CPU. Pour cela, le pilote est allégé et la préparation des commandes GPU peut être multithreadée. De plus, les applications auront bien plus de contrôle sur le GPU, simplifiant ainsi le travail du pilote.
Une autre nouveauté est l'utilisation d'un langage intermédiaire pour les shaders (code exécuté sur le GPU). Ce langage intermédiaire n'est autre que SPIR, dont la spécification est aussi fournie par Khronos. C'est d'ailleurs cette même spécification qui sera utilisée dans OpenCL 2.1. L'utilisation d'un langage intermédiaire a plusieurs attraits :
- n'importe quel compilateur peut générer des programmes exécutables sur le GPU ;
- le pilote n'a plus besoin de gérer la compilation des shaders ;
- le code des shaders peut être caché.
En plus de cela, Khronos fournira des tests de conformité à la spécification et même une implémentation de base pour le compilateur de shaders.
Bien entendu, tout comme OpenGL, Vulkan sera compatible avec tous les systèmes d'exploitation et cela sera encore plus vrai que du temps d'OpenGL. En effet, la séparation OpenGL et OpenGL ES n'existera plus.
Les différents acteurs tels que AMD, ARM, Imagination Technologies, NVIDIA supportent et contribuent à la spécification de Vulkan. Actuellement, la spécification n'est disponible qu'en aperçu technologique, mais les premières implémentation et support devraient être disponibles au cours de l'année ainsi que la spécification finalisée.
Votre opinion
Est-ce que cette spécification vous intéresse ? Pourquoi ?
Allez-vous développer avec Vulkan dès que le support par les constructeurs sera disponible ?
Pensez-vous que c'est une évolution notable ou craignez-vous que les problèmes qu'a eu OpenGL réapparaissent ?
Aimez-vous le nom choisi ?
Source
Vulkan sur Khronos.org