Multicore processor: what it is and what it is for
Table of contents:
- What is the function of the processor in a computer
- What is the core of a processor
- What are more cores for?
- The race to have more GHz
- The race to have more cores
- The first processors with more than one core
- What do we need to take advantage of the cores of a processor
- HyperThreading and SMT
- How to know how many cores my processor has
- Conclusion and interesting links
The general trend is to find a multicore processor inside a personal computer, so, if you still do not know what we are talking about, it is time that you meet these processors. In fact, they have been with us for almost a decade, giving us more and more power and greater capacity to handle information, turning our machine into true data centers with desktops.
Index of contents
Multi-core processors revolutionized the market, first for the consumption of large companies and data centers , and then for normal users, thus jumping into a new era of high-performance equipment. Even our Smartphone have multicore processors.
What is the function of the processor in a computer
But before we begin to see what this is all about multi-core processors, it's worth refreshing a bit of memory, defining what a processor really is for. Perhaps it seems silly at this point, but not everyone knows this essential component in the current era, and it is time.
The processor, CPU or Central Processing Unit, consists of an electronic circuit designed from transistors, logic gates and lines with electrical signals capable of executing tasks and instructions. These instructions are generated by a computer program and the interaction (or not) of a human being or even of other programs. In this way we are able to perform productive tasks based on data through computers.
A computer and any other electronic device could not be conceived without the presence of a processor. It may be more or less complex, but any device capable of carrying out a specific task needs this unit to convert electrical signals into data, and even into physical tasks, such as assembly lines useful for humans.
What is the core of a processor
Like any other component, a processor is made up of different elements inside it. We call this combination of elements architecture, and the one we currently have inside our computer's processor is x86, a set of codes, parameters, and electronic components that, combined, are capable of calculating these instructions simply by doing logical and arithmetic operations.
CPU internal structure
The core or core of a processor is the unit, or integrated circuit that is responsible for processing all this information. Composed of millions of transistors equipped with a functional logical structure, it is capable of handling the information that enters, in the form of operands and operators to generate the results that allow programs to work. It is, then, the basic entity of a processor.
To make you sound, the core of a processor is made up of these main elements:
- Control unit (UC): it is in charge of synchronously directing the operation of the processor, in this case the core. It gives orders in the form of electrical signals to the different components (CPU, RAM, peripherals) so that they work synchronously. Arithmetic-logical unit (ALU): it is in charge of performing all the logical and arithmetic operations with integers with the data that it receives Registers: the registers are the cells that allow storing the instructions that are being executed and the results of the operation carried out.
What are more cores for?
Manufacturers' race to have the most powerful and fastest product has ever existed, and in electronics it is no different. In its day, it was a milestone to create a processor with a frequency of more than 1 GHz. In case you don't know, GHz measures the number of operations that a processor is capable of performing
GHz: what is and what is a gigahertz in computing
The race to have more GHz
The first processor to reach 1 GHz was the DEC Alpha in 1992, but when it comes to CPU for personal computers, it was not until 1999 when Intel, with its Pentium III and AMD, with its Athlon built processors that reached these figures.. At this time manufacturers only had one thing in mind, "the more GHz the better ", since more operations could be performed per unit of time.
After a few years, manufacturers found a limit on the number of GHz of their processors, why? because due to the enormous amount of heat that was generated in its core, putting the integrity of the materials and the heatsinks used to the limit. Likewise, consumption was triggered for each Hz that the frequency was increased.
The race to have more cores
At this limit, manufacturers had to make a paradigm shift, and that is how the new goal emerged, "the more cores the better." Let's think, if the nucleus is in charge of doing the operations, then increasing the number of nuclei we can double, triple,… the number of operations that can be done. Obviously it is so, with two cores we can do two operations at the same time, and with four we can do 4 of these operations.
Intel Pentium Extreme Edition 840
The goal set by Intel to reach 10 GHz with its NetBurst architecture was left behind, something that until now has not been achieved, at least not with the refrigeration systems available to normal users. So the best way to achieve good scalability in power and processing capacity was this, having processors with a certain number of cores and also at a certain frequency.
Dual-core processors began to be implemented, either manufacturing two individual processors, or much better, integrating two DIE (circuits) on a single chip. Thus saving a lot of space on the motherboards, although requiring greater complexity for the implementation of its communication structure with the other components, such as cache memory, buses, etc.
The first processors with more than one core
At this point it is quite interesting to know which were the first multicore processors to appear on the market. And as you can imagine, the beginnings were as always, for corporate use on servers, and also as always IBM. The first multicore processor was the IBM POWER4 with two cores on a single DIE and a base frequency of 1.1 GHz, manufactured in 2001.
But it was not until 2005 when the first dual core processors for mass consumption by users emerged on their desktop computers. Intel stole the wallet from AMD a few weeks in advance with its Intel Pentium Extreme Edition 840 with HiperThreading, later publishing the AMD Athlon X2.
After this, the manufacturers took a run and began to introduce nuclei indiscriminately, with the consequent miniaturization of the transistors. Currently, the manufacturing process is based on transistors of only 7 nm implemented by AMD in its 3rd generation Ryzen, and 12 nm implemented by Intel. With this we managed to introduce a greater number of cores and circuits in the same chip, thus increasing the processing power and reducing consumption. In fact, we have up to 32-core processors on the market, which are AMD's Threadrippers.
What do we need to take advantage of the cores of a processor
The logic seems very simple, insert cores and increase the number of simultaneous processes. But at first this was a real headache for hardware manufacturers and especially for software creators.
And is that the programs were designed (compiled) only to work with a kernel. Not only do we need a processor to be physically capable of doing multiple simultaneous operations, we also need that the program that generates these instructions can do it by communicating with each of the available cores. Even operating systems had to change their architecture to be able to efficiently use multiple cores simultaneously.
In this way, the programmers got down to work and began to compile the new programs with multicore support, so that currently, a program is capable of efficiently using all the cores that are available on the computer. Thus multiplying the threads of execution to the necessary amount. Because if, in addition to cores, the concept of thread of execution also appeared.
In a multicore processor it is essential to parallelize the processes that a program executes, this implies that each nucleus manages to execute a task in parallel to another, and consecutively, one after the other. This method of creating different tasks simultaneously from a program is called process threads, work threads, threads or simply Threads in English. Both the operating system and the programs must be able to create parallel process threads to take advantage of the full power of the processor. This is high that CAD design, video editing or programs do very well, while games do have a way to go.
What are the threads of a processor? Differences with nuclei
HyperThreading and SMT
As a result of the above, the technologies of the processor manufacturers appear. The most famous among them is the HyperThreading that Intel started using in its processors, and later AMD would do it in theirs with CMT technology first, and then with an evolution to SMT (Simultaneous Multi-Threading).
This technology consists of the existence of two cores in one, but they will not be real cores, but logical, something that in programming is called processing threads or threads. We have already talked about it before. The idea is to divide, once again, the workload between cores, segmenting each of the tasks to be performed in threads so that they are executed when a core is free.
There are processors that have only two cores, for example, but have 4 threads thanks to these technologies. Intel uses it primarily in its high-performance Intel Core processors and laptop CPUs, while AMD has implemented it across its entire range of Ryzen processors.
What is HyperThreading?
How to know how many cores my processor has
We already know what cores are and what threads are and their importance to a multicore processor. So the last thing we have left is to know how to know how many cores our processor has.
You should know that Windows sometimes does not differentiate between cores and threads, since they will appear with the name of cores or processors, for example in the "msiconfig" tool. If we open the Task Manager, and go to the performance section, we can see a list where the count of cores and logical processors of the CPU appears. But the graphics that will be shown to us will be directly that of the logical cores, just like the ones that appear in the Performance Monitor if we open it.
How to know how many cores my processor has
Conclusion and interesting links
We come to the end, and we hope we have worthily explained what a multicore processor is, and the most important concepts related to the subject. Currently there are real monsters with up to 32 cores and 64 threads. But for a processor to be effective, not only the number of cores and their frequency is important, but also how it is built, the efficiency of its data buses and the communication and the way of working of its cores, and here Intel follows a step ahead of AMD. We'll be seeing the new Ryzen 3000s soon that promise to outperform Intel's most powerful desktop processors, so stay tuned for our reviews.
If you have any questions or points about the topic, or want to clarify something, we invite you to do so using the comment box below.
Siswoo a5 with 4g and quad-core processor for only 76.75 euros
Available at Everbuying the SISWOO A5 with quad-core processor, 5-inch screen and 4G-LTE for less than 77 euros
Snapdragon 865 achieves 13,300 points in multicore, according to a leak
Following the trend of mobile phone CPUs, the upcoming Snapdragon 865 seems to achieve excellent multi-core performance.
Processor overclocking: does it damage your processor? It is advisable?
Overclocking has always been said to reduce processor life. However, it does not have to be this way. Inside, we talk about it. How many