Créateur | Khronos Group |
---|---|
Développé par | Khronos Group |
Première version | |
Dernière version | 5 |
Environnement | Cross-platform |
Formats lus | SPIR-V file (d) |
Formats écrits | SPIR-V file (d) |
Type | langage intermédiaire |
Licence | Format Ouvert Libre de Droits |
Site web | https://www.khronos.org/spir |
Standard Portable Intermediate Representation ou SPIR est un langage intermédiaire, créé par le Khronos Group, à l'origine pour le calcul parallèle intensif et faciliter l'interprétation d'OpenCL, et dans son API Vulkan, avec SPIR-V pour la transmission des shaders aux pilotes des processeurs graphiques. Initialement basée sur LLVM, la version SPIR-V utilise sa propre représentation.
Étant donné la proximité de SPIR-V avec SPIR (et donc la représentation intermédiaire de LLVM), ce dernier pourra être utilisé pour son interprétation[1].
SPIR est basé sur LLVM, il est utilisé notamment pour OpenCL. Des spécifications provisoires de SPIR 1.0 sont annoncées en 2012[2]. La version 1.2 est annoncée au SIGGRAPH 2013[3] et la version 2.0 est annoncée à la même conférence en 2014[4].
SPIR-V présenté en 2015 n'est plus compatible avec la représentation d'LLVM, une évolution a donc été nécessaire pour la première version expérimentale de SPIR-V avec LLVM en [5].