**3. Many-core architectures**

## **3.1. Overview**

A computing component that featured with two or more processing units to execute program instructions independently is known as a multicore processor. With the ability of running multiple instructions at the same time, multicore processors increase overall speed for many general-purpose computing. Currently, adding support for more execution threads is the norm avenue to improve the performance of high-end processors. The many-core architectures are formed by manufacturing massive multicores on a single component. For general-purpose parallel computing, many-core architectures on both the central processing unit (CPU) and the graphics processing unit (GPU) are available for different tasks.

Compared with a many-core CPU architecture known as a supercomputer, the general GPU has many more cores, which are constructively cheap and suitable for intensive computing.
