0% ont trouvé ce document utile (0 vote)
14 vues3 pages

Exercices sur les processus et performances CPU

Transféré par

assiazr0
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
14 vues3 pages

Exercices sur les processus et performances CPU

Transféré par

assiazr0
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Solution – Série d'exercice N°1 M2-RSD

EXO1
1)- Définissez brièvement les termes et expression suivants : processus («process») : et fil d’exécution («thread») ;
Solution: Un processus est caractérisé par un espace d’adresses ainsi qu’un fil d’exécution.
Un fil d’exécution est une unité de programme qui s’exécute séquentiellement. Les espaces d’adresses de processus
différents sont toujours disjoints. Plusieurs fils d’exécution peuvent être créés à l’intérieur d’un même processus ; ils se
partagent alors le même. espace d’adresses.

2)- Décrivez ce qu’est un système à mémoire partagée et un système à mémoire distribuée.


Solution: En mémoire partagée, on parle de multiprocesseurs. La mémoire partagée permet à chaque processeur
d’accéder directement à toute la mémoire de façon transparente. Partager la mémoire entre tous les processeurs permet
de travailler avec des variables globales et d’économiser la mémoire. Sur un ordinateur standard, la mémoire est dite
partagée. En mémoire distribuée, on parle de multi-ordinateurs. La mémoire distribuée n’est accessible directement qu’à
partir des processeurs auxquels elle est rattachée (donc localement sur une machine donnée).

EXO2 : Un programme est composé de


a. 43 % d’instructions arithmétiques et logiques avec un CPI égale à 1.
b. 21 % d’instructions de chargement avec un CPI égale à 2.
c. 12 % d’ins tructions de rangement avec un CPI égale à 2.
d. 24 % d’instructions de branchement avec un CPI égale à 2.

2 – 1 Calculer le CPI moyen.


CPI = 0.43 * 1 + 0.21 * 2 + 0.12 * 2 + 0.24 *2 CPI = 1.57

2 – 2 Calculer le débit MIPS sachant que la fréquence horloge du CPU est 500 Mhz.
MIPS = 500 / 1.57 106 = 318.5

2 – 3 Le compilateur qui utilise cette machine supprime 50 % des instructions UAL. On suppose
qu’un cycle horloge dure 2 ns. Quel est le débit MIPS du code optimisé ?

MIPSo = FH / CPIo 106

EXO3 :
3. Voici les temps mesurés pour deux programmes. Ces programmes exécutent 100 millions d’opérations
flottantes.
Machine A Machine B Machine C
Programme 1 1 10 20
Programme 1 1000 100 20
Total 1001 110 40

La moyenne harmonique reflète fidèlement les performances relatives du temps d’exécution.


EXO4 : On dispose d’un processeur avec une horloge de 250 Mhz dont le comportement est comme suit :
Type d’instruction Fréquence d’occurrence Temps moyen d’exécution d’une instruction en ns
UAL 45 % 3
Chargement 22 % 20
Rangement 14 % 8
Branchement 19 % 6

EXO 5 : On dispose d’un dispositif qui permet de rendre une machine 10 fois plus rapide que celle de base.
Sachant, qu’on peut utiliser ce dispositif uniquement 40 % du temps, quelle est l’accélération totale obtenue
?

EXO6: Soit le programme suivant :


int main () {
funcA(); //fonction séquentielle
funcB(data); //fonction parallélisable
}
La fonction funcA s’exécute en 12 secondes et la fonction funcB s’exécute en 8n secondes, où n représente la taille des
données data à traiter. La fonction A est entièrement séquentielle et la fonction B peut se paralléliser parfaitement.
-calculez le speedup , théorique d’une version parallèle de ce programme avec la loi d’Amdhal en supposant que la
taille des données à traiter n est fixée à 4.

Vous aimerez peut-être aussi