Suppose a system has 4 Intel Xeon processors each having 10 physical cores with HyperThreading enabled which makes a total of 80 cores

Now it is completely confusing when in documentation they start to use these terminologies differently everywhere.

Now the question is that am i right here ?

Microsoft Windows Server 2003, Enterprise x64 Edition supports 8 processors [Link]

And then it is also written

x64-based versions of Windows Server 2003 that are running on a computer that uses a multicore processor or a hyper-threading processor support a maximum number of 64 logical processors.

This means that that Microsoft Windows Server 2003, Enterprise x64 support only 8 logical cores since they used the word processor twice with different context ?

As far as i can remember CPU is equivalent to core, and processors are the hardware that bundle up CPUs and attach them onto one socket.

In short, for the top most description, the system has 8 processors, 40 physical CPUs(cores) in total and 80 Logical CPUs(cores) ?


Actually, no. A dual core processor is one processor with 2 cores, a quad core is one processor with 4 cores.. and so on.Hyperthreading dosen't come onto play yet

Lets take a 8 core processor, and have them on a hypothetical 8 processor SMP system. You have 8 processors with 64 physical cores . Hyperthreading lets you run 128 logical cores on them. Likewise the same setup with quadcores would have 8 processors with 32 physical cores, and with hyperthreading run up to 64 logical cores (which is the maximum in the windows server enterprise would be able to run).

Apparently in this case, a logical core is equivalent to the ability to run a thread.

EDIT: cleaned up the answer. Apparently i misunderstood it - the hyperthreading article on wikipedia was really useful here

  • So in this case, Windows 2003 can support 8 processors with upto a maximum of 64 logical cores. But where does the word CPU fit in ? Jun 20 '12 at 6:47
  • Well, in this case, the CPU is a physical processor with whatever number of cores and threads
    – Journeyman Geek
    Jun 20 '12 at 6:49
  • and each physical core is 2 logical cores with hyperthreading. Missed that bit.
    – Journeyman Geek
    Jun 20 '12 at 7:09
  • 1
    Well, only intel calls multiple threads per core hyperthreading. In addition, none of the other x86 vendors seem to use that technique. In the context of windows this is still true. However different Vendors (oracle for example) may use different definitions of 'processor'.
    – Journeyman Geek
    Jun 20 '12 at 7:17
  • 2
    @Basit Anwer: The term Central Processor Unit (CPU) originated in the days when processors were made from discrete parts. In the 1980's single chip "microprocessor" CPUs emerged, used in small personal computers called "micros" - These had one CPU (or "processor") on one microchip (therefore a "microprocessor"). When chips began to be able to contain multiple processors, some circuitry was shared but the "core" (i.e. the heart of the processor) parts were replicated so that the one chip essentially contains multiple processors (multiple CPUs) - hence the use of the word "core" in this context. Jun 20 '12 at 9:58

Fast Response:

  1. CPU is the Hardware installed in your server
  2. A CPU can have one or more cores
  3. Some Intel CPU may have Hyper Threading witch actually allows one core to execute two threads at the same time (actually makes the OS thing that it can execute two threads at the same time)
  4. From Microsoft prospective any thread that can be executed simultaneously on your hardware is considered a Logical CPU.
  5. So for your hardware you get 4CPU x 10 Cores x 2 Threads =80 Logical CPUs
  • 2
    They actually do run at the same time. The OS thinks they can execute at the same time because they can. Jun 20 '12 at 6:45
  • No actually they don’t. Hyper Threading appears as two "logical" processors to the host operating system, allowing the operating system to schedule two threads or processes simultaneously but that doesn’t mean the threads run simultaneously en.wikipedia.org/wiki/Hyper-threading
    – oMG
    Jun 20 '12 at 7:06
  • 2
    It doesn't mean the threads run simultaneously, but they do in fact run simultaneously. The whole point of HT is to allow a thread to use execution units in a core that aren't being used by the other thread at that particular instant so that more of the physical core's execution units can be kept in use on average. Jun 20 '12 at 7:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.