Logo Linux Tux avec inscription DAXFS sur fond bois, symbolisant le nouveau système de fichiers en accès direct

DAXFS : le nouveau système de fichiers Linux qui lit la mémoire sans copie (et ça change tout)

Le développeur du noyau Linux Cong Wang vient de proposer DAXFS sur la liste de diffusion du noyau, un système de fichiers expérimental qui fonctionne directement sur la mémoire physique partagée en utilisant l’infrastructure DAX (Direct Access) du noyau. Exit la pile d’E/S de blocs traditionnelle, exit le cache de pages, exit les copies CPU : DAXFS lit directement depuis la RAM.

« Les lectures de fichiers se résolvent en chargements directs en mémoire, éliminant la duplication du cache de pages et les copies pilotées par le CPU », explique Wang dans son annonce publiée jeudi. Le système de fichiers utilise un format d’image autonome en lecture seule sans allocation à l’exécution ni gestion complexe de périphériques.

Le code source complet (module noyau + outil mkdaxfs) est disponible sur GitHub sous licence GPL-2.0.

Zéro copie, mémoire partagée, GPU et CXL compatibles

Contrairement aux systèmes de fichiers basés sur la mémoire existants comme RAMFS ou TMPFS qui s’appuient sur le cache de pages et allouent de la mémoire par instance, DAXFS mappe directement la mémoire physique dans le système de fichiers. Résultat : des lectures sans aucune copie depuis des régions de mémoire contiguës.

Le détail particulièrement malin : DAXFS prend en charge le montage de mémoire exportée par des GPU, FPGA et dispositifs connectés via CXL grâce à l’API dma-buf. Concrètement, vous pouvez mapper directement la mémoire d’un accélérateur ou d’un pool CXL comme système de fichiers. Idéal pour des charges de travail comme les poids de modèles hébergés sur GPU ou les grandes tables de recherche qui bénéficient d’un accès direct à la mémoire.

Multikernel et conteneurs : partager sans dupliquer

DAXFS a été conçu à l’origine pour les environnements multikernel, où plusieurs instances de noyau Linux partagent une seule région de mémoire physique. Le cas d’usage principal : démarrer des images Docker. Une image DAXFS d’un rootfs de conteneur placée en mémoire partagée fournit à tous les noyaux un système de fichiers en lecture seule commun sans communication inter-noyau ni I/O réseau.

Les applications cibles incluent le partage d’images de base de conteneurs entre instances de noyau indépendantes sans dupliquer les données en RAM, l’accès à des données en lecture seule sur plusieurs hôtes dans des scénarios de mutualisation de mémoire CXL sans transferts réseau, et la combinaison d’une image de base DAXFS partagée avec OverlayFS pour réduire l’utilisation de la mémoire entre conteneurs.

Le timing n’est pas anodin : l’intérêt pour la technologie CXL en matière d’expansion et de mutualisation de mémoire dans les datacenters explose. La hiérarchisation de mémoire basée sur CXL est en passe d’être adoptée plus largement à mesure que le support du noyau Linux arrive à maturité.

Wang, qui a fondé Multikernel dont nous vous avons parlé en 2025, développe une architecture multi-noyaux pour Linux permettant à plusieurs instances de noyau isolées de s’exécuter sur une seule machine. DAXFS représente un effort complémentaire visant à améliorer les schémas d’accès à la mémoire partagée dans ces environnements.

« J’attends avec impatience vos retours sur l’architecture et son intégration potentielle au noyau Linux principal », précise Wang. DAXFS reste expérimental, et toute perspective d’intégration au noyau principal dépend de discussions et d’examens plus approfondis au sein de la communauté de développement.

Cédric

Retour en haut