프로세스의 CPU 사용량을 모니터링하기 위해 pidstat를 사용하고 있는데 100%로 표시됩니다. 동일한 프로세스의 경우 htop 또는 top은 동일한 프로세스의 200%를 표시합니다. 시스템에는 16개의 코어가 있으며, 제가 모니터링하는 프로세스는 2개의 코어만 사용하도록 설정되어 있습니다. 따라서 htop 또는 top에 의해 보고된 %CPU가 정확합니다.
또한 하나의 코어만 사용하도록 프로세스를 변경했습니다. 이 경우 pidstat는 100% CPU를 표시하고 htop은 100%를 표시합니다.
pidstat는 %CPU를 다르게 측정합니까?
답변1
htop은 (사용 중인 코어 #1의 %) + (사용 중인 코어 #2의 %) + ...를 기준으로 출력 수를 표시합니다.
각 코어의 코어 사용량을 합산하는 대신 pidstat는 애플리케이션에서 사용하는 코어 사용량과 사용 중인 코어의 평균으로 계산됩니다. 따라서 pidstat는 100%보다 큰 값을 표시하지 않습니다.