1

I have two Boxes running Debian 7 with the following processors. Each Box has two of the same processors.

  1. Intel® Xeon® Processor E5-2620 (15M Cache, 2.00 GHz, 7.20 GT/s Intel® QPI)

    # of Cores 6

    # of Threads 12

  2. Intel® Xeon® Processor E5-2609 v2 (10M Cache, 2.50 GHz)

    # of Cores 4

    # of Threads 4

Now when running the following two commands on both servers - cat /proc/cpuinfo | grep processor and lscpu - I get that Box 1 has 0-23 and Box 2 has 0-8.

Is this expected given the above specifications and if so how does Debian arrive at these figures? I have read up on hyperthreading however it doesn't seem to explain the reason for arriving at these. Figures.

I am tempted to say Debian bases this on the #threads
so box

  1. 12 (#thread) X 2(#processors) = 24
  2. 4(#thread) X 2(#processors) = 8

But threads just show the number of concurrent pipes a multi-threading application have access to. I think over the years of development terminology of CPU,processors, sockets and cores have become convoluted.

Cristian Ciupitu
  • 6,396
  • 2
  • 42
  • 56
sqwale
  • 141
  • 1
  • 8
  • I suggest using `lstopo` from the [hwloc](http://www.open-mpi.org/projects/hwloc/) project next time, in order to get a better picture of what's going on. See for example slide 8 from the ["Understanding and managing hardware affinities on hierarchical platforms With Hardware Locality (hwloc)"](http://www.open-mpi.org/projects/hwloc/tutorials/20140522-PATC-hwloc-tutorial.pdf) (PDF) tutorial. – Cristian Ciupitu Nov 23 '14 at 03:29
  • I've closed the question not because it's bad, but because I found it too simple for a _professional_ system administrator as proven by the accepted answer. – Cristian Ciupitu Nov 23 '14 at 10:46
  • Forgot to say that [Super User](http://superuser.com/) or [Unix & Linux SE](http://unix.stackexchange.com/) might have been good places for this. – Cristian Ciupitu Nov 23 '14 at 22:19

1 Answers1

2

This is due to the differences between the processor models.

You are correct in that Threads == number of concurrent threads, and is a composite of the core count, socket count and whether Hyperthreading is available on the particular CPU.

The main difference here is that the E5-2609 is a low-end CPU and doesn't have Hyperthreading available. The E5-2620 is the least expensive CPU in that line that has Hyperthreading.

So the 2609 is really just a 4-core CPU. You have two of them, so you have 8 physical cores.

The 2620 is a 6-core CPU with Hypethreading... so you have 12 "threads" comprised of 6 physical cores and 6 logical cores. With two CPUs, that gives you 12 physical cores and 24 threads.

ewwhite
  • 197,159
  • 92
  • 443
  • 809
  • Thanks a lot it makes sense.You have cleared up several misconceptions i have had on the topic. – sqwale Oct 22 '14 at 14:50