{
  "slug": "bplru",
  "term": "Block Padding LRU (BPLRU)",
  "aliases": [
    "BPLRU",
    "Block Padding Least Recently Used"
  ],
  "definition": "Block Padding LRU (BPLRU) is a research SSD write-buffer policy combining block-level recency, victim padding and sequential-write compensation.",
  "note": "Buffered sectors share a block-level LRU position. Eviction can read missing clean pages and write a complete block sequentially, enabling a switch merge in the studied log-block FTL. Fully sequential blocks move toward eviction. Reordering can help even with zero sector-cache hits. [kim]\n\nThe simulation omitted RAM-copy cost; the 1 GB MLC prototype's MP3-copy case was slower than no buffer. Flushes constrain buffering benefits. These are important counterexamples to equating buffer size or cache hits with performance. [kim]\n\nA two-level index locates a resident sector with two index references. Block headers and sector nodes use a shared free-node pool, so metadata consumes buffer memory. [kim]\n\nIn the uniform-random W4 simulation, BPLRU erased fewer blocks yet ran more slowly than FAB, which selected victims by buffered-sector count. Lower erase count did not imply higher throughput. [kim]",
  "status": "research",
  "advantages": [],
  "limitations": [],
  "related": [
    "write-combining",
    "ftl",
    "dram-cache-ssd",
    "lru-replacement",
    "cache-flush",
    "write-amplification"
  ],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "citations": [
    {
      "id": "kim",
      "title": "Hyojun Kim and Seongjun Ahn. BPLRU. FAST 2008, sections 3.1-3.4, 4.2.2, 4.2.4 and 4.3.",
      "url": "https://www.usenix.org/legacy/event/fast08/tech/full_papers/kim/kim.pdf",
      "accessed": "2026-10-31"
    }
  ],
  "updated": "2026-10-31",
  "provenance": [
    "Historical simulation/prototype evidence, not a modern-SSD performance guarantee.",
    "No implementation or benchmark was reproduced by Hesela."
  ]
}
