12

My textbook says the following:

Not only have microprocessors become the fastest general purpose processors available, they are now multiprocessors; each chip (called a socket) contains multiple processors (called cores), each with multiple levels of large memory caches, and multiple logical processors sharing the execution units of each core. As of 2010, it is not unusual for even a laptop to have 2 or 4 cores, each with 2 hardware threads, for a total of 4 or 8 logical processors.

Do personal computers only contain one chip, which itself contains multiple processors? Or do they have many such chips?

  • 19
    Your textbook's use of the word "socket" seems inaccurate. A chip plugs into a socket. A socket is empty and useless without it. Most circuit boards have numerous other chips, in supporting roles to the CPU, which have no sockets but are soldered directly to the board. – electromaggot Nov 10 '16 at 14:02
  • 3
    @electromaggot: Also, there are computers where there are multiple chips on a daughterboard which plugs into a single socket (for example, as far as I know, the IBM POWER8 Murano ships as two separate chips on a single board which plug into a single socket, IBM used to call this a MCM (Multi Chip Module)). And on small-form laptops and netbooks, the CPU may sit directly on the board with no socket at all. The terminology in that article is just way off. – Jörg W Mittag Nov 10 '16 at 14:13
  • 2
    Actually, this use of word "socket" is quite common to underline difference between a physical cpu object and a core on a particular cpu. To the operating software they are almost indistinguishable, that's why "1-2 CPU" license on older Windows created issues on quadcore CPUs. – Agent_L Nov 10 '16 at 14:51
  • 1
    @hobbs I agree it's incorrect, but all I meant is I've noticed that it's used this way : ) – Agent_L Nov 10 '16 at 16:28
  • 3
    You will often see socket used this way in licensing though - software might say it is "licensed per core" or "licensed per socket". – Grant Nov 11 '16 at 3:37
16

Most new desktop computers will contain a single main CPU chip that has multiple cores. Each core acts much like an independent CPU.

Sometimes, each core has a feature called simultaneous multithreading (SMT) which makes each core appear to the operating system as two or more virtual cores. Intel call this HyperThreading.

So one CPU chip may contain four cores, each of which has two virtual cores resulting in the operating system seeing eight CPUs.

The main conceptual difference between a CPU, core and virtual-core is in the amount of shared resources within the chip.

In the past it was common for high powered servers to have several separate CPU chips (and this is probably still true), sometimes on separate CPU boards that plug into a common backplane.

Desktop computers will also have one or more GPUs, primarily for graphics. These are much like CPUs and can be used for specialised general computation such as bitcoin mining.

Desktop computers will also contain numerous other chips that are not CPUs. These perform specialised functions such as providing USB interfaces and so on. The term chip is used for any integrated circuit (IC) in a package that can be soldered to a printed circuit board (PCB).


Here's a random example of a PC motherboard of the sort you might find in a desktop PC:

enter image description here

  • "AMD Socket 942" - where a single main CPU chip is installed.
  • "AMD SB950 Southbridge" chip - helper chips for the CPU
  • "AMD 990FX Chipset" - Graphics Processing Unit (GPU)
  • "Intel Ethernet GameFirst II" - chip for network interface.

etc.

Each CPU chip has an internal logical architecture, here's an example that shows one way of arranging shared resources inside a single chip.

enter image description here
Image from AMD

The exact details can be very different between manufacturers and between generations and ranges of chips from the same manufacturer. It is a rapidly changing area. The general idea still holds.

  • 7
    Multi-CPU servers are indeed still used - nowadays quite often with NUMA (so they're not just multi-CPU, but to an extent also multi-computers). It's pretty useful for VM hosts and supercomputers. – Luaan Nov 10 '16 at 12:38
  • 1
    And when you go back to the 60', 70' you will also find examples of computers where the "core" actually consisted of an entire PCB with multiple chips and other components. – Tonny Nov 10 '16 at 13:00
  • 3
    It may be worth saying that the hierarchy goes one level deeper: socket, core, thread. For example, I have 1 socket with 4 cores, each one with 2 threads (for a total of 8 CPUs as seen by the OS). This taxonomy reflects the sharing of the resource, with a socket having its LLC, eDRAM and PCI lanes, a cores its execution units and caches, a thread just what is the frontend in jargon (which may even by time interleaved). – Margaret Bloom Nov 10 '16 at 13:59
  • @Margaret: Excellent point, thanks. I have updated my answer to mention this. – RedGrittyBrick Nov 10 '16 at 14:16
  • @MargaretBloom: There are also examples of larger modules containing multiple chips plugging into a single socket. So, you may have multiple sockets, each with a module with multiple chips, each with multiple cores, each with multiple threads. IBM had "Processor Books" on the p595, for example, where a "book" with multiple sockets, each with a module, each with multiple chips, each with multiple cores, each with multiple threads, would slide into a slot on the backplane, and you could have multiple books per backplane. Oh, and multiple backplanes per machine :-D – Jörg W Mittag Nov 10 '16 at 14:43
4

Desktop computers may have more than one chip/CPU.

past

It the past before multi-core CPUs came up, multi CPU desktop computers were used when the was reasonable need for more than one processor core - e.g. for extensive computation, which could be parallelized. See for reference:

present

Nowadays, desktop computers with multiple CPUs are not often used anymore. There are a few (see Dell Precision Tower 7000 Series (7810)).

If you need considerable computing power above a high-end multi-core CPU desktop computer you choose to have a computing server (a computing cluster) with several multi-CPUs. You log in via your desktop computer onto that cluster and perform your tasks remote. See for reference:

2

This is all about meaning of words used. The technology they describe is relatively new, so the meanings are not very well established. To add to the confusion, some things that had one meaning had to be diverged and now they have 2 meanings

Socket:

  1. Any socket when anything can be plugged. Like in "cpu socket", "ram socket", "usb socket", etc
  2. A CPU socket on a mainboard where one physical processor can be mounted.
  3. One physical processor. Not necessarily of the socketed type (Not every processor uses a socket, some, mostly the laptop ones, are directly soldered to the mainboard. Yet under this definition they still count as "1 socket")

Processor:

  1. Physical processor (aka socket) (as what you get when you buy "one processor" in a shop)
  2. Logical processor (aka thread) (as what your OS sees when you open Task Manager)
  3. In the broadest sense: Any hardware or it's part capable of executing a program.

Processor core:

  1. A part that physical processor is made of. Modern cores can have one or two threads.

Chip:

  1. One integrated circuit in it's package. eg a physical processor.
  2. One piece of silicon, a die.

Let's analyze your quote:

each chip [physical processor] (called a socket [physical processor]) contains multiple processors [any hardware capable of execution] (called cores), each with multiple levels of large memory caches, and multiple logical processors sharing the execution units of each core.

Now your question:

Do personal computers only contain one chip, which itself contains multiple processors? Or do they have many such chips?

Most personal computers never contained multiple physical processors. Those are for servers and sometimes enthusiasts (eg Intel Skulltrail, EVGA Classified SR-2) or workstations for hardcore number-crunchers. Almost every modern personal computer contains multiple logical processors in a SINGLE socket/physical processor package. Those multiple logical processors are realized as many cores in one or more chips/pieces of silicon in one physical processor and/or as one or two logical processors/threads per core.

From the software and user point of view it's irrelevant how those are realized. All that's easily visible without disassembling the computer is number of logical processors/threads. In some uses one core per thread is noticeably faster than same number of threads sharing half of the cores.

2

Consumer desktop and laptop computers are constructed around a few separate components based on a fairly standardised modular system.

  • Motherboard : this integrates quite a few different bits including sockets for modular components and external and internal devices (such as hard drives, USB, graphics and audio in and out etc.) as well as the electronics to mediate the distribution of signals and power between them. This may include dozens of minor chips which, while they aren't actually part of the processing power of the computer as such are still performing some important function.

  • Graphics : most boards will have provision for one or more graphics cards which are interchangeable blocks of hardware specifically designed for processing graphics and have their own set of physical input and output ports (HDMI etc.). Some (but not all) CPUs will also have integrated graphics chips which can handle graphics processing in the absence of a dedicated card. Some boards also allow several similar graphics cards to be used simultaneously for improved performance (SLI/crossfire). Modern graphics card will also typically have a substantial amount of on-board memory. Most graphics cards now have integrated fans and heat sinks (or provision for connection to a liquid cooling circuit)

  • BIOS : a chip or set of chips on the motherboard which handles the most basic functioning of the computer

  • RAM : fast immediate access memory, closely integrated with the CPU for the heavy lifting of computing. Usually in the form of long, narrow modular and interchangeable cards which slot into dedicated sockets on the motherboard. Typically installed in multiples of 2. Increasingly, high performance RAM may have its own integrated active or passive cooling system.

  • Other I/O cards : less common now than in the past, however some board may have provisions for specialist audio in/out, additional USB or other hardware ports or network adapters as well as specialist cards for legacy ports.

  • SATA/IDE ports for connection of internal hard drives, optical drives and other storage devices.

  • CPU : all motherboards will have a socket for connecting a CPU with a particular configuration of pins which will accept a range of models of CPUs designated by 'socket type' eg AMD's AM2+ standard and any given socket type will feature a range of processors with various different levels of performance. Virtually all modern CPUs have multiple cores and sometimes also graphics cores within one physical component.

This structure is designed to make it reasonably easy to upgrade the performance of a PC by exchanging modular components at least up to the point where the motherboard is no longer compatible with the latest standard although there is frequently some degree of backwards compatibility so it is entirely possible to maintain a rolling upgrade of modules without ever buying an entirely 'new' PC (my PC is getting on for 15 years old but the only really original component is the case). Much like Trigger's Broom

So the short answer is that any PC will contain at least dozens of separate processing and memory chips with specific functions and varying architecture and performance.

1

Consumer desktop and laptop PCs have one physical processor, which may be installed in a socket (most laptops and some compact desktops have processors that are soldered onto the motherboard), but have multiple cores. Each core can execute its own thread; some processors have simultaneous multithreading functionality (referred to by Intel as Hyper-Threading Technology) that allows each core to work on more than one thread at a time by taking advantage of unused execution resources within each core. A typical desktop Intel Core i7 processor has four cores, each with two-way simultaneous multithreading, allowing it to execute eight threads concurrently.

Systems with multiple sockets can accept more than one physical processor; they are intended for server or workstation use and are generally very expensive (several thousand to tens of thousands of dollars).

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.