Le projet LLVM a promu son backend DirectX au rang de cible officielle du compilateur, après quatre années de développement pris en charge par Microsoft. La technologie traduit le code intermédiaire LLVM en langage DXILqui exécute les pilotes graphiques Windows DirectX 12. Jusqu'à présent, il s'agissait d'un objectif expérimental qui n'était pas activé par défaut, et cette étape est derrière nous avec cette décision.
Ingénieur compilateur HLSL de Microsoft, Farzon Lotfia confirmé le changement en présentant le patch qui officialise la promotion. Comme il l'a expliqué, cette décision sort le backend DirectX de son état expérimental et ajoute l'interface clang-dxc, de sorte que la communauté dispose désormais d'un chemin clair pour tester le nouveau backend. Voyons ce que cela signifie pour ceux qui travaillent avec HLSL et DirectX 12. La décision intervient après un mois de débat sur le forum LLVM Discourse, où il a été discuté si le backend était suffisamment mature pour franchir le pas.
De la cible expérimentale à la pièce de compilateur stable
Au cours des quatre dernières années, le backend DirectX de LLVM a vécu dans un vide technique : il existait et fonctionnait, mais devait être activé manuellement car les versions par défaut ne l'incluaient pas. Ce label expérimental a limité son adoption en dehors des équipes qui suivaient déjà de près le développement du projet.
Avec la promotion au rang d'objectif officiel, le backend recevrait le même traitement que les autres architectures consolidées au sein de LLVM, ce qui, dans la pratique du projet, se traduit généralement par une maintenance continue et des tests de régression périodiques. L'interface clang-dxcjusqu'ici secondaire, est désormais intégré au projet de compilation du code HLSL, le langage dans lequel les studios écrivent leurs shaders pour DirectX. Bien entendu, comme nous vous le dirons plus tard, l'activation par défaut de clang-dxc et HLSL n'arrivera pas avant LLVM 24. LLVM, rappelons-le, est l'ensemble des outils de compilation open source qui sont également utilisés par des projets comme Clang, Rust ou Swift pour traduire le code source en instructions que chaque type de matériel comprend.
Ray tracing et les prochains Shader Models, à l'honneur
Dans la même discussion sur le discours LLVM, Microsoft a détaillé la direction que prendrait le travail à partir de là. La société a noté que les développements futurs se concentreront sur la prise en charge des graphiques et des shaders graphiques. lancer de rayonsaux derniers modèles de shader, et pour resserrer l'intégration entre les capacités frontales HLSL de Clang et la génération de code backend. Les modèles de shader sont les spécifications qui déterminent les instructions qu'une carte graphique compatible DirectX peut exécuter, et chaque nouvelle version ajoute des fonctionnalités dont les développeurs de jeux vidéo et d'applications 3D peuvent profiter.
Microsoft a également expliqué pourquoi il souhaitait officialiser le backend : en devenant une cible officielle et en clang-dxc activé par défaut, la société espère recevoir davantage de commentaires de la part des utilisateurs, ce qui favoriserait la conformité, l'optimisation des performances et la définition des futures fonctionnalités. Ce support clang-dxc et HLSL activé par défaut sera fourni avec LLVM 24la version prévue pour l'année prochaine.
Ce que cela peut signifier en dehors de l'écosystème Windows
Bien que l'annonce officielle se concentre sur l'exécution sur les pilotes Windows DirectX 12, qui est la destination finale pour laquelle DXIL a été conçu, LLVM est une infrastructure de compilateur partagée par des projets de nature et de systèmes d'exploitation très différents.
Donner une stabilité officielle à ce backend pourrait réduire les frictions pour tous les outils qui doivent fonctionner avec du code HLSL ou générer du DXIL en dehors du flux Windows traditionnel, bien que ce ne soit pas quelque chose que Microsoft a explicitement soulevé. Les moteurs graphiques, les outils de développement et les projets multiplateformes qui utilisent déjà LLVM pourraient bénéficier de cette stabilité s'ils décidaient un jour de générer du code DXIL.
Il n'y a, pour le moment, aucune annonce spécifique sur le support de Linux ou d'autres plateformes liées à cette promotion : l'accent déclaré par Microsoft est le ray tracing, les nouveaux Shader Models et l'intégration entre Clang et le backend. Si vous travaillez avec des moteurs graphiques multiplateformes, la donnée qui vous intéressera le plus est le calendrier : LLVM 24prévue pour 2027, sera la première version avec clang-dxc et HLSL activés par défaut en standard.
FAQ sur la cible officielle DirectX LLVM Le backend n'est plus un objectif expérimental et devient une partie du noyau stable de LLVM. L'interface clang-dxc est intégrée au projet, bien que son activation par défaut ainsi que la prise en charge de HLSL n'arriveront pas avant LLVM 24.
DXIL est le langage intermédiaire DirectX qui exécute les pilotes graphiques DirectX 12 sous Windows. Le backend LLVM traduit le code intermédiaire LLVM (LLVM IR) dans ce format.
A partir de LLVM 24, version prévue pour 2027.
L'annonce se concentre sur l'exécution sur les pilotes Windows DirectX 12 et sur les prochains travaux de traçage de rayons et de modèles Shader ; il n'y a aucune déclaration spécifique sur Linux ou d'autres plates-formes.
Qu'est-ce qui change avec la promotion du backend DirectX dans LLVM ?
Qu'est-ce que DXIL et à quoi sert ce backend ?
Quand clang-dxc et HLSL activés par défaut seront-ils disponibles ?
Microsoft confirme-t-il des avantages directs pour Linux ?