OpenACC Tutorial - Adding directives/fr: Difference between revisions

no edit summary
(Updating to match new version of source page)
Tags: Mobile edit Mobile web edit
No edit summary
Line 160: Line 160:
==== Construire avec OpenACC ====
==== Construire avec OpenACC ====


<div class="mw-translate-fuzzy">
Les compilateurs NVidia utilisent l'option <code>-acc</code> pour permettre la compilation pour un accélérateur. Nous utilisons la sous-option <code>-gpu=managed</code> pour indiquer au compilateur que nous voulons utiliser la [https://developer.nvidia.com/blog/unified-memory-cuda-beginners/ mémoire gérée]  pour simplifier le transfert de données en provenance et à destination du périphérique; nous n'utiliserons pas cette option dans un prochain exemple. Nous utilisons aussi l'option <code>-fast</code> pour l'optimisation.
Les compilateurs NVidia utilisent l'option <code>-ta</code> (''target accelerator'') pour permettre la compilation pour un accélérateur. Nous utilisons la sous-option <code>tesla:managed</code> pour indiquer au compilateur que nous voulons compiler pour des GPU Tesla et que nous voulons utiliser la [https://developer.nvidia.com/blog/unified-memory-cuda-beginners/ mémoire gérée]  pour simplifier le transfert de données en provenance et à destination du périphérique; nous n'utiliserons pas cette option dans un prochain exemple. Nous utilisons aussi l'option <code>-fast</code> pour l'optimisation.
</div>


{{Command
{{Command
Line 379: Line 377:
Les deux approches sont valides et leur performance est comparable.
Les deux approches sont valides et leur performance est comparable.


  <div class="mw-translate-fuzzy">
   
 
{{Challenge
{{Challenge
|title=Exercice : utiliser <tt>kernels</tt> ou <tt>parallel loop</tt>  
|title=Exercice : utiliser <tt>kernels</tt> ou <tt>parallel loop</tt>  
|content=
|content=
# Modifiez les fonctions <tt>matvec</tt>, <tt>waxpby</tt> et <tt>dot</tt>. Vous pouvez utiliser soit <tt>kernels</tt>, soit <tt>parallel loop</tt>. La solution se trouve dans les répertoires <tt>step1. de [https://github.com/calculquebec/cq-formation-openacc Github] *</tt>.  
# Modifiez les fonctions <tt>matvec</tt>, <tt>waxpby</tt> et <tt>dot</tt>. Vous pouvez utiliser soit <tt>kernels</tt>, soit <tt>parallel loop</tt>. La solution se trouve dans les répertoires <tt>step1. de [https://github.com/calculquebec/cq-formation-openacc Github] *</tt>.  
# Modifiez le Makefile en ajoutant <tt>-ta{{=}}tesla:managed</tt> et <tt>-Minfo{{=}}accel</tt> aux indicateurs pour le compilateur.  
# Modifiez le Makefile en ajoutant <tt>-acc -gpu{{=}}managed</tt> et <tt>-Minfo{{=}}accel</tt> aux indicateurs pour le compilateur.  
}}
}}
</div>


[[OpenACC Tutorial - Profiling/fr|<- Page précédente, Profileurs]] | [[OpenACC Tutorial/fr|^- Retour au début du tutoriel]] | [[OpenACC Tutorial - Data movement/fr|Page suivante, Mouvement des données ->]]
[[OpenACC Tutorial - Profiling/fr|<- Page précédente, Profileurs]] | [[OpenACC Tutorial/fr|^- Retour au début du tutoriel]] | [[OpenACC Tutorial - Data movement/fr|Page suivante, Mouvement des données ->]]
Bureaucrats, cc_docs_admin, cc_staff, rsnt_translations
2,837

edits