락으로 인한 CPU 높음
여러 스레드가 동일한 락을 두고 경쟁할 때, CPU는 생산적인 작업 대신 동기화 오버헤드에 소비됩니다.
Evidence to look for
perf가 핫 스택에서 mutex 또는 spinlock 함수를 표시함
스레드를 추가할수록 지연 시간이 악화됨
동시성이 높아질수록 트랜잭션당 CPU 사용량이 증가함
What it usually means
시스템이 유용한 작업을 수행하는 대신 락을 기다리는 데 CPU 사이클을 소비하고 있습니다. 동시성이 높아질수록 상황이 나빠집니다.
What to do next
- 1임계 구역 범위 축소
- 2공유 상태 접근 패턴 줄이기
- 3핫 패스에 락 없는 자료 구조 사용 고려
See what's causing your CPU
cpum.ai turns CPU, process, disk, and memory signals into plain-English explanations with evidence.
Open cpum.ai