Abstract
Thread synchronization using shared memory hardware cache coherence paradigm is prevalent in multicore processors. However, as the number of cores increase on a chip, cache line ping-pong prevents performance scaling for algorithms that deploy fine-grain synchronization. This article proposes an in-hardware moving computation to data model (MC) that pins shared data at dedicated cores. The critical code sections are serialized and executed at these cores in a spatial setting to enable data locality optimizations. In-hardware messages enable non-blocking and blocking communication between cores, without involving the cache coherence protocol. The in-hardware MC model is implemented on Tilera Tile-Gx72 multicore platform to evaluate 8- to 64-core count scale. A simulated RISC-V multicore environment is built to further evaluate the performance scaling advantages of the MC model at 1,024-cores scale. The evaluation using graph and machine-learning benchmarks illustrates that atomic instructions based synchronization scales up to 512 cores, and the MC model at the same core count outperforms by 27% in completion time and 39% in dynamic energy consumption.
Author supplied keywords
Cite
CITATION STYLE
Dogan, H., Ahmad, M., Kahne, B., & Khan, O. (2019). Accelerating Synchronization Using Moving Compute to Data Model at 1,000-core Multicore Scale. ACM Transactions on Architecture and Code Optimization, 16(1). https://doi.org/10.1145/3300208
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.