Characterizing and evaluating a key-value store application on heterogeneous CPU-GPU systems

  • Authors:
  • Tayler H. Hetherington;Timothy G. Rogers;Lisa Hsu;Mike O'Connor;Tor M. Aamodt

  • Affiliations:
  • Department of Electrical and Computer Engineering, University of British Columbia, Vancouver, CANADA;Department of Electrical and Computer Engineering, University of British Columbia, Vancouver, CANADA;Advanced Micro Devices, Inc. (AMD), USA;Advanced Micro Devices, Inc. (AMD), USA;Department of Electrical and Computer Engineering, University of British Columbia, Vancouver, CANADA

  • Venue:
  • ISPASS '12 Proceedings of the 2012 IEEE International Symposium on Performance Analysis of Systems & Software
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

The recent use of graphics processing units (GPUs) in several top supercomputers demonstrate their ability to consistently deliver positive results in high-performance computing (HPC). GPU support for significant amounts of parallelism would seem to make them strong candidates for non-HPC applications as well. Server workloads are inherently parallel; however, at first glance they may not seem suitable to run on GPUs due to their irregular control flow and memory access patterns. In this work, we evaluate the performance of a widely used key-value store middleware application, Memcached, on recent integrated and discrete CPU+GPU heterogeneous hardware and characterize the resulting performance. To gain greater insight, we also evaluate Memcached's performance on a GPU simulator. This work explores the challenges in porting Memcached to OpenCL and provides a detailed analysis into Memcached's behavior on a GPU to better explain the performance results observed on physical hardware. On the integrated CPU+GPU systems, we observe up to 7.5X performance increase compared to the CPU when executing the key-value look-up handler on the GPU.