iovisor / iovisor/bcc

Contention monitor / wait graph detector

Open
#378 2 comments 1 reaction 0 assignees View on GitHub
Dominant language
C
Stars
22.7k
Forks
4.1k
Avg merge
10d 4h
Merged PRs (30d)
3

Description

I'd like to propose an idea for a contention monitor / wait graph detector based on eBPF and bcc. I don't have the design all flushed out yet, and would really appreciate feedback. What I would like to do in general is monitor various synchronization mechanisms (user-space and kernel-space) and provide useful diagnostic data.

From the performance perspective, we could capture contention information. Whenever a thread blocks on a lock, we could grab a stack trace and record the number of times and duration spent waiting for the particular lock at the particular call stack.

From a debugging perspective, we could capture lock acquire/release events, and keep track of which lock is owned by which thread (and also which thread is waiting for which lock). Armed with this information, we could construct a wait chain: thread 123 waits for mutex abc owned by thread 456 and so on.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.