Bureaucrats, cc_docs_admin, cc_staff, rsnt_translations
2,837
edits
(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 ==== | ||
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>- | |||
{{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. | ||
{{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>- | # Modifiez le Makefile en ajoutant <tt>-acc -gpu{{=}}managed</tt> et <tt>-Minfo{{=}}accel</tt> aux indicateurs pour le compilateur. | ||
}} | }} | ||
[[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 ->]] |