스레드로 인한 높은 CPU 사용률
일정 수준을 넘으면 스레드를 추가해도 처리량이 증가하지 않습니다. 오히려 스케줄링 오버헤드와 경합이 증가합니다.
Evidence to look for
스레드 수가 사용 가능한 코어 수를 크게 초과함
초당 컨텍스트 스위칭 횟수가 비정상적으로 높음
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