Optimized HPL for AMD GPU and multi-core CPU usage

  • Authors:
  • Matthias Bach;Matthias Kretz;Volker Lindenstruth;David Rohr

  • Affiliations:
  • Frankfurt Institute for Advanced Studies, Frankfurt am Main, Germany 60438;Frankfurt Institute for Advanced Studies, Frankfurt am Main, Germany 60438;Frankfurt Institute for Advanced Studies, Frankfurt am Main, Germany 60438;Frankfurt Institute for Advanced Studies, Frankfurt am Main, Germany 60438

  • Venue:
  • Computer Science - Research and Development
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

The installation of the LOEWE-CSC ( http://csc.uni-frankfurt.de/csc/?51 ) supercomputer at the Goethe University in Frankfurt lead to the development of a Linpack which can fully utilize the installed AMD Cypress GPUs. At its core, a fast DGEMM for combined GPU and CPU usage was created. The DGEMM library is tuned to hide all DMA transfer times and thus maximize the GPU load. A work stealing scheduler was implemented to add the remaining CPU resources to the DGEMM. On the GPU, the DGEMM achieves 497 GFlop/s (90.9% of the theoretical peak). Combined with the 24-core Magny-Cours CPUs, 623 GFlop/s (83.6% of the peak) are achieved.The HPL ( http://www.netlib.org/benchmark/hpl/algorithm.html ) benchmark was modified to perform well with one MPI-process per node. The modifications include multi-threading, vectorization, use of the GPU DGEMM, cache optimizations, and a new Lookahead algorithm. A Linpack performance of 70% theoretical peak is achieved and this performance scales linearly to hundreds of nodes.