Automatic Microprocessor Performance Bug Detection

11/17/2020
by   Erick Carvajal Barboza, et al.
0

Processor design validation and debug is a difficult and complex task, which consumes the lion's share of the design process. Design bugs that affect processor performance rather than its functionality are especially difficult to catch, particularly in new microarchitectures. This is because, unlike functional bugs, the correct processor performance of new microarchitectures on complex, long-running benchmarks is typically not deterministically known. Thus, when performance benchmarking new microarchitectures, performance teams may assume that the design is correct when the performance of the new microarchitecture exceeds that of the previous generation, despite significant performance regressions existing in the design. In this work, we present a two-stage, machine learning-based methodology that is able to detect the existence of performance bugs in microprocessors. Our results show that our best technique detects 91.5 average IPC impact across the studied applications is greater than 1 bug-free design with zero false positives. When evaluated on memory system bugs, our technique achieves 100 Moreover, the detection is automatic, requiring very little performance engineer time.

READ FULL TEXT

page 1

page 4

research
03/27/2023

Machine Learning for Microprocessor Performance Bug Localization

The validation process for microprocessors is a very complex task that c...
research
10/08/2021

TFix+: Self-configuring Hybrid Timeout Bug Fixing for Cloud Systems

Timeout bugs can cause serious availability and performance issues which...
research
06/21/2022

World of Bugs: A Platform for Automated Bug Detection in 3D Video Games

We present World of Bugs (WOB), an open platform that aims to support Au...
research
05/06/2019

Characterizing and Detecting CUDA Program Bugs

While CUDA has become a major parallel computing platform and programmin...
research
11/01/2019

Twin-Finder: Integrated Reasoning Engine for Pointer-related Code Clone Detection

Detecting code clones is crucial in various software engineering tasks. ...
research
09/05/2022

ProcessorFuzz: Guiding Processor Fuzzing using Control and Status Registers

As the complexity of modern processors has increased over the years, dev...
research
11/04/2019

Improved Recognition of Security Bugs via Dual Hyperparameter Optimization

Background: Security bugs need to be handled by small groups of engineer...

Please sign up or login with your details

Forgot password? Click here to reset