The evolution of central processing units, or CPUs, is a fascinating and complex topic to study. From the introduction of the Intel 4004 in 1971 to today's Intel 10-series processors, these chips have demonstrated astonishing gains in speed and processing power in just five short decades.
Computing tasks that were once unimaginable on even the largest mainframe computers can now be accomplished using the cheapest budget smartphone, with even the most basic laptops packing hundreds of times more power than the computers that powered early space flights.
However, even with the astronomically rapid development of computing power, one innovation that still puzzles users is the concept of multi-core processors . Manufacturers like Intel and AMD are touting the ever-increasing number of cores in new processors - 4 cores, 8 cores, 16 cores, even 32 cores - and their usefulness for heavy computing workloads. But what does this even mean?
What are processor cores
A processor core is an “independent” element on a common physical processor chip. Each core has its own processing hardware and cache, and is connected to the rest of the processor through the chip's shared memory and system bus. A core is essentially a separate central processing unit, so a multi-core processor is like connecting multiple processors together and working together.
The reason for having more cores in a processor is that it can often be more advantageous to divide computing tasks among multiple cores, allowing for faster and more efficient calculations.
However, the effectiveness of this method depends on the operating system you are using, as well as the specific application you are running; many operating systems and applications were previously unable to take advantage of multiple cores and, as a result, did not see any measurable benefits from additional cores. Fortunately, almost all modern operating systems and many resource-intensive programs such as Adobe Premiere can take advantage of additional cores and, as a result, work faster and more efficiently.
Multi-core processors appeared back in 1996, when the IBM Power4 processor worked with two cores on one chip, which was revolutionary for that time. However, software support for this innovation did not appear immediately. Starting with Windows XP in 2001, Windows began supporting multi-core operations, and many application developers followed suit. As a result, almost any resource-intensive software you use today will make full use of the power of the multi-core processor you almost certainly have under the hood.
Preface
There are plenty of misconceptions about how computers work. Some are very popular, some are widely known in a narrow circle. I've chosen a couple of particularly tenacious ones, supported by the faith of those who love to engage in computer optimization. Their refutation does not require long explanations of the nuances of the operating system, programs and processor. It is enough to use logic.
Before I begin describing the myths, I will write a few theses on which I will rely in the future. If you don't agree with me, think twice why. Maybe you and I live in parallel universes?
So, here are theses that for me are the truth, supported by facts and knowledge. I hope that after reading this carefully you will understand where I am going with this.
1. Operating system (OS) is an intermediary between the computer hardware and programs (including games). In this case we are talking about Windows. It is the OS and the running drivers that draw the picture on the screen, ensure the launch of programs and allow the running software to use the computer’s resources: processor, RAM, video card, network, and the like. In fact, Windows consists of a kernel - a small but complex program that regulates resource allocation priorities, is responsible for isolating programs and does much more related to the functioning of software, running drivers that interact with the computer hardware through kernel functions and the part itself isolated from the hardware , where our games, browsers, etc. run. Anyone who wants to know more can read the Wikipedia article “Windows NT Architecture”, but this is not necessarily within the scope of this note. The main thing to keep in mind is that the system is an intermediary between the physical part of the PC and the programs that we humans usually work with.
2. The capabilities of the software are limited by the capabilities of the operating system (including drivers). Application programs and games that we see on the screen do not have direct access to the computer hardware; they work through an intermediary - Windows. If the system (and drivers) cannot do something, then programs will not get to that “something”. For example, there are several driver versions for the sound card of my old Acer 5920G laptop. It so happens that in one driver you can adjust the microphone sound gain, but in the other there is no such adjustment, but you can enable sound enhancement with Dolby Surround technology. Therefore, if I wanted to listen to music comfortably, I had to install a driver with Dolby Surround. When I was recording a video tutorial, I put on another one, where the microphone works noticeably better. Alas, no program can bypass these restrictions and give access to everything at once, because there is no driver that has both mentioned functions. Therefore, there is no program that, with one driver, would return the capabilities available with another driver. This rule is always observed, including for games. They do not have direct access to the hardware, only through an intermediary. For example, graphics are often created using DirectX commands, but for the purposes of this article that is not important.
3. Operating system creators do not intentionally limit computer performance. Otherwise there will be a lot of lawsuits. For example, Apple was fined 5,000,000 euros when it turned out that the OS of older iPhone models reduces performance over time. And another 5 million euros for the fact that the slowdown function worked secretly, without notifying the device owners. That is, you need to understand that if Windows had some kind of function that, without explicitly notifying users, somehow reduced the speed of CPU calculations, disabled processor cores, or limited the capabilities of hardware, then it would have been written about in all technical (and not only) media . There would be lawsuits and reputational losses. But this is not and will not happen, because the Windows family has been studied far and wide. There were, are and will be bugs and suboptimal algorithms in the system, but this happens with every complex software product. Deliberate slowing down is not beneficial.
I hope you have read the above. Computer optimization myths related to disabling and enabling cores, which I will discuss below, are precisely based on a lack of faith in the veracity of these theses. For some reason, many people believe that Microsoft does not allow the computer to “open up” without fiddling with the settings.
Enabling CPU Cores in Windows
One question we are often asked is whether there is anything a user needs to do to take full advantage of the multi-core processors on a computer.
The answer is that it depends on the version of Windows you are using. For older versions of Windows, such as Windows XP, you may need to change system settings in the BIOS to get multi-core features to work. In any newer version of Windows, support for multi-core processors is automatically enabled; You can change the settings to use fewer cores if you need to fix a software compatibility issue, but this is extremely rare.
Basic settings in Windows 10
If you are using Windows 10, all cores of your processor will be fully loaded by default if your BIOS/UEFI is configured correctly. The only time you would use this method is to limit the use of cores, whether for software compatibility reasons or other reasons.
- Type msconfig into the Windows search box and press Enter to open System Configuration.
- Go to the Boot tab, and then click More options.
- Check the box next to "Number of Processors" and select the number of cores you want to use (possibly 1 if you have compatibility issues) from the menu.
- Click OK and then Apply.
If you're using Windows 10, the checkbox next to "Number of processors" is usually unchecked. This is because Windows is configured to use all cores whenever a program can use them.
Basic settings in Windows Vista, 7 and 8
In Windows Vista, 7, and 8, multi-core configuration is accessed through the same msconfig service described above for Windows 10. In Windows 7 and 8, you can also set processor affinity, which means telling the operating system to use a specific kernel for a specific program. It was useful for many things; you can configure a certain program to always run on one core so that it does not interfere with other system operations, or you can configure a program that is having trouble running on any core other than the first logical core to use the core on which it performed better.
You may notice that the configurator says twice as many cores as you should have. For example, if you have an Intel i7 processor with 4 cores, the window will show 8. This is because hyperthreading effectively doubles the number of cores: four real and four virtual. If you want to find out how many physical cores your processor has, try this:
- Press Ctrl + Shift + Esc to open Task Manager.
- Go to the Performance tab and click CPU.
- Check the "Kernels" line in the lower right corner of the panel.
How to enable processor cores in BIOS or UEFI
On my MSI motherboard, in the Overclocking , CPU Ratio Apply Mode is responsible for this . In it you can select the value All Core or Per CCX . In a nutshell, with All Core everything is clear, but Per CCX is separate for individual CPU blocks. It all depends on your motherboard and processor.
Previously, ASRock Fatal1ty 990FX Killer with AMD FX9370 had all eight cores running at once. This section made it possible to leave 6, 4 or even 2 cores instead of 8. What does this give? Of course, a slight reduction in energy consumption. Unfortunately, this can cause problems loading the OS.
Some AMD processors were unlockable. For example, 2-core models became 3, 4, and with 4 they made 6 cores. All this with one slider in the BIOS. They might not work quite stably. For example, my copy did not display models and operating temperatures...
Conclusion
All processor cores are already immediately used by Windows 10. This feature makes it possible to limit performance. As in the case of reducing the processor frequency using the OS. Fewer cores or lower frequency results in lower power consumption and lower TDP.
Do I need to enable all kernels in Windows 10?
In fact, there are some opinions on this matter, although there is a fairly strong consensus among experts that you should use all processor cores. There are two points that opponents make. Firstly, reducing energy consumption. The other argument makes a little more sense and stems from the first, and it concerns laptop battery life.
It is difficult to check the processor power consumption level. The reality is that the power consumption of a modern PC can be high for long periods of time. But it is also true that power surges do not consume very much energy. Even at maximum power consumption, the Core i7 consumes only 130 W. Compare that to a 250-watt refrigerator, a 1,400-watt window air conditioner, and a 3,500-watt integrated air conditioning system.
The argument for extending laptop battery life (less power = fewer charge cycles = lasts years longer) has some superficial appeal. I'll admit that, given how much a high-end laptop can cost, it makes sense to disable some cores. However, this goal can be achieved much more efficiently and easily if the entire processor is slightly slowed down. Underclocking means the laptop will run slower than usual, which in turn will reduce performance and dramatically reduce battery drain. The cores simply don't consume much power when not in use, so the savings will be minimal. Lowering the processor clock speed directly reduces the machine's power consumption and can actually extend the life of the laptop.
The processor is the most important part of your computer, so it makes sense to use all cores to the limit . Of course, if you're still having trouble getting your device to the level of performance you want, you might want to consider upgrading your processor (if you have a desktop computer) or buying a new laptop.
Enabling on a laptop via BIOS
This method should be used only in a situation where the previous solution does not work for some software reason. Here you should be extremely careful, since the BIOS “does not forgive mistakes” - any incorrect intervention is fraught with serious problems.
- Reboot the PC and go into the BIOS settings. To do this, immediately after turning it on, press a special button on the keyboard (depending on the laptop model and software version used). Most often, the required combination is indicated on the screen. If you don’t see anything like this, press Del, F2, F10, F12 or Esc. For more accurate information, view the information on the website of the manufacturer of the motherboard (for desktop computers) or laptop;
- When you enter, you need to use the arrow buttons to navigate through the main sections, look through the sub-items to find the “Advanced Clock Calibration” option. It will need to be set to "All..." (in some shells the "Auto" option is available instead:
- Don't forget to save your changes before exiting. To do this, you need to use the function key F10.
So we found out how to enable all cores on Windows 10 for games during the OS boot process. It is worth knowing how to automatically distribute loads and use the necessary resources. This functionality is available even in the home version, so you don’t have to use third-party programs.
How to find out the number of cores
Before enabling additional cores, you need to find out if the processor has them. Firstly, information about the processor is presented in the instructions for it or on the manufacturer’s official website. To find out your processor model, follow these steps:
Secondly, information can be found through system settings and third-party programs.
Via "Device Manager"
To find out the number of processor cores through Device Manager, follow these steps:
Video: how to find out the number of cores using Device Manager
Via CPU-Z
CPU-Z is a free utility that provides detailed information about your computer. On its main page “CPU” there is a line “Number of active cores”, which indicates the number of available cores.
Look at the Cores line in the CPU-Z utility to find out the number of processor cores
Via AIDA64
AIDA64 also has a free version of the program that you can use. Having opened it, go to “System board” - “CPU”. Find the Multi CPU block and count how many cores are described in it.
Look at the Multi CPU block to find out the number of cores
Via Everest
Another free program that allows you to find out the number of processor cores. To do this, you need to launch it and go to the item “Motherboard” - “CPU” - Multi CPU block.
Expand the CPU tab and look at the Multi CPU block to find out the number of cores
How many cores are running by default and what do they affect?
There are many articles on the Internet whose authors claim that Windows with default settings ignores some kernels. However, it is not. Why shouldn't a paid system use the full potential of a PC? So that people buy it less? This doesn't make any sense. We can safely say that in terms of processor efficiency, Windows versions of the same generation are no different. The difference between them is functionality, but not performance. A more expensive modification may work slower. In any case, the operating system uses all available cores by default.
As for the initial loading of the OS, not everything is so simple. Microsoft representatives claim that by default the process runs at maximum speed. However, in practice, changing the configuration may speed up loading somewhat.
It is worth noting that the thesis “the more cores, the higher the performance” is generally true. But other factors also affect the speed of the software:
- Amount of RAM.
- Type of hard drive (solid state drives are faster).
- Windows Settings.
- Timely PC cleaning.
- Prevention of components, etc.
In a gaming PC, a lot depends on the graphics card.
Choosing a chip for a laptop: How to choose a processor for a laptop: 6 characteristics
BIOS Settings
If the previous option helped few people (for obvious reasons), then setting the BIOS often gives the desired effect. You should find the processor partition and allow all cores to work, or select something like Auto (automatically). However, this setting does not appear in every setting. The presence of a large selection of options is typical for multiprocessor systems. Sometimes loading optimal parameters helps. Don’t forget to save the old ones before doing this in case it doesn’t help and you have to come back.