English

AMOEBA: A Coarse Grained Reconfigurable Architecture for Dynamic GPU Scaling

Hardware Architecture 2019-11-11 v1

Abstract

Different GPU applications exhibit varying scalability patterns with network-on-chip (NoC), coalescing, memory and control divergence, and L1 cache behavior. A GPU consists of several StreamingMulti-processors (SMs) that collectively determine how shared resources are partitioned and accessed. Recent years have seen divergent paths in SM scaling towards scale-up (fewer, larger SMs) vs. scale-out (more, smaller SMs). However, neither scaling up nor scaling out can meet the scalability requirement of all applications running on a given GPU system, which inevitably results in performance degradation and resource under-utilization for some applications. In this work, we investigate major design parameters that influence GPU scaling. We then propose AMOEBA, a solution to GPU scaling through reconfigurable SM cores. AMOEBA monitors and predicts application scalability at run-time and adjusts the SM configuration to meet program requirements. AMOEBA also enables dynamic creation of heterogeneous SMs through independent fusing or splitting. AMOEBA is a microarchitecture-based solution and requires no additional programming effort or custom compiler support. Our experimental evaluations with application programs from various benchmark suites indicate that AMOEBA is able to achieve a maximum performance gain of 4.3x, and generates an average performance improvement of 47% when considering all benchmarks tested.

Keywords

Cite

@article{arxiv.1911.03364,
  title  = {AMOEBA: A Coarse Grained Reconfigurable Architecture for Dynamic GPU Scaling},
  author = {Xianwei Cheng and Hui Zhao and Mahmut Kandemir and Beilei Jiang and Gayatri Mehta},
  journal= {arXiv preprint arXiv:1911.03364},
  year   = {2019}
}
R2 v1 2026-06-23T12:09:32.497Z