Multi-core processors: principles of operation

Multi-core processors: principles of operation


In modern multi-core processors on onea silicon crystal contains two or more computational nuclei. In this case, each core is capable of supporting the calculation of two or more threads. The use of multi-core processors allows you to speed up the operation of operating systems and applications that support multithreading.



Multi-core processors: principles of operation


Multi-core processors areCentral processors, which contain more than two cores. Such cores can be located in one housing or on a single processor chip.

What is a multi-core processor?

Most often under multi-core processorsunderstand CPUs in which several cores are integrated into one chip (that is, they are located on the same silicon chip). Usually the clock speed in multi-core processors is deliberately underestimated. This is done in order to reduce power consumption, while maintaining the required processor performance. Each core at the same time is a full-fledged microprocessor, which is characterized by the features of all modern processors - it uses a multi-level cache, supports extra code execution and vector commands.

Hyper-threading

Kernels in multi-core processors canSupport SMT technology that allows you to execute multiple flow calculations and create on the basis of each core several logical processors. On the processors that Intel produces, this technology is called "Hyper-threading". Thanks to it, you can double the number of logical processors compared to the number of physical chips. In microprocessors that support this technology, each physical processor is capable of maintaining the state of two threads simultaneously. For the operating system, this will look like having two logical processors. If a pause occurs in the work of one of them (for example, it waits for data to be received from memory), another logical processor starts executing its own stream.

Types of multi-core processors

Multi-core processors are divided intoseveral kinds. They can support the use of shared cache memory, and may not support. The connection between the cores is realized on the principles of using a shared bus, a network on point-to-point channels, a network with a switch, or using a shared cache.

Principle of operation

Most modern multi-core processorsworks according to the following scheme. If a running application supports multithreading, it can cause the processor to perform multiple tasks at the same time. For example, if the computer uses a 4-core processor with a clock speed of 1.8 GHz, the program can "load" all four cores at once, with the total processor frequency will be 7.2 GHz. If several programs are running at once, each of them can use part of the processor cores, which also leads to increased computer performance. Many operating systems support multi-threading, so the use of multi-core processors allows you to speed up your computer, even in the case of applications that do not support multithreading. If we consider only one application, the use of multi-core processors will be justified only if this application is optimized for multithreading. Otherwise, the speed of the multi-core processor will not differ from the speed of the normal processor, and sometimes it will work even slower.