top
또는 mpstat
과 같은 명령에서 CPU 사용률을 더하고 특히 collectd
서비스를 추가 할 때마다 정확히 100 % CPU 사용률을 얻을 수 없습니다.Linux CPU 비율이 최대 100 %가되지 않음
예를 아마존 EC2에 테스트 서버에서 top
결과 :
Cpu(s): 13.6%us, 31.6%sy, 0.0%ni, 53.2%id, 0.0%wa, 0.0%hi, 0.0%si, 1.7%st
은 아무리 비율을 추가하는 방법, 꽤 논리적 방법으로하지 확실히 100 %의 CPU를 얻을 수 없다. 대부분 반올림 오류처럼 보입니다. 100.1 % 또는 99.9 %이지만 때로는 110 % 이상으로 끝납니다. 이는 보통
steal
이 상대적으로 높은 경우에 발생합니다.
collectd
에서 한 가지 상황은 ~ 21.44 %가 도용되고 ~ 88 %가 유휴 상태라고보고했습니다.이 두 가지 상황은 이미 100 %가 넘습니다. 나는
ni
(nice)도
us
(사용자)로 계산되므로 추가하지 말아야하지만 아직 해결되지는 않습니다.
아무에게도 최대 100 %를 추가하는 방법이나 collectd
가끔보고하는 예외적 인 경우를 해석하는 방법을 알고 있습니까?
'top'은 CPU 사용량의 관점에서 CPU 사용량을 정확하게보고하지 않습니다. 이는 모든 프로세스를 실행하는 데 단일 CPU가 얼마나 필요한지 나타냅니다. 당신은 100 % 이상을 가질 수 있습니다. 여기에 스레드를 참조하십시오 : http://superuser.com/questions/174660/why-is-the-cpu-usage-reported-by-top-in-linux-over-100 및 http://serverfault.com/questions/ 127059/using-top-four-processes-have-100-cpu-how – birryree
@birryree 귀하는 당연한 것입니다. 두 개의 코어가 있다면'top '의 총 CPU %는 200 %가 될 수 있습니다. VPS에 대해 언급하는 것을 잊어 버렸습니다. 그러나'collectd'에서는 통계가 개별 코어마다 분리됩니다. – Martijn