Cross-core Data Sharing for Energy-efficient GPUs release_7ysjoyuvsfgivltv4eradmzlny

by Hajar Falahati, Mohammad Sadrosadati, Qiumin Xu, Juan Gómez Luna, Banafsheh Saber Latibari, Hyeran Jeon, Shaahin Hessabi, Hamid Sarbazi-Azad, Onur Mutlu, Murali Annavaram, Massoud Pedram

Published in ACM Transactions on Architecture and Code Optimization (TACO) by Association for Computing Machinery (ACM).

2024   Volume 21, Issue 3, p1-32

Abstract

Graphics Processing Units (GPUs) are the accelerator of choice in a variety of application domains, because they can accelerate massively parallel workloads and can be easily programmed using general-purpose programming frameworks such as CUDA and OpenCL. Each Streaming Multiprocessor (SM) contains an L1 data cache (L1D) to exploit the locality in data accesses. L1D misses are costly for GPUs for two reasons. First, L1D misses consume a lot of energy as they need to access the L2 cache (L2) via an on-chip network and the off-chip DRAM in case of L2 misses. Second, L1D misses impose performance overhead if the GPU does not have enough active warps to hide the long memory access latency. We observe that threads running on different SMs share 55% of the data they read from the memory. Unfortunately, as the L1Ds are in the non-coherent memory domain, each SM independently fetches data from the L2 or the off-chip memory into its L1D, even though the data may be currently available in the L1D of another SM. Our goal is to service L1D read misses via other SMs, as much as possible, to cut down costly accesses to the L2 or the off-chip DRAM. To this end, we propose a new data-sharing mechanism, called <jats:italic>Cross-Core Data Sharing (CCDS)</jats:italic> . CCDS employs a predictor to estimate whether the required cache block exists in another SM. If the block is predicted to exist in another SM's L1D, then CCDS fetches the data from the L1D that contain the block. Our experiments on a suite of 26 workloads show that CCDS improves average energy and performance by 1.30× and 1.20×, respectively, compared to the baseline GPU. Compared to the state-of-the-art data-sharing mechanism, CCDS improves average energy and performance by 1.37× and 1.11×, respectively.
In application/xml+jats format

Archived Files and Locations

application/pdf   4.3 MB
file_yio556urozfqhngp44aiog43oy
dl.acm.org (publisher)
web.archive.org (webarchive)
Read Archived PDF
Preserved and Accessible
Type  article-journal
Stage   published
Date   2024-09-14
Language   en ?
Container Metadata
Not in DOAJ
In Keepers Registry
ISSN-L:  1544-3566
Work Entity
access all versions, variants, and formats of this works (eg, pre-prints)
Catalog Record
Revision: 45345acd-bac9-41b4-b872-ebe0f9d917ad
API URL: JSON