A dynamic predictive race detector for C/C++ programs

A dynamic predictive race detector for C/C++ programs Concurrent techniques have been widely adopted in software systems, and data race has become a great threat to stability and security of concurrent systems. Previous precise race detection techniques either may miss many races, or are only suitable for some specific programs, such as the programs executed in a virtual machine rather than in actual hardware. To solves these problems, this paper introduces a dynamic predictive race detector, called LayDetect, which detects predictable races in C/C++ programs. LayDetect applies an innovative layering technique, which can detect more races than other detectors, such as FastTrack. We have implemented and evaluated LayDetect with well-known benchmarks and real-world applications. LayDetect has detected 3.7 M races at run-time which is more than that of FastTrack by two orders of magnitude, while the average slowdown (3.0 $$\times $$ × ) and space overhead (34.1 MB) of LayDetect are similar to that of FastTrack. http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png The Journal of Supercomputing Springer Journals

A dynamic predictive race detector for C/C++ programs

Loading next page...
 
/lp/springer_journal/a-dynamic-predictive-race-detector-for-c-c-programs-Dhq794pd6y
Publisher
Springer US
Copyright
Copyright © 2017 by Springer Science+Business Media New York
Subject
Computer Science; Programming Languages, Compilers, Interpreters; Processor Architectures; Computer Science, general
ISSN
0920-8542
eISSN
1573-0484
D.O.I.
10.1007/s11227-017-1996-8
Publisher site
See Article on Publisher Site

Abstract

Concurrent techniques have been widely adopted in software systems, and data race has become a great threat to stability and security of concurrent systems. Previous precise race detection techniques either may miss many races, or are only suitable for some specific programs, such as the programs executed in a virtual machine rather than in actual hardware. To solves these problems, this paper introduces a dynamic predictive race detector, called LayDetect, which detects predictable races in C/C++ programs. LayDetect applies an innovative layering technique, which can detect more races than other detectors, such as FastTrack. We have implemented and evaluated LayDetect with well-known benchmarks and real-world applications. LayDetect has detected 3.7 M races at run-time which is more than that of FastTrack by two orders of magnitude, while the average slowdown (3.0 $$\times $$ × ) and space overhead (34.1 MB) of LayDetect are similar to that of FastTrack.

Journal

The Journal of SupercomputingSpringer Journals

Published: Jun 15, 2017

References

You’re reading a free preview. Subscribe to read the entire article.


DeepDyve is your
personal research library

It’s your single place to instantly
discover and read the research
that matters to you.

Enjoy affordable access to
over 18 million articles from more than
15,000 peer-reviewed journals.

All for just $49/month

Explore the DeepDyve Library

Search

Query the DeepDyve database, plus search all of PubMed and Google Scholar seamlessly

Organize

Save any article or search result from DeepDyve, PubMed, and Google Scholar... all in one place.

Access

Get unlimited, online access to over 18 million full-text articles from more than 15,000 scientific journals.

Your journals are on DeepDyve

Read from thousands of the leading scholarly journals from SpringerNature, Elsevier, Wiley-Blackwell, Oxford University Press and more.

All the latest content is available, no embargo periods.

See the journals in your area

DeepDyve

Freelancer

DeepDyve

Pro

Price

FREE

$49/month
$360/year

Save searches from
Google Scholar,
PubMed

Create lists to
organize your research

Export lists, citations

Read DeepDyve articles

Abstract access only

Unlimited access to over
18 million full-text articles

Print

20 pages / month

PDF Discount

20% off