Title :
Thread Migration Prediction for Distributed Shared Caches
Author :
Keun Sup Shim ; Lis, Marcin ; Khan, Omar ; Devadas, Srinivas
Author_Institution :
Massachusetts Inst. of Technol., Cambridge, MA, USA
fDate :
Jan.-June 14 2014
Abstract :
Chip-multiprocessors (CMPs) have become the mainstream parallel architecture in recent years; for scalability reasons, designs with high core counts tend towards tiled CMPs with physically distributed shared caches. This naturally leads to a Non-Uniform Cache Access (NUCA) design, where on-chip access latencies depend on the physical distances between requesting cores and home cores where the data is cached. Improving data locality is thus key to performance, and several studies have addressed this problem using data replication and data migration. In this paper, we consider another mechanism, hardware-level thread migration. This approach, we argue, can better exploit shared data locality for NUCA designs by effectively replacing multiple round-trip remote cache accesses with a smaller number of migrations. High migration costs, however, make it crucial to use thread migrations judiciously; we therefore propose a novel, on-line prediction scheme which decides whether to perform a remote access (as in traditional NUCA designs) or to perform a thread migration at the instruction level. For a set of parallel benchmarks, our thread migration predictor improves the performance by 24% on average over the shared-NUCA design that only uses remote accesses.
Keywords :
cache storage; integrated circuit design; microprocessor chips; multiprocessing systems; parallel architectures; CMPs; chip-multiprocessors; core counts; data locality improvement; data migration; data replication; hardware-level thread migration prediction; home cores; mainstream parallel architecture; nonuniform cache access design; on-chip access latencies; online prediction scheme; physical distributed shared caches; requesting cores; shared-NUCA design; Benchmark testing; Coherence; Computer architecture; Context; Instruction sets; Protocols; Registers; B Hardware; B.3 Memory Structures; B.3.2 Design Styles; B.3.2.g Shared memory; C Computer Systems Organization; C.1 Processor Architectures; C.1.4 Parallel Architectures; Cache Coherence; Data Locality; Distributed Caches; Parallel Architecture;
Journal_Title :
Computer Architecture Letters
DOI :
10.1109/L-CA.2012.30