Shared Write Buffer To Support Data Sharing Among Speculative Multi-Threading Cores

John Ye,Songyuan Li,Tianzhou Chen
DOI: https://doi.org/10.1109/HPCC-CSS-ICESS.2015.287
2015-01-01
Abstract:Speculative Multi-threading (SpMT), a.k.a Thread Level Speculation (TLS), is a most noticeable research direction of automatic extraction of thread level parallelism (TLP), which is growing appealing in the multi-core and many-core era.The SpMT threads are extracted from a single thread, and are tightly coupled with data dependences. Traditional private L1 caches with coherence mechanism will not suit such intense data sharing among SpMT threads.We propose a Shared Write Buffer (SWB) that resides in parallell with the private L1 caches, but with much smaller capacity, and short access delay. When a core writes a datum to L1 cache, it will write the SWB first; and when it reads a datum, it will read from the SWB as well as from the L1. Because the SWB is shared among the cores, it may probably return a datum quicker than the L1 if the latter needs to go through a coherence process to load the datum. This way the SWB improves the performance of SpMT inter-core data sharing, and mitigate the overhead of coherence.
What problem does this paper attempt to address?