arrow
Return

Using Differential Execution Analysis to Identify Thread Interference

delete2019-12-01
delete3
delete
OA
AI
F
François Trahay *
G
Gauthier Voron
A
Amina Guermouche
G
Gaël Thomas
DOI:10.1109/TPDS.2019.2927481delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Understanding the performance of a multi-threaded application is difficult. The threads interfere when they access the same shared resource, which slows down their execution. Unfortunately, current profiling tools report the hardware components or the synchronization primitives that saturate, but they cannot tell if the saturation is the cause of a performance bottleneck. In this paper, we propose a holistic metric able to pinpoint the blocks of code that suffer interference the most, regardless of the interference cause. Our metric uses performance variation as a universal indicator of interference problems. With an evaluation of 27 applications we show that our metric can identify interference problems caused by six different kinds of interference in nine applications. We are able to easily remove seven of the bottlenecks, which leads to a performance improvement of up to nine times.
Keywords:
Real-time systems
Energy storage
Renewable energy sources
Power system stability
Supply and demand
Generators
Production
Performance analysis
multithreading
bottleneck detection
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

IEEE Transactions on Parallel and Distributed Systems cover
IEEE Transactions on Parallel and Distributed Systems
IF:
6
Papers:
5.2K
Citations:
1.1W

Organization

I
imt - institut mines-telecom
Scholars:
7.4K
Papers: 6.4K
Citations: 5