OpenACC Tutorial - Introduction: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 15: Line 15:
<translate>
<translate>
== CPU vs accelerator == <!--T:3-->
== CPU vs accelerator == <!--T:3-->
Historically, computing has developed around Central Processing Units (CPU) that were optimized for sequential tasks. That is, they would do only one computation during a given clock cycle. The frequency of these units steadily increased until about 2005, when the top speed of the high end CPUs reached a plateau at around 4 GHz. Since then - for reasons well explained in [https://www.comsol.com/blogs/havent-cpu-clock-speeds-increased-last-years/ this article] - CPU clock frequency has barely moved, and is even now often lower than 4 GHz. Instead, manufacturers started adding multiple computation cores within a single chipset, opening wide the era of parallel computing. Yet, even as of 2016, CPU are mostly optimized for sequential tasks, for which they present some major advantages: first, they have direct access to the main computer memory, which can be very large; second, because of their very fast clock speed, they can run a small number of tasks very quickly. But they also have some weaknesses: they have relatively low memory bandwidth; they use cache mechanisms to mitigate low bandwidth, but this means that cache misses are very costly; they also are rather power-hungry compared to accelerators.  
Historically, computing has developed around Central Processing Units (CPU) that were optimized for sequential tasks. That is, they would do only one computation during a given clock cycle. The frequency of these units steadily increased until about 2005, when the top speed of the high end CPUs reached a plateau at around 4 GHz. Since then - for reasons well explained in [https://www.comsol.com/blogs/havent-cpu-clock-speeds-increased-last-years/ this article] - CPU clock frequency has barely moved, and is even now often lower than 4 GHz. Instead, manufacturers started adding multiple computation cores within a single chipset, opening wide the era of parallel computing. Yet, even as of 2016, CPUs are mostly optimized for sequential tasks for which they present some major advantages: first, they have direct access to the main computer memory, which can be very large; second, because of their very fast clock speed, they can run a small number of tasks very quickly. But they also have some weaknesses: they have relatively low memory bandwidth; they use cache mechanisms to mitigate low bandwidth, but this means that cache misses are very costly; they also are rather power-hungry compared to accelerators.  


<!--T:4-->
<!--T:4-->
rsnt_translations
56,430

edits

Navigation menu