0
System information from Steam:
Processor Information:
Vendor:  GenuineIntel
CPU Family:  0x6
CPU Model:  0x3a
CPU Stepping:  0x9
CPU Type:  0x0
Speed:  2601 Mhz
4 logical processors
2 physical processors
HyperThreading:  Supported
FCMOV:  Supported
SSE2:  Supported
SSE3:  Supported
SSSE3:  Supported
SSE4a:  Unsupported
SSE41:  Supported
SSE42:  Supported

How do I use the CPU Family CPU Model cpu stepping cpu type these four information to know the exactly cpu model is? For example to know this model is Intel Core i5-320M CPU@ 2.60GHz x4

Peter Cordes
  • 328,167
  • 45
  • 605
  • 847
spartawhy117
  • 511
  • 1
  • 5
  • 22
  • Try `cat /proc/cpuinfo` if using some Linux variant (like SteamOS) – Basile Starynkevitch Dec 02 '15 at 13:16
  • A good start is the wikipedia page for the cpuid instruction. Another okay collection of info is found here: http://www.hugi.scene.org/online/coding/hugi%2016%20-%20corawhd4.htm But, the final word is to be found in the IA-32 developers manual from Intel, found here: http://www.intel.com.au/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.pdf – enhzflep Dec 02 '15 at 13:25
  • @enhzflep thanks for your comment.Does anyone maintain an open source table that can find relationship between cpuid and cpu exactly model? – spartawhy117 Dec 03 '15 at 13:37
  • @spartawhy117 - I don't know, but I imagine not. At least, not a comprehensive one that covered all of the available permutations. The fact that so much information can be returned by the cpuid instruction makes testing for a particular feature more-or-less a trivial exercise, but very few would have a need for such a table.I suppose Intel and AMD would each have one, probably the makers of Cpu-Z also, but they're not exactly going to dignify a request for a copy with a response I reckon. Browser sniffing has been abandoned in favour of feature detection and there are more cpus than browsers. – enhzflep Dec 03 '15 at 14:08
  • @enhzflep thanks your answer again. I also think most used software like CPU-Z , ADIA64 and others may have their own data table about this hardware information. – spartawhy117 Dec 03 '15 at 16:48
  • @spartawhy117 - You're welcome. Actually, I've just had an idea. It's probably a long-shot, but I imagine it's quite possible that there's a module in the linux kernel sources that deals with the issue. A number of different tasks are completed differently depending on the available hardware, so at least parts of the kernel have a need to know what they're running on. As for what to search for or how to find it? I'm still on the day's first coffee - sorry! – enhzflep Dec 03 '15 at 22:52

1 Answers1

4

I'd recommend to query the "Processor Brand String" leaves of CPUID. (This is EAX=80000002h,80000003h,80000004h).

Dump all the 4-byte chunks of results into a buffer with a 0 at the end and you have a C string, as shown in the Wikipedia example.

Peter Cordes
  • 328,167
  • 45
  • 605
  • 847
Elalfer
  • 5,312
  • 20
  • 25