Relaxed Memory Model Zoo

Spandex
← Back to the map

Spandex

2018 · Alsop, Sinclair, Adve · hardware

A flexible coherence interface for heterogeneous CPU/GPU systems in the DeNovo lineage that lets devices with diverse coherence properties and memory demands interoperate efficiently by directly translating between request types rather than forcing a single protocol on every device. It assumes a sequential-consistency-for-data-race-free (SC-for-DRF) consistency model, so on the race-free fragment it admits exactly the SC behaviours; the choice of coherence request type affects only performance, never the consistency guarantee. It is reported to reduce execution time by 16% on average (max 29%) and network traffic by 27% (max 58%) versus a hierarchical baseline.

Properties

Property vector author-extrapolated — set only where the model’s definition pins the cell down (unknown cells are omitted); cells citing a specific source are marked.

Other local transformations
Reasoning guarantees
  • yes External DRF
  • yes Coherence
  • yes In-order execution
  • yes No out-of-thin-air
Atomicity guarantees
  • yes Multicopy atomic

Ordering relationships

Equivalent to
  • Sequential Consistency (SC) — Alsop, Sinclair & Adve (Spandex, ISCA 2018) state they assume a sequential-consistency-for-data-race-free (SC-for-DRF) model, so on the race-free fragment it admits exactly the SC outcomes; the flexible coherence request types affect only performance, not the consistency guarantee.

References

  • Johnathan Alsop, Matthew D. Sinclair, Sarita V. Adve. Spandex: A Flexible Interface for Efficient Heterogeneous Coherence. ISCA 2018, 2018. doi:10.1109/ISCA.2018.00031
  • Daniel Poetzl, Daniel Kroening. Formalizing and Checking Thread Refinement for Data-Race-Free Execution Models. arXiv:1510.07171, 2015. arxiv.org/abs/1510.07171