La nouvelle version de Vulkan 1.2 a déjà été publiée et ce sont ses changements

Volcan

Récemment Khronos a annoncé la sortie de la nouvelle version de la spécification Vulkan 1.2, qui est défini comme une API pour accéder aux capacités graphiques et informatiques du GPU. Les corrections et extensions accumulées sur deux ans ont été intégrées dans la nouvelle spécification.

Volcan est remarquable pour simplifier considérablement les pilotes, apportez la génération de commandes GPU côté application, la possibilité de connecter des couches de débogage, unify API pour plusieurs plates-formes et utilisez une représentation de code intermédiaire précompilée pour une exécution côté GPU.

Principales nouveautés de Vulkan 1.2

Il ressort quee implémentation du langage de programmation HLSL shader développé par Microsoft pour DirectX est prêt pour une utilisation générale (La prise en charge de HLSL dans Vulkan permet d'utiliser uniquement les shaders HLSL dans les applications Vulkan et DirectX et simplifie également la traduction de HLSL vers SPIR-V.)

Il est proposé d'utiliser le compilateur DXC standard pour compiler des shaders, qui a été ouvert par Microsoft en 2017 et est basé sur la technologie LLVM. La prise en charge de Vulkan est implémentée via un backend séparé, ce qui permet de traduire HLSL en une représentation intermédiaire des shaders SPIR-V.

L'implémentation couvre non seulement toutes les fonctionnalités intégrées de HLSL, y compris les types mathématiques, les flux de contrôle, les fonctions, les ensembles, les types de ressources, les espaces de noms, Shader Model 6.2, les structures et les méthodes, mais permet également l'utilisation d'extensions spécifiques de Vulkan, comme VKRay de NVRIA.

En mode HLSL au sommet de Vulkan, il était possible d'organiser le travail de jeux comme Destiny 2, Red Dead Redemption II, Assassin's Creed Odyssey et Tomb Raider.

En outre Il est à noter que la spécification SPIR-V 1.5 a été mise à jour, qui définit une représentation intermédiaire universelle des shaders pour toutes les plates-formes, qui peut être utilisée à la fois pour les graphiques et le calcul parallèle.

L'API principale de Vulkan comprend 23 extensions pour augmenter la productivité, améliorez la qualité d'affichage et simplifiez le développement.

D'eux nous pouvons trouver Chronologie du sémaphore: qui unifient la synchronisation avec les files d'attente de l'hôte et du périphérique (permettent de faire avec une primitive pour la synchronisation omnidirectionnelle entre le périphérique et l'hôte, sans utiliser de primitives VkFence et VkSemaphore séparées).

Celles-ci sont représentées par une valeur 64 bits augmentant de manière monotone qui peut être suivie et mise à jour via plusieurs threads.

Des versions plus courtes de la spécification ont été préparées pour les plates-formes cibles typiques, ce qui simplifie le travail sur des plates-formes pour lesquelles toutes les extensions ne sont pas encore prises en charge, et permet de se passer de l'activation sélective des fonctionnalités de base de l'API Vulkan.

Des autres changements qui se démarquent:

  • Le travail s'est poursuivi sur un projet de portabilité avec d'autres API graphiques.
  • Possibilité d'utiliser des types numériques dans les shaders avec une précision réduite
  • Option de disposition de mémoire compatible HLSL
  • Ressources non liées (indépendantes) qui suppriment la limite de la quantité de ressources disponibles pour les shaders en utilisant l'espace virtuel partagé de la mémoire système et de la mémoire GPU
  • Un modèle de mémoire formel qui définit comment les threads parallèles peuvent accéder aux données partagées et aux opérations de synchronisation
  • Indexation des descripteurs pour réutiliser les descripteurs de conception dans plusieurs shaders;
  • Liaisons de tampon.
  • Liste complète des extensions ajoutées
  • Plus de 50 nouvelles structures et 13 fonctions ajoutées

Enfin des projets d'avenir, le développement d'extensions pour l'apprentissage automatique, le ray tracing, l'encodage et le décodage vidéo, le support de VRS (variable speed shading) et de mesh shaders se démarque.

Intel, AMD, ARM, Imagination Technologies et NVIDIA ont déjà publié des pilotes qui prennent en charge la nouvelle version de Vulkan.

Alors que le cas de Art de table (pilotes gratuits), se offre le support Vulkan 1.2 pour les pilotes RADV (Cartes AMD) et pilotes ANV (Intel). La prise en charge de Vulkan 1.2 est également implémentée dans le débogueur RenderDoc 1.6, le SDK LunarG Vulkan et un ensemble d'échantillons Vulkan.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.