내 컴퓨터는 어떻게 300 % PC 처리 능력을 사용할 수 있습니까?


65

나는 스크립트를 가지고 놀고 있는데 잘 지내고 있습니다 (지금도 여전히 실행 중이지만 컴퓨터는 아직 죽지 않았습니다). (컴퓨터 충돌을 방지하기 위해) 17 회 반복 스크립트를 실행하고 있습니다.

활동 모니터를 보면 각 Python 프로세스에는 고유 한 pid가 있으며 각각 내 처리 능력의 약 17-20 %를 차지하는 것으로 보입니다 ... 어떻게 가능합니까? 내 컴퓨터가 마법 같은 힘으로 200 % 발전하고 열역학 법칙을 어딘가에서 깨뜨 렸습니까?

여기에 이미지 설명을 입력하십시오


28
CPU의 300 % = 3 개의 CPU
user253751

7
"전력 수준은 400 %입니다"
Nitish

Warp 엔진이 제어 할 수없는 모든 Star Trek 에피소드를 상기시킵니다.
Daniel

그것은 심각한 오버 클럭킹입니다!
앤드류 그림

답변:


101

OS X에서는 다른 * nix와 마찬가지로 가상 프로세서 코어 당 CPU로드가 측정됩니다. 여러 개가있는 경우-전체 하중에서 200 % 이상을 결합 할 수 있습니다.

이것은 Windows 및 다른 CPU와는 달리 전체 CPU (또는 CPU-CPU가 여러 물리적 프로세서를 가질 때 어떻게 작동하는지 기억하지 않습니다)마다 CPU로드가 계산됩니다.


21
이 답변은 일부 플랫폼에서만 정확합니다! 예를 들어, Windows는 단일 코어의 백분율이 아니라 총 CPU로드를보고합니다.
fabspro

2
소수 부하 표현 (예. 0.5 또는 2.4)에 의해보고 된 예를 들어 가동 시간 명령이라고 지적 그것의 가치가 없는 각각의 코어 사용 비율의 합이 아니라 즉시 모든 요청을 처리해야 할 것입니다 얼마나 많은 코어의 추정. 이 앱이 얼마나 많은 값을 정규화하는지 잘 모르겠습니다.
Sebb

3
@Sebb로드 평균 (LA)은 실행을 기다리는 평균 프로세스 수입니다. IO를 기다리고있을 수 있습니다. CPU는 필요하지 않습니다.
Vasfed

3
linux man의 @ Random832-man7.org/linux/man-pages/man1/uptime.1.html : "시스템로드 평균은 실행 가능 또는 인터럽트 불가능 상태 에있는 평균 프로세스 수입니다. 실행 가능 상태의 프로세스 중단 할 수없는 상태의 프로세스가 디스크 대기와 같은 일부 I / O 액세스를 기다리고 있습니다. "
Vasfed

4
@slebetman로드 평균은 CPU 시간에 대한 것이 아니라, 큐 길이는, 예를 들어 볼 serverfault.com/a/524818
Vasfed

81

OS X 및 Linux 및 기타 UNIX 운영 체제 (또는 이러한 시스템에서 가장 일반적인 도구)는 Windows와 다르게 CPU 사용량을 표시합니다. Windows에서 100 %는 "사용 된 모든 CPU 리소스 "를 의미 합니다. Linux에서 이는 하나의 "스레드"(하이퍼 스레딩에서와 같이)가 완전히 사용 중임을 의미합니다. 따라서 (Number of Threads per Core) * (Number of Cores per CPU) * (Number of CPUs)총계 까지 도달 할 수 있습니다 .

완전히 관련된 것은 아니지만 또 다른 흥미로운 사실 ​​: Windows 10은 CPU의 현재 조절 상태를 사용하여 CPU 사용량을 추가로 표준화합니다. 따라서 1GHz로 조절 된 2GHz CPU는 최대 50 % 만 사용 중입니다.


7
흥미로운 사실. :)
Hennes

7
그리고 터보 부스트와 함께 Windows는 CPU가 100 % 이상을 실행
한다고

나는 그것이 일반적으로 * nix 방식이 아니라 BSD 방식이라고 생각합니다. 내 Mac과 FreeBSD 상자에서도 같은 내용이 표시됩니다.
JDługosz

1
@ JDługosz Linux의 경우는 물론 최소한 일부 도구의 경우에도 마찬가지입니다. 나는 확신 top예를 들어 동작합니다 이런 식으로.
reirab

12

여러 답변에서 이미 지적했듯이 Mac은 각 프로세스의 CPU 백분율을 '한 코어의 백분율'로 표시하므로 코어 수로 나누어야합니다 (HT를 '더블'로 포함)

얼마나 많은 가상 코어가 있는지 확실하지 않은 경우 Cmd ⌘ 3 간단히 줄무늬를 계산할 수있는 활동 모니터의 CPU 기록 창을 표시합니다.

여기에 이미지 설명을 입력하십시오

이미지를 잘라낸 바로 아래에는 System :, User : & Idle의 실제 총 사용량을 빠르게 결정하는 데 필요한 정보가 있습니다.

여기에 이미지 설명을 입력하십시오


4
그래도 진짜? 24 코어 내가 겨우이 공유를위한 참으로 감사 4 : TIL있어이 !: puu.sh/nNrHU/f2abb55dc7.png을
Frankenmint

5
아아 ... 그래-맥 프로 5,1- "치즈 강판"의 마지막입니다. 듀얼 6 코어 제온 [+ HT];)
Tetsujin

6

활동 모니터는 실제로 각 앱 / 프로세스가 사용하는 처리 능력을 측정하지 않고 단지 알고리즘을 사용하여 추정합니다. 정확하지 않을 수 있습니다 ...

또한 @Vasfed가 지적했듯이 CPU 소비는 프로세서 코어 당 측정됩니다. 다중 코어는 100 % 이상의 사용량을 의미 할 수 있습니다 ...

괴짜는 때때로이 현상을 우연히 발견하고 수퍼 유저가 자신의 도움을받을 때까지 화끈 거림을 느낀다 ...; D


@underscore_d 그래 ...하지만 대답했을 때 다른 대답은 하나뿐이었습니다. 다른 답변은
분명히 나왔습니다

충분히 공평하게, 나는 "일"수준을 지나서 시간을 점검해야했다 ... 그것은 나쁘지 않다 : p
underscore_d 7
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.