-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tâches parallèles #8
The head ref may contain hidden characters: "t\u00E2ches-parall\u00E8les"
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Voilà, j'ai terminé mes commentaires à travers le fichier parallel.rst
. Il y a beaucoup de contenu, wow! On verra avec l'expérience s'il y a certaines parties trop avancées à enlever. Pour l'instant, on peut garder toutes les sections. Il y a juste la section d'exercices que j'aimerais voir scindée en deux.
doc/fr/task-types/parallel.rst
Outdated
(vectorisées) à l’aide d’instructions SIMD. (Voir la figure ci-dessous pour un | ||
exemple.) | ||
|
||
.. image:: ../../images/vectorization_en.svg |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Il faudrait spécifier l'image en français de l'illustration de vectorisation. Mon checkout ne contient pas la version anglaise, seulement la version française.
doc/fr/task-types/parallel.rst
Outdated
dans les programmes multi-fils | ||
|
||
Les programmes multi-fils peuvent aussi être identifiés par leur comportement | ||
dans le gestionnaire de tâches. Dans ``top -u $USER``, une entré pour un |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Il manque un e
à entrée
.
doc/fr/task-types/parallel.rst
Outdated
nouvelles ressources mais exécute plutôt un programme sur les ressources | ||
déjà allouées. | ||
|
||
Nous verrons :doc:`plus loin <../monitoring/interactive-sessions>` que |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ce paragraphe m'a rendu confus (parce que je n'ai pas tout de suite compris le lien entre srun
et tâches interactives - j'utilise salloc
sans srun
habituellement). Étant donné que le matériel de la future page n'est pas encore prêt, cela me met dans la position des étudiants qui ne savent pas encore de quoi on parle. Je suggère donc de déplacer l'information de ce paragraphe dans la page des sessions interactives. Autrement, c'est une information qui me semble trop abstraite dans la page actuelle, sans voir les exemples correspondants.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Le retrait des deux paragraphes de la note était peut-être encore un bogue dans ma sélection de ligne de code dans GitHub. Je pensais uniquement que le second paragraphe serait enlevé. Désolé pour ça.
Ceci dit, maintenant que toute la note (deux paragraphes) est enlevée, je crois que ça vaudrait la peine d'enlever le point 2 dans le chapitre des commandes, afin d'enlever srun
de là. C'est un détail qui risque de causer de la confusion pour rien.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fait ! En effet, le mieux était simplement d’enlever srun
des rappels, ça nous évite d’avoir à faire la distinction.
doc/fr/task-types/parallel.rst
Outdated
#SBATCH --nodes=4 | ||
#SBATCH --ntasks-per-node=4 | ||
|
||
.. note:: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je ne savais pas ça et je ne m'attends pas à une telle question de l'audience. Je ne suis pas certain que cette note soit nécessaire.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
J’ai souvent vu ce problème sur nos grappes de calcul. Je ne m’attends pas à des questions des participants, c’est plutôt un avertissement ! Je l’ai donc déplacé dans un cadre « warning ».
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oups! Je vais devoir modifier ma façon de pointer des lignes de code, car en fait je faisais référence à la note
, celle qui dit :
Un programme MPI peut être compilé pour utiliser des fils d’exécution plutôt que des processus multiples. Ce cas de figure est très rare et n’est pas traité dans cet atelier.
Le commentaire sur la forme des tâches était effectivement pertinent. C'est OK de le garder sous forme de warning.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Compris ! Je l’ai enlevée. Thread-MPI est super-exotique. On l’utilise fréquemment avec GROMACS mais c’est peut-être le seul programme commun en production qui le fait, alors je suis biaisé.
que des processus multiples. Ce cas de figure est très rare et n’est pas | ||
traité dans cet atelier. | ||
|
||
Exercice |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Est-ce que l'exercice devrait être scindé en deux pour tester d'abord le mode multi-fil? Je trouve qu'il y a beaucoup d'information avant de passer à la pratique. Donc en coupant l'exercice en deux, la matière sur le mode multi-fil serait plus fraîche en tête au moment de pratiquer avec le code OpenMP.
doc/fr/task-types/parallel.rst
Outdated
#. Allez dans le répertoire de l’exercice avec ``cd | ||
~/cq-formation-cip201-main/lab/multi-threaded-pi``. | ||
#. Compilez le programme ``pi`` avec la commande ``make``. | ||
#. Démarrez une tâche interactive avec ``salloc [...] --time=00:10:00``. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Certes, c'est effectivement comme ça que j'inspecterais mes tâches parallèles. Par contre, je me demande ce qu'il y aura de nouveau dans la page des sessions interactives.
Autrement, devrions-nous leur montrer la méthode avec srun
et utiliser des scripts de tâches pour lancer le programme?
https://docs.alliancecan.ca/wiki/Running_jobs/fr#Surveillance_d'une_t%C3%A2che_en_cours
L'avantage d'éviter salloc
, c'est qu'on évite le problème de devoir faire exit
, lorsque nécessaire.
#SBATCH --time=4:00:00 | ||
#SBATCH --account=def-sponsor | ||
|
||
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je ne connaissais pas cette syntaxe Bash. Il serait bien d'avoir le commentaire # 1 si non défini
au bout de la ligne.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fait, mais hors du script pour éviter d’avoir à traduire les exemples de code.
doc/fr/task-types/parallel.rst
Outdated
Autres types de parallélisme | ||
---------------------------- | ||
|
||
Le parallélisme de données consiste à répéter une tâche sérielle ou parallèle de |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pour éviter les mots "répéter ... de multiples fois" qui sonnent comme un processus itératif dans ma tête, je reformulerais par :
... consiste à exécuter en simultané la même tâche sérielle ou parallèle, mais avec ...
J’aurais du préciser que je ne compte pas enseigner le matériel après l’exercice. Il est là pour que les participants le révisent par eux-même et pour répondre à d’éventuelles questions. Tout ce qui est parallélisme hybride et autres types de parallélisation sera donc brièvement mentionné pendant la formation avec comme recommandation d’y jeter un œil par soi-même. Séparer l’exercice est une bonne idée ! Utiliser Je vais appliquer les corrections ce PM. |
Tout est fait, on peut passer à une deuxième ronde de révision. |
Parfait! J'ai vu les deux derniers commits. Je fusionne le tout dans |
No description provided.