DAXFS propus ca un sistem de fișiere cu memorie partajată fără copiere pentru Linux


O nouă propunere Linux introduce DAXFS, un sistem de fișiere doar pentru citire care ocolește memoria cache a paginilor pentru acces direct la memoria partajată.

Cong Wang, un dezvoltator de kernel la Multikernel, a introdus un nou sistem de fișiere Linux numit DAXFS pe listele de corespondență ale kernelului Linux. După cum sugerează și numele, DAXFS este construit pe infrastructura Direct Access (DAX) a kernelului Linux, permițând sistemelor de fișiere să acceseze memoria fizică partajată direct, fără a trece prin stiva tradițională de I/O pe blocuri.

Conform anunțului, spre deosebire de binecunoscutele RAMFS sau TMPFS, care se bazează pe cache-ul de pagini și alocă memoria pe baza fiecărei instanțe, DAXFS mapează direct regiuni contigue de memorie fizică în sistemul de fișiere. Citirile de fișiere se rezolvă prin încărcări directe în memorie, reducând astfel consumul de memorie în medii în care datele identice doar în citire ar fi altfel replicate în RAM.

Noul sistem de fișiere este proiectat pentru a suporta memoria exportată de GPU-uri, FPGA-uri sau dispozitive atașate prin CXL prin intermediul API-ului dma-buf, permițând accesul în citire la datele stocate direct în memoria suportată de dispozitiv.

Intenționat minimal în scop, DAXFS folosește un format de imagine independent, doar în citire, și evită alocarea la rulare, gestionarea complexă a metadatelor și logica de manipulare a dispozitivelor, ceea ce îl face potrivit pentru anumite cazuri de utilizare.

Acestea includ partajarea unui container comun sau a unei imagini de bază Docker între instanțe independente de kernel, utilizarea memoriei partajate în locul transferurilor prin rețea în scenarii de pooling de memorie CXL, reducerea utilizării RAM prin combinarea unei imagini de bază DAXFS partajate cu OverlayFS pentru containere și oferirea accesului fără copie la datele statice stocate în memoria acceleratorului.

Codul este disponibil public pe GitHub, deoarece autorul a subliniat că DAXFS este o propunere experimentală. Orice cale către includerea în upstream ar depinde de discuții și revizuiri suplimentare în cadrul comunității de dezvoltare a nucleului Linux.

Pentru mai multe informații, consultați mesajul de pe lista de corespondență a nucleului.