A Static Binary Instrumentation Threading Model for Fast Memory Trace Collection

Abstract

As hardware vendors push for higher levels of concurrency in multicore and manycore chips, the HPC software running on that hardware must increasingly utilize sophisticated models of parallelization, including interprocess message passing via MPI or SHMEM, intraprocess data sharing via threading models such as pthreads and OpenMP, and combinations of the two approaches. With this increase it is important for tools supporting HPC research activities to include support for all available models of parallelism. In this work we introduce a threading model recently integrated into PEBIL, an open source static binary instrumentation framework for x86/Linux focused on producing efficient instrumented HPC code. Previous versions of PEBIL support instrumenting only programs utilizing message passing models of parallelism; these upgrades allow PEBIL to support shared memory models of parallelism implemented with pthreads and OpenMP. Binary instrumentation proves particularly useful in gaining insights into the the behavior of data-driven HPC programs via their interactions with machines? memory subsystems. As such we compare the principles of PEBIL?s threading model to two other popular x86/Linux binary instrumentation platforms, Pin and DyninstAPI. We then compare PEBIL?s threading model to Pin?s empirically using using a series of experiments centered around memory address trace collection for the OpenMP implementations of the NAS Parallel Benchmarks. Through these experiments we show that the raw overhead of PEBIL?s threading support and address stream generation is higher than Pin?s, but that PEBIL is able to take advantage of sampling techniques to decrease the overhead of address stream collection while sampling with Pin is sensible only for programs with small code footprints due to the overhead involved in repeatedly regenerating instrumentation for each memory operation.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Nov 16, 2012
Accession Number
ADA567542

Entities

People

  • Ananta Tiwari
  • Joshua Peraza
  • Laura Carrington
  • Michael A. Laurenzano
  • Roy Campbell
  • William Ward

Organizations

  • University of California, Berkeley

Tags

Communities of Interest

  • Energy and Power Technologies

DTIC Thesaurus Topics

  • California
  • Computational Processes
  • Computer Science
  • Computers
  • Computing-Related Activities
  • Demographic Cohorts
  • Department Of Defense
  • High Performance Computing
  • Instructions
  • Instrumentation
  • Multithreading
  • Operating Systems
  • Optimization
  • Platforms
  • Sampling
  • Sequences
  • United States

Fields of Study

  • Computer science

Readers

  • Materials Science.
  • Parallel and Distributed Computing.