Publication:
A hybrid static-dynamic classification for dual-consistency cache coherence

relationships.isAuthorOfPublication
relationships.isSecondaryAuthorOf
relationships.isDirectorOf
Authors
Jimborean, Alexandra ; Ros Bardisa, Alberto
item.page.secondaryauthor
item.page.director
Publisher
IEEE
publication.page.editor
DOI
10.1109/TPDS.2016.2528241
item.page.type
info:eu-repo/semantics/article
Description
Ros, A., & Jimborean, A. (2016). A hybrid static-dynamic classification for dual-consistency cache coherence. IEEE Transactions on Parallel and Distributed Systems, 27(11), 3101-3115.
Abstract
Traditional cache coherence protocols manage all memory accesses equally and ensure the strongest memory model, namely, sequential consistency. Recent cache coherence protocols based on self-invalidation advocate for the model sequential consistency for data-race-free, which enables powerful optimizations for race-free code. However, for racy code these cache coherence protocols provide sub-optimal performance compared to traditional protocols. This paper proposes SPEL++, a dual-consistency cache coherence protocol that supports two execution modes: a traditional sequential-consistent protocol and a protocol that provides weak consistency (or sequential consistency for data-race-free). SPEL++ exploits a static-dynamic hybrid classification of memory accesses based on (i) a compile-time identification of extended data-race-free code regions for OpenMP applications and (ii) a runtime classification of accesses based on the operating system’s memory page management. By executing racy code under the sequential-consistent protocol and race-free code under the cache coherence protocol that provides sequential consistency for data-race-free, the end result is an efficient execution of the applications while still providing sequential consistency. Compared to a traditional protocol, we show improvements in performance from 19% to 38% and reductions in energy consumption from 47% to 53%, on average for different benchmark suites, on a 64-core chip multiprocessor
Citation
IEEE Transactions on Parallel and Distributed Systems, 27(11), 3101-3115.
item.page.embargo
Collections