CPUInfo is an open source processor-querying library for IA32 architectures.
Using the CPUID and RDTSC instructions, it queries information such as the
processor name, vendor, clock speed, feature bits, supported instruction set
extensions, and cache sizes.
It runs on Microsoft Windows (should work as far back as Win95 and NT4), recent Linux kernels, and Mac OS X. Of course it requires an IA32 processor. ;) See below for example usage.
CPUInfo is available for use under the terms of the MIT license. See
COPYRIGHT.txt for details.
int processorCount = getCPUCount(); CPUInfo* info = new CPUInfo[processorCount]; int actualCount = getMultipleCPUInfo(info); // for i=0 to actualCount-1, check values in info[i] delete info;