PNCS: A Privately Non-Cacheable Strategy for Synchronization in Multi-Core Systems
Not all data sharing patterns can benefit from the write invalidate strategy in multi-core systems. When handling serialized synchronizations, such as lock, barrier etc., long delays and large amount of cache coherence traffic caused by invalidations introduce performance bottlenecks. This paper introduces a privately non-cacheable strategy (PNCS), which favors the maintenance of shared data exhibiting write-once characteristic, like locks, used in synchronizations among threads by not caching the corresponding data block in the private caches but the shared last-level cache. While cooperating with traditional cache coherence protocol MESI, PNCS implements data forwarding of a shared lock to the next sharer waiting in the request queue at the last-level cache (LLC) without incurring another round of LLC lookup. Simulation results reported that PNCS can accelerate acquisition of the variable by the requesters while cutting down the invalidation traffic during a synchronization phase. By creating applications that involve large-scale thread synchronization under parallel programming directives, results demonstrated that PNCS scales within multi-core systems. In the scenario of 64-thread lock synchronization, the average latency of contending requests can be reduced to about 73% of that in “cache lock”, which is a strict write invalidate strategy proposed by Intel.
Authors
- Yu Zhou (ORCID: https://orcid.org/0000-0002-3723-7584)
- An-Chow Lai
- Ting Guo (ORCID: https://orcid.org/0000-0002-0022-5096)
- Jian Shao (ORCID: https://orcid.org/0000-0001-8101-9771)
- Liang Yang (ORCID: https://orcid.org/0000-0003-1064-0370)
Institutions
- China Electronics Technology Group Corporation (CN)
Publication Details
- Published
- 2024-09-27
- DOI
- https://doi.org/10.1109/eiecs63941.2024.10800211
- Primary Topic
- Advanced Memory and Neural Computing
- Type
- article
- Field-Weighted Citation Impact
- 0.00