Pinpointing Scale-Dependent Integer Overflow Bugs in Large-Scale Parallel Applications

Ignacio Laguna, Martin Schulz

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

4 Scopus citations

Abstract

We present a technique to pinpoint scale-dependent integer overflow bugs, a class of bugs in large-scale parallel applications that is hard and time-consuming to detect manually. Rather than detecting integer overflows when applications are deployed at large scale, as existing techniques do, our method forecasts these overflows without requiring the application to be run at large scale. Our approach statically identifies integer variables that depend on the scale, and then in a refinement phase, uses data points from small-scale runs to forecast whether variables will actually overflow at large-scale runs. We implement our technique in LLVM and evaluate it on several HPC benchmarks and the MPICH MPI implementation. Our tool finds five instances of previously unknown scale-dependent integer overflow bugs, including one in MPICH, and has few false positives, demonstrating its practical utility.

Original languageEnglish
Title of host publicationProceedings of SC 2016
Subtitle of host publicationThe International Conference for High Performance Computing, Networking, Storage and Analysis
PublisherIEEE Computer Society
Pages216-227
Number of pages12
ISBN (Electronic)9781467388153
DOIs
StatePublished - 2 Jul 2016
Externally publishedYes
Event2016 International Conference for High Performance Computing, Networking, Storage and Analysis, SC 2016 - Salt Lake City, United States
Duration: 13 Nov 201618 Nov 2016

Publication series

NameInternational Conference for High Performance Computing, Networking, Storage and Analysis, SC
Volume0
ISSN (Print)2167-4329
ISSN (Electronic)2167-4337

Conference

Conference2016 International Conference for High Performance Computing, Networking, Storage and Analysis, SC 2016
Country/TerritoryUnited States
CitySalt Lake City
Period13/11/1618/11/16

Keywords

  • Computer errors
  • MPI
  • debugging
  • high-performance computing
  • integer overflows
  • static analysis

Fingerprint

Dive into the research topics of 'Pinpointing Scale-Dependent Integer Overflow Bugs in Large-Scale Parallel Applications'. Together they form a unique fingerprint.

Cite this