Search code examples
c++processors

Count Processors using C++ under Windows


Using unmanaged C++ on a Windows platform, is there a simple way to detect the number of processor cores my host machine has?


Solution

  • You can use GetLogicalProcessorInformation to get the info you need.

    ETA:

    As mentioned in the question a commenter linked to, another (easier) way to do it would be via GetSystemInfo:

    SYSTEM_INFO sysinfo;
    GetSystemInfo( &sysinfo );
    
    numCPU = sysinfo.dwNumberOfProcessors;
    

    Seems like GetLogicalProcessorInformation would give you more detailed info, but if all you need is the number of processors, GetSystemInfo would probably work just fine.