하나의 프로세서로 스레딩하는 것이 나를 향상시키는 지 궁금합니다. UI가 실행 중이고 원활하게 실행해야하는 동안 데이터 집약적 인 계산 (pcm 데이터의 fft)을 수행하는 응용 프로그램을 작성합니다. 나는 AsyncTask를보고되었지만 생각했다 : 나는 단일 코어 프로세서 (600 MHz의 ARM 11 프로세서) 내 옵티 머스 하나에서 실행이있는 경우 ,
과 일치하지하지만 난 CPUZ 내 결과를 확인할 때, 그것은 2Cores 4Thraeds을 반환 이 코드로 __cpuid 시도 OS 부호 REGS [4]; __cpuid (regs, 4); 코어 = ((regs [0] >> 26) & 0x3f) +1; cout을 < < "CPU 코어"< < 코어 < < ENDL; 8 코어를 반환합니다. 내 코드가 잘못되었습
가능한 중복 : Programatically detect number of physical processors/cores or if hyper-threading is active on Windows, Mac and Linux 내가 어떤 크로스 플랫폼이 궁금 (표준 또는 부스트 기반 또는 C) 방법 크로스 플랫폼 방식으로 코어의 totall 수를 얻을?
BootCamp를 실행하는 내 MacBookPro에는 Intel 코어 i7-640M 프로세서가 2 개 있습니다. 다른 모든 i7 칩과 마찬가지로 각 코어는 하이퍼 스레딩되어 있으므로 최대 4 개의 스레드를 가질 수 있습니다. Visual Studio 2010 c/C++를 사용하여 다음을 확인하십시오. coresAvailable = omp_get_num_p