Erik Halberg

dblp:131/5107 · DBLP profile ↗
← Back
2ranked-venue papers
0as first author
0since 2021 · last 2014
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 2Software engineering, systems software and programming languages · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Program analysis · 52% Concurrent programming · 48%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Processor architecture and microarchitecture · 56% Storage systems · 44%

Topics — the 6 heaviest of 7, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis
dynamic analysis
0.222014
Non-race concurrency bug detection through order-sensitive critical sections · ISCA 2013
Low-overhead and high coverage run-time race detection through selective meta-data management · HPCA 2014
Concurrent programming › concurrency bug detection
data race detection
0.212014
Low-overhead and high coverage run-time race detection through selective meta-data management · HPCA 2014
Storage systems
metadata management
0.212014
Low-overhead and high coverage run-time race detection through selective meta-data management · HPCA 2014
Processor architecture and microarchitecture › debugging support
race detection hardware
0.212014
Low-overhead and high coverage run-time race detection through selective meta-data management · HPCA 2014
Concurrent programming
concurrency bug detection
0.212013
Non-race concurrency bug detection through order-sensitive critical sections · ISCA 2013
Program analysis › static analysis › bug detection
dynamic bug detection
0.212013
Non-race concurrency bug detection through order-sensitive critical sections · ISCA 2013

Methods — techniques the papers use, named apart from their topics

vector clock algorithm · 0.4selective meta-data storage · 0.4hardware buffer · 0.3cache tag · 0.3
YearPublicationVenuePosition
2014 Low-overhead and high coverage run-time race detection through selective meta-data management
abstract
This paper presents an efficient hardware architecture that enables run-time data race detection with high coverage and minimal performance overhead. Run-time race detectors often rely on the happens-before vector clock algorithm for accuracy, yet suffer from either non-negligible performance overhead or low detection coverage due to a large amount of meta-data. Based on the observation that most of data races happen between close-by accesses, we introduce an optimization to selectively store meta-data only for recently shared memory locations and decouple meta-data storage from regular data storage such as caches. Experiments show that the proposed scheme enables run-time race detection with a minimal impact on performance (4.8% overhead on average) with very high detection coverage (over 99%). Furthermore, this architecture only adds a small amount of on-chip resources for race detection: a 13-KB buffer per core and a 1-bit tag per data cache block.
Ruirui C. Huang, Erik Halberg, Andrew Ferraiuolo, G. Edward Suh
HPCA2
2013 Non-race concurrency bug detection through order-sensitive critical sections
abstract
This paper introduces a new heuristic condition for non-race concurrency bugs, named order-sensitive critical sections, and proposes a run-time bug detection scheme based on the condition. The order-sensitive critical sections are defined as a pair of critical sections that can lead to non-deterministic shared memory state depending on the order in which they execute. In a sense, the order-sensitive critical sections can be seen as extending the intuition in using data races as a potential bug condition to capture non-race bugs. Experiments show that the proposed scheme provides a good coverage for multiple types of non-race bugs, with a small number of false positives. For example, the scheme detected all 9 real-world non-race bugs that were tested as well as over 90% of injected non-race bugs. Additionally, this paper presents an efficient hardware architecture that supports the proposed scheme with minor hardware changes and a small amount of additional state - a 9-KB buffer per core and a 1-bit tag per data cache block. The hardware-based scheme could still detect all 9 real-world bugs that were tested and more than 84% of the injected non-race bugs. Moreover, the hardware supported scheme has a negligible impact on performance, with a 0.23% slowdown on average.
Ruirui C. Huang, Erik Halberg, G. Edward Suh
ISCA2