Portability analysis for weak memory models porthos: One tool for all models

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

Researchers

Research units

  • Fortiss GmbH
  • University of Kaiserslautern
  • Technical University of Braunschweig

Abstract

We present porthos, the first tool that discovers porting bugs in performance-critical code. porthos takes as input a program and the memory models of the source architecture for which the program has been developed and the target model to which it is ported. If the code is not portable, porthos finds a bug in the form of an unexpected execution — an execution that is consistent with the target but inconsistent with the source memory model. Technically, porthos implements a bounded model checking method that reduces the portability analysis problem to satisfiability modulo theories (SMT). There are two main problems in the reduction that we present novel and efficient solutions for. First, the formulation of the portability problem contains a quantifier alternation (consistent + inconsistent). We introduce a formula that encodes both in a single existential query. Second, the supported memory models (e.g., Power) contain recursive definitions. We compute the required least fixed point semantics for recursion (a problem that was left open in [48]) efficiently in SMT. Finally we present the first experimental analysis of portability from TSO to Power.

Details

Original languageEnglish
Title of host publicationStatic Analysis - 24th International Symposium, SAS 2017, Proceedings
Publication statusPublished - 2017
MoE publication typeA4 Article in a conference publication
EventInternational Symposium on Static Analysis - New York, United States
Duration: 30 Aug 20171 Sep 2017
Conference number: 24

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume10422 LNCS
ISSN (Print)03029743
ISSN (Electronic)16113349

Conference

ConferenceInternational Symposium on Static Analysis
Abbreviated titleSAS
CountryUnited States
CityNew York
Period30/08/201701/09/2017

ID: 15179534