{
  "slug": "farm",
  "term": "FaRM",
  "aliases": [
    "Fast Remote Memory"
  ],
  "definition": "FaRM is a research distributed-memory platform that uses RDMA and software transaction protocols to access replicated objects across a cluster.",
  "note": "The NSDI 2014 design checks object-header and cache-line versions after a remote read, retrying inconsistent copies. Its shared address space is an object API, not an NVMe namespace. [farm14]\n\nThe SOSP 2015 protocol uses replicated non-volatile logs; its durability design combines battery-backed DRAM with SSD save on power failure. Network completion is interpreted within that protocol. [farm15]\n\nFaSST offers a contrasting two-sided datagram RPC design; its paper did not implement machine-failure recovery. [fasst16]",
  "status": "research",
  "advantages": [],
  "limitations": [
    {
      "text": "RDMA alone supplies neither FaRM's transaction guarantees nor its power-failure protection.",
      "citationIds": [
        "farm14",
        "farm15"
      ]
    }
  ],
  "related": [
    "rdma-storage",
    "infiniband",
    "strict-serializability"
  ],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-11-13",
  "citations": [
    {
      "id": "farm14",
      "label": "FaRM, NSDI 2014",
      "title": "Dragojevic, Narayanan, Hodson and Castro. FaRM: Fast Remote Memory. NSDI 2014, sections 3.1-3.5.",
      "url": "https://www.usenix.org/system/files/conference/nsdi14/nsdi14-paper-dragojevic.pdf",
      "accessed": "2026-11-13"
    },
    {
      "id": "farm15",
      "label": "FaRM, SOSP 2015",
      "title": "Dragojevic et al. No compromises: distributed transactions with consistency, availability, and performance. SOSP 2015, sections 2-4.",
      "url": "https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/SOSP15-paper227-alternate-final-version.pdf",
      "accessed": "2026-11-13"
    },
    {
      "id": "fasst16",
      "label": "FaSST, OSDI 2016",
      "title": "Kalia, Kaminsky and Andersen. FaSST: Fast, Scalable and Simple Distributed Transactions with Two-Sided (RDMA) Datagram RPCs. OSDI 2016.",
      "url": "https://files.usenix.org/s3fs-public/cdn/osdi16-kalia.pdf",
      "accessed": "2026-11-13"
    }
  ],
  "provenance": [
    "Historical source review across the NSDI 2014 and SOSP 2015 designs, with an OSDI 2016 contrast; no prototype execution or performance reproduction."
  ]
}
