1

My /proc/cpuinfo shows 16 processors and 8 cores. For example, the last processor looks like the image below.

/proc/cpuinfo example

My coworker explained this /pro/cpuinfo information as there being 16 virtual cpus, and 8 threads being able to run in each virtual cpus. Therefore we can run 16*8 jobs at once.

Is that right? I don't personally buy that. I interpreted as being able to run 16 jobs at once.

1
  • In this case, you are closer to correct than your coworker is. Each "processor" here is a logical processor, not a physical socket. You have 8 physical cores and 16 logical processors (2 logical per physical core, thanks to hyper-threading). Depending on workload, this means you can run at least 8 "jobs" - I/O or memory-heavy workloads can run up to 16 jobs. You'll notice every core id has two processors assigned to it.
    – Bob
    Jun 29, 2017 at 8:56

1 Answer 1

0

You have 16 independent execution units, not 8x16. You have 8 "cores", which due to the magic of Hyperthreading(tm) look like two CPUs each.

Edit: The spec sheet:

http://ark.intel.com/products/92986/Intel-Xeon-Processor-E5-2620-v4-20M-Cache-2_10-GHz

But note that the Intel spec sheet talks about 16 threads...

2
  • The v4 specified in the question has 8 physical cores.
    – Bob
    Jun 29, 2017 at 8:57
  • Yes, found that one since. Fixed :)
    – xenoid
    Jun 29, 2017 at 9:00

Not the answer you're looking for? Browse other questions tagged .