/proc/cpuinfo gives CPU info per core or per thread?

4

2

My CPU has 2 cores, so I can see two parts in /proc/cpuinfo.

But, I want to know if CPUs that support Hyper-Threading (or similar tech), will /proc/cpuinfo give CPU info per core or per thread (or call it sibling)?

I only know that Windows Task Manager will give CPU usage statistics per thread if the CPU supports HT.

cuihao

Posted 2011-07-18T02:39:33.403

Reputation: 41

Also there's no /etc/cpuinfo. – bdonlan – 2011-07-18T02:44:35.483

Answers

5

The contents of /proc/cpuinfo contains information for all processors down to the virtual level.

Here are some tips on interpreting the contents:

  • Each physical processor will present as at least one processor
  • Each core will present as at least one processor
  • Each hyperthread will present as one processor.

Thus, a dual-socket, dual-core, hyperthreaded system will show as 8 processors. A similar quad-core system will show as 16 processors.

Within the content of /proc/cpuinfo each logical processor has its own ID. If your system is SMP then it will also have a physical id. This is naturally the physical processor number. If you have a multi-core processor then each logical processor will also have a core id. Core ID's are only unique within a single processor. I.e, physical 0 will have core 0 and core 1, and physical 1 will also have core 0 and core 1.

bahamat

Posted 2011-07-18T02:39:33.403

Reputation: 5 130

3

Hyper Threading would appear in /proc/cpuinfo as separate processors. So if your CPU have 2 cores each with hyper-threading enabled then /proc/cpuinfo would show 4 processors.

Hence as you describe your configuration, hyper-threading is either not available, or it is not enabled in the bios.

Soren

Posted 2011-07-18T02:39:33.403

Reputation: 886