43,153 research outputs found
Providing Insight into the Performance of Distributed Applications Through Low-Level Metrics
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
Understand Your Chains: Towards Performance Profile-based Network Service Management
Allocating resources to virtualized network functions and services to meet
service level agreements is a challenging task for NFV management and
orchestration systems. This becomes even more challenging when agile
development methodologies, like DevOps, are applied. In such scenarios,
management and orchestration systems are continuously facing new versions of
functions and services which makes it hard to decide how much resources have to
be allocated to them to provide the expected service performance. One solution
for this problem is to support resource allocation decisions with performance
behavior information obtained by profiling techniques applied to such network
functions and services.
In this position paper, we analyze and discuss the components needed to
generate such performance behavior information within the NFV DevOps workflow.
We also outline research questions that identify open issues and missing pieces
for a fully integrated NFV profiling solution. Further, we introduce a novel
profiling mechanism that is able to profile virtualized network functions and
entire network service chains under different resource constraints before they
are deployed on production infrastructure.Comment: Submitted to and accepted by the European Workshop on Software
Defined Networks (EWSDN) 201
TANGO: Transparent heterogeneous hardware Architecture deployment for eNergy Gain in Operation
The paper is concerned with the issue of how software systems actually use
Heterogeneous Parallel Architectures (HPAs), with the goal of optimizing power
consumption on these resources. It argues the need for novel methods and tools
to support software developers aiming to optimise power consumption resulting
from designing, developing, deploying and running software on HPAs, while
maintaining other quality aspects of software to adequate and agreed levels. To
do so, a reference architecture to support energy efficiency at application
construction, deployment, and operation is discussed, as well as its
implementation and evaluation plans.Comment: Part of the Program Transformation for Programmability in
Heterogeneous Architectures (PROHA) workshop, Barcelona, Spain, 12th March
2016, 7 pages, LaTeX, 3 PNG figure
- …