Documente Academic
Documente Profesional
Documente Cultură
2015/2016
TD : Architecture Multi-cores et OpenMp
Exercice 1 : architecture multi-cores, classification
La figure suivante, prise du livre Multi-Core Programming crit par S. Akhter et J. Roberts (intel
press), prsente une classification des architectures multi-cores.
your processing power; however, you are exploring whether you could save power by using two cores.
A - Assume your application is 70% parallelizable. By how much could you decrease the frequency
and get the same performance?
B - Assume that the voltage may be decreased linearly with the frequency (V=a.F). Using the
equation P=A.V2.F, how much dynamic power would, the dual-core system require as compared to the
single-core system?
C Let suppose now that the application is p% parallelizable. Same question for A and B. We suppose
having a dual core-architecture.
D In this question, we repeat question A and B for an architcture having n cores running an
application which is p% parallelizable
paralllise?
2. En supposant toujours que 80% de lapplication est paralllise, quelle est
lacclration avec 8 cores, si pour chaque processeur ajout, le surcout en
communication sur le temps dexcution initiale est de 0.5% ?
3. En supposant toujours que 80% de lapplication est paralllise, quelle est
lacclration avec 8 cores, si on suppose qu chaque fois que le nombre
de cores est multipli par 2, le surcout en communication sur le temps
dexcution initiale augmente de 0.5% ?
4. Ecrire lquation qui permet de trouver le nombre de cores nopt qui donne
la plus grande valeur de lacclration pour une application comportant
une fraction paralllise de P%. L aussi on supposera quun overhead de
0.5% en communication est ajout chaque fois que le nombre de cores
est multipli par 2.
Exercice 4 :
Le programme suivant un calcul sur les vecteurs de flottants en double prcision (64 bits). En utilisant les
directives OpenMP montrez comment il est possible de le parallliser. Quelles sont les variables prives et les
variables partages ?
Quel est le type de paralllisme le plus adquat (dcomposition de domaine, ou dcomposition de tches) ? Est-il
possible dappliquer les 2 dcompositions en mme temps sur ce programme? Si oui, montrer comment ?
a. (2 points) Ecrire un programme en OpenMp qui ralise la recherche dun entier V dans un
tableau T de 1000 valeurs entires en utilisant 4 theads. Comment amliorer les performances
pour arrter la recherche ds que la valeur a t trouve par un thread ?
b. (2 points) Ecrire un programme en OpenMp qui ralise la recherche de la plus grande valeur
dans un tableau T de 1000 lments en utilisant 4 threads.
Dans cette question il faut utiliser :
#pragmaompcritical(update_max)
//updatemaxreprsentelenomdelasectioncritiqueou
//lemaxestmisjour
{..............}