Understanding heterogeneous computing

Over the years, the search for better performance for increasingly complex calculations has led to the adoption of new techniques in the use of computers. One of these techniques is called heterogeneous computing, which aims to cooperate with different (or heterogeneous) processors in such a way as to have advantages (in particular) in terms of temporal computational efficiency.

In this context, the processor on which the main program is run (generally the CPU) is called the host, while the coprocessors (for example, the GPUs) are called devices. The latter are generally physically separated from the host and manage their own memory space, which is also separated from the host's memory.

In particular, following significant market demand, the GPU has evolved into a highly parallel processor, transforming the GPU from devices for graphics rendering to devices for parallelizable and computationally intensive general-purpose calculations.

In fact, the use of GPU for tasks other than rendering graphics on the screen is called heterogeneous computing.

Finally, the task of good GPU programming is to make the most of the great level of parallelism and mathematical capabilities offered by the graphics card, minimizing all the disadvantages presented by it, such as the delay of the physical connection between the host and device.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.220.66.151