{
  "slug": "winefs",
  "term": "WineFS",
  "aliases": [
    "hugepage-aware persistent-memory filesystem"
  ],
  "definition": "WineFS is a research persistent-memory filesystem that preserves hugepage-aligned extents through alignment-aware allocation and layout-preserving updates.",
  "note": "The artifact combines an aligned allocator with a hole-filling allocator and per-CPU journaling, building on PMFS. The pinned allocator separates aligned and unaligned free-space trees; a long free run alone does not describe its alignment class. [winefs-artifact] [winefs-allocator]\n\nThe prototype requires byte-addressable persistent memory and a modified Linux 5.1 kernel. Its strict and relaxed modes differ in data consistency, so mode belongs in any comparison. Hugepage use is a layout and address-translation property, not by itself proof of durable application updates. [winefs-artifact] [winefs-paper]\n\nHesela's synthetic alignment example holds free capacity and free-run lengths fixed while changing the number of complete aligned regions from two to zero. This is a geometric counterexample, not a WineFS benchmark. It separates eligible free space from the allocator's eventual placement; region size and address origin must be explicit. [hesela-winefs]",
  "status": "research",
  "advantages": [],
  "limitations": [],
  "related": [
    "filesystem-aging",
    "free-space-fragmentation",
    "dax"
  ],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-11-14",
  "citations": [
    {
      "id": "winefs-paper",
      "title": "Kadekodi et al. WineFS: a hugepage-aware file system for persistent memory that ages gracefully. SOSP 2021, sections 2-5.",
      "url": "https://www.pdl.cmu.edu/PDL-FTP/NVM/wine-sosp21.pdf",
      "accessed": "2026-11-14"
    },
    {
      "id": "winefs-artifact",
      "title": "WineFS authors. Artifact README at revision b4017d0fa5fd2b526e870b0338c311829e5f4464: allocation policy, prerequisites and consistency modes.",
      "url": "https://github.com/utsaslab/WineFS/blob/b4017d0fa5fd2b526e870b0338c311829e5f4464/README.md",
      "accessed": "2026-11-14"
    },
    {
      "id": "winefs-allocator",
      "title": "WineFS authors. Alignment classes and per-CPU free-space trees, balloc.c at revision b4017d0fa5fd2b526e870b0338c311829e5f4464.",
      "url": "https://github.com/utsaslab/WineFS/blob/b4017d0fa5fd2b526e870b0338c311829e5f4464/Linux-5.1/fs/winefs/balloc.c",
      "accessed": "2026-11-14"
    },
    {
      "id": "hesela-winefs",
      "title": "Hesela. WineFS: fragmentation can cost address translations.",
      "url": "https://hesela.com/analyses/filesystem-aging-free-space-fragmentation/#winefs",
      "accessed": "2026-11-14"
    }
  ],
  "provenance": [
    "Primary-paper and pinned-artifact review. No prototype installation, hardware experiment or reproduced performance claim. Historical evaluation and later source revision are distinct evidence.",
    "The pinned artifact README requires Intel Optane persistent memory and bare-metal execution. No compatible hardware was established or experiment attempted.",
    "2026-11-14: added original deterministic geometry illustration; no hardware measurement or WineFS performance replication."
  ]
}
