Les applications peuvent par exemple utiliser :
vkSetLatencySleepModeNVvkLatencySleepNVCes fonctions permettent d’attendre le moment optimal avant de lancer le travail CPU pour une nouvelle frame, afin de limiter la latence totale.
Une extension plus ancienne, VK_NV_low_latency, servait notamment à vérifier la prise en charge de Nvidia Reflex dans Vulkan.
L’extension VK_AMD_anti_lag applique un principe similaire côté AMD : empêcher le CPU de prendre trop d’avance sur le GPU.
Lorsque trop d’images sont mises en file d’attente, les actions du joueur mettent plus longtemps à apparaître à l’écran. Anti‑Lag réduit ce phénomène en ajustant automatiquement le rythme du CPU.
Cette extension a été intégrée à l’écosystème Vulkan dans des mises à jour récentes de la spécification, permettant d’étendre ces techniques au‑delà des API DirectX.
Plutôt que d’attendre que les pilotes implémentent ces extensions, la couche Vulkan peut les simuler et gérer elle‑même la logique associée.
Le fonctionnement général est le suivant :
VK_NV_low_latency2 ou VK_AMD_anti_lag.Comme ces optimisations reposent surtout sur le timing CPU et la gestion de la swapchain, elles ne nécessitent pas forcément de fonctionnalités matérielles spécifiques à un constructeur.
La couche peut s’intégrer dans deux grands scénarios du jeu sur Linux.
Pour un jeu Linux utilisant directement Vulkan, low_latency_layer peut être chargé comme n’importe quelle autre couche Vulkan. Une fois actif, il expose les extensions de faible latence et gère le pacing en arrière‑plan.
La majorité des jeux Windows sur Linux passent par Proton et ses couches de traduction :
Ces outils traduisent les appels DirectX vers Vulkan. Par exemple, DXVK 2.6 a étendu la prise en charge de Nvidia Reflex pour certains jeux DirectX 11, lorsque l’extension VK_NV_low_latency2 est disponible.
Si une couche Vulkan fournit cette extension sous‑jacente, le jeu peut donc bénéficier d’un mécanisme de réduction de latence même en passant par Proton.
Linux dispose déjà de quelques initiatives dans ce domaine.
Le projet Mesa inclut une couche Vulkan open source implémentant VK_AMD_anti_lag, afin d’apporter un système de pacing pour certaines configurations GPU.
Mais cette couche cible principalement l’extension AMD. Une implémentation capable d’exposer les interfaces Nvidia et AMD pourrait potentiellement fonctionner avec davantage de moteurs de jeu.
Le projet LatencyFleX avait déjà tenté une approche similaire : permettre aux jeux compatibles Nvidia Reflex de fonctionner sur d’autres GPU via des couches de compatibilité.
low_latency_layer poursuit la même idée, mais en s’appuyant directement sur les extensions Vulkan modernes plutôt que sur un middleware spécifique.
Les benchmarks publics spécifiques à low_latency_layer restent encore rares, ce qui rend les comparaisons définitives difficiles.
Cependant, on peut s’appuyer sur le comportement connu de ces technologies :
Les extensions comme VK_NV_low_latency2 sont d’ailleurs conçues pour ce type de scénarios GPU‑bound.
Il faut aussi garder à l’esprit que certaines optimisations restent propriétaires. Par exemple, Nvidia Reflex 2 introduit la technologie “Frame Warp”, qui peut encore réduire la latence en mettant à jour une image juste avant son affichage.
Une couche Vulkan générique ne peut pas reproduire ce type d’intégration matérielle et pilote.
Historiquement, les technologies de réduction de latence ont été fortement liées :
Une couche Vulkan ouverte change la dynamique.
Elle pourrait permettre :
Si cette approche continue de mûrir, elle pourrait rapprocher les performances et la réactivité du gaming Linux de celles observées sur Windows — un point particulièrement important dans les jeux compétitifs où la latence compte autant que le nombre d’images par seconde.
Pour l’instant, low_latency_layer reste un projet jeune. Mais il illustre une tendance claire : déplacer certaines optimisations autrefois enfermées dans des pilotes propriétaires vers des solutions ouvertes et portables pour tout l’écosystème Linux.