Locks have been widely used as an effective synchroniza-tion mechanism among processes and threads. However, we observe that a large number of false inter-thread depen-dencies (i.e., unnecessary lock contentions) exist during the program execution on multicore processors, thereby incur-ring significant performance overhead. This paper presents a performance debugging framework, PERFPLAY, to facil-itate a comprehensive and in-depth understanding of the performance impact of unnecessary lock contentions. The core technique of our debugging framework is trace re-play. Specifically, PERFPLAY records the program execution trace, on the basis of which the unnecessary lock contentions can be identified through trace analysis. We then propose a nov...
Introduction Concurrent programs contain both sequential and concurrent errors. While deadlock and ...
Transactional memory (TM) is a new optimistic synchronization technique which has the potential of m...
Programming, understanding, and tuning the performance of large multiprocessor systems is challengin...
Multicore is here to stay. To keep up with the hardware innovation, software developers mustmove fro...
Locks are a frequently used synchronisation mechanism in shared memory concurrent programs. They ar...
International audienceNUMA multicore machines are pervasive and many multithreaded applications are ...
Debugging concurrent programs is known to be difficult due to scheduling non-determinism. The techni...
This thesis quantifies lock contention in multithreaded programs by expanding the theoretical model ...
Clusters of shared-memory symmetric multiprocessors are increasingly used for high performance...
Performance is an important aspect of computer systems since it directly affects user experience. On...
Concurrent programs are ubiquitous, from the high-end servers to personal machines, due to the fact ...
A common debugging strategy involves re-executing a program (on a given input) over and over, each t...
Significant time is spent by companies trying to reproduce and fix bugs. BugNet is a recent architec...
International audienceA plethora of optimized mutex lock algorithms have been designed over the past...
The processor industry is at an inflection point. In the past, performance was the driving force beh...
Introduction Concurrent programs contain both sequential and concurrent errors. While deadlock and ...
Transactional memory (TM) is a new optimistic synchronization technique which has the potential of m...
Programming, understanding, and tuning the performance of large multiprocessor systems is challengin...
Multicore is here to stay. To keep up with the hardware innovation, software developers mustmove fro...
Locks are a frequently used synchronisation mechanism in shared memory concurrent programs. They ar...
International audienceNUMA multicore machines are pervasive and many multithreaded applications are ...
Debugging concurrent programs is known to be difficult due to scheduling non-determinism. The techni...
This thesis quantifies lock contention in multithreaded programs by expanding the theoretical model ...
Clusters of shared-memory symmetric multiprocessors are increasingly used for high performance...
Performance is an important aspect of computer systems since it directly affects user experience. On...
Concurrent programs are ubiquitous, from the high-end servers to personal machines, due to the fact ...
A common debugging strategy involves re-executing a program (on a given input) over and over, each t...
Significant time is spent by companies trying to reproduce and fix bugs. BugNet is a recent architec...
International audienceA plethora of optimized mutex lock algorithms have been designed over the past...
The processor industry is at an inflection point. In the past, performance was the driving force beh...
Introduction Concurrent programs contain both sequential and concurrent errors. While deadlock and ...
Transactional memory (TM) is a new optimistic synchronization technique which has the potential of m...
Programming, understanding, and tuning the performance of large multiprocessor systems is challengin...