Repository logo
Log In(current)
  1. Home
  2. Colleges & Schools
  3. Graduate School
  4. Doctoral Dissertations
  5. Providing Insight into the Performance of Distributed Applications Through Low-Level Metrics
Details

Providing Insight into the Performance of Distributed Applications Through Low-Level Metrics

Date Issued
August 1, 2020
Author(s)
Eberius, David
Advisor(s)
Jack Dongarra
Additional Advisor(s)
Gregory Peterson, Michael Berry, Yingkui Li
Abstract

The field of high-performance computing (HPC) has always dealt with the bleeding edge of computational hardware and software to achieve the maximum possible performance for a wide variety of workloads. When dealing with brand new technologies, it can be difficult to understand how these technologies work and why they work the way they do. One of the more prevalent approaches to providing insight into modern hardware and software is to provide tools that allow developers to access low-level metrics about their performance. The modern HPC ecosystem supports a wide array of technologies, but in this work, I will be focusing on two particularly influential technologies: The Message Passing Interface (MPI), and Graphical Processing Units (GPUs).For many years, MPI has been the dominant programming paradigm in HPC. Indeed, over 90% of applications that are a part of the U.S. Exascale Computing Project plan to use MPI in some fashion. The MPI Standard provides programmers with a wide variety of methods to communicate between processes, along with several other capabilities. The high-level MPI Profiling Interface has been the primary method for profiling MPI applications since the inception of the MPI Standard, and more recently the low-level MPI Tool Information Interface was introduced.Accelerators like GPUs have been increasingly adopted as the primary computational workhorse for modern supercomputers. GPUs provide more parallelism than traditional CPUs through a hierarchical grid of lightweight processing cores. NVIDIA provides profiling tools for their GPUs that give access to low-level hardware metrics.In this work, I propose research in applying low-level metrics to both the MPI and GPU paradigms in the form of an implementation of low-level metrics for MPI, and a new method for analyzing GPU load imbalance with a synthetic efficiency metric. I introduce Software-based Performance Counters (SPCs) to expose internal metrics of the Open MPI implementation along with a new interface for exposing these counters to users and tool developers. I also analyze a modified load imbalance formula for GPU-based applications that uses low-level hardware metrics provided through nvprof in a hierarchical approach to take the internal load imbalance of the GPU into account.

Subjects

MPI

GPU

Performance Analysis

Load Balancing

High-Performance Comp...

Performance Metrics

Degree
Doctor of Philosophy
Major
Computer Science
Comments
Portions of this document were previously published in the Proceedings of the 24th European MPI Users' Group Meeting (EuroMPI 2017). Portions of this document are being submitted for publication at a conference workshop.
File(s)
Thumbnail Image
Name

utk.ir.td_13908.pdf

Size

3.69 MB

Format

Adobe PDF

Checksum (MD5)

b5fcf5dbeaa1ee40bdef7c6fb663d747

Built with DSpace-CRIS software - Extension maintained and optimized by 4Science

  • Privacy policy
  • End User Agreement
  • Send Feedback
  • Contact
  • Libraries at University of Tennessee, Knoxville
Repository logo COAR Notify