OpenACC Tutorial - Adding directives/fr: Difference between revisions

Jump to navigation Jump to search
Created page with "Quand le compilateur lit la directive OpenACC <tt>kernels</tt>, il analyse le code pour identifier les sections pouvant être parallélisées. Ceci correspond souvent au corps..."
No edit summary
(Created page with "Quand le compilateur lit la directive OpenACC <tt>kernels</tt>, il analyse le code pour identifier les sections pouvant être parallélisées. Ceci correspond souvent au corps...")
Line 64: Line 64:
=== Boucles et noyaux ===
=== Boucles et noyaux ===


When the compiler reaches an OpenACC <tt>kernels</tt> directive, it will analyze the code in order to identify sections that can be parallelized.
Quand le compilateur lit la directive OpenACC <tt>kernels</tt>, il analyse le code pour identifier les sections pouvant être parallélisées.
This often corresponds to the body of a loop that has independent iterations.
Ceci correspond souvent au corps d'une boucle qui a des itérations indépendantes.
When such a case is identified, the compiler will first wrap the body of the loop into a special function called a [https://en.wikipedia.org/wiki/Compute_kernel ''kernel''].
Dans ce cas, le compilateur délimite le début et la fin du corps du code avec la fonction nommée [https://en.wikipedia.org/wiki/Compute_kernel ''kernel''].
This internal code refactoring makes sure that each call to the kernel is independent from any other call.
Les appels à cette fonction ne seront pas affectés par les autres appels.
The kernel is then compiled to enable it to run on an accelerator.
La fonction est compilée et peut ensuite être exécutée sur un accélérateur.
Since each call is independent, each one of the hundreds of cores of the accelerator can run the function for one specific index in parallel.
Comme chaque appel est indépendant, chacun des centaines de cœurs de l'accélérateur peut exécuter la fonction en parallèle pour un index spécifique.


{| class="wikitable" width="100%"
{| class="wikitable" width="100%"
rsnt_translations
56,430

edits

Navigation menu