이러한 벤치마크가 CPU를 포화시키지 않는 이유는 무엇입니까?

이러한 벤치마크가 CPU를 포화시키지 않는 이유는 무엇입니까?

저는 Powershell과 C에서 두 가지 간단한 벤치마크를 실행했습니다. 16 Gig Win 7 Pro를 갖춘 합리적으로 충분한 기능을 갖춘 i7-2600에서 이것을 실행했습니다.

둘 다 8개 코어 중 2개(실제로는 4개 코어 듀얼 하이퍼 스레드)를 사용하여 실행되었으며 런타임(30~60초) 동안 40%~70% 이상의 사용률 범위로 매우 최고 수준으로 실행되었습니다. 시스템의 나머지 부분은 조용했지만 도메인과 두 개발 환경 모두 열려 있었고 Firefox도 마찬가지였습니다. 실행 전후의 백그라운드 활동은 전체 CPU 가용성의 1.5%~2.5%를 사용했습니다.

이러한 컴퓨팅 바운드 프로세스가 적어도 실행되는 코어에 CPU를 고정하는 것을 제한하는 Windows에서는 무슨 일이 일어나고 있나요?

이것은 제가 진행한 즉석 데모를 위한 것이었고 CPU가 100%로 고정될 것으로 예상했습니다.

파워셸

$a = 1  
"Starting Loop"
get-date
DO
{
 $a++
} While ($a -le 50000000)
get-date

#include <stdio.h>
#include <time.h>

int main (void) {

  long long a;
  time_t mytime;
  mytime = time(NULL);
  printf(ctime(&mytime));
  /* for loop execution */
  for( a = 1; a < 100000000000; a = a + 1 ){

  }
  mytime = time(NULL);
  printf(ctime(&mytime));

 return 0;
}    

관련 정보