Changes between Version 13 and Version 14 of AS6-TME-B4


Ignore:
Timestamp:
Mar 20, 2022, 7:09:31 PM (3 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AS6-TME-B4

    v13 v14  
    33<h1><font size=+2> Cache L1 à correspondance directe - performance</font></h1>
    44}}}
    5 {{{#!protected
    65
    76[[Image(htdocs:img/hard_almo1_mono.png, align=right,width=250)]]
     
    188187
    189188* En outre, en utilisant l'argument `-STATS` pour le simulateur, vous pouvez obtenir les statistiques sur les taux de MISS des caches et le CPI. La commande `make cachestats NICACHESET=1 NDCACHESET=1` lance de simulateur avec les caches instructions et données de 1 case, et le simulateur génère le fichier `stats.txt` contenant les informations statistiques listées ci-après. Ces informations sont fabriqués à partir de compteurs dans la plateforme, relevés tous les 10 cycles qui caractérisent l'activité des caches.[[BR]]Chaque ligne de ce fichier de `stats.txt` contient 8 valeurs :[[BR]][[BR]]
    190   1. Le nombre de cycles simulés depuis le démarrage de la machine (incrément de 10 à chaque ligne),
     189  1. Le nombre de cycles simulés depuis le démarrage de la machine (incrément de 10),
    191190  1. Le nombre d'instructions exécutées depuis le démarrage de la machine,
    192191  1. Le nombre de MISS sur le cache d'instructions depuis le démarrage de la machine,
     
    206205$ export SOCLIB_TTY=TTY
    207206}}}
    208 Si vous avez envie de vous challenger, vous pouvez modifier le fichier `Makefile` pour intégrer cette option. Vous pourriez avoir par défaut une utilisation des fenêtres TTY et, de manière optionnel, une utilisation des fichiers. Ce n'est pas très difficile, mais ça vous oblige à lire le Makefile (il y a une ligne à ajouter et une à modifier, c'est tout).
     207Si vous avez envie de vous challenger, vous pouvez modifier le fichier `Makefile` pour intégrer cette option. Vous pourriez avoir par défaut une utilisation des fenêtres TTY et, de manière optionnel, une utilisation des fichiers. Ce n'est pas très difficile, mais ça vous oblige à lire le Makefile (il y a une ligne dans le fichier à ajouter et une à modifier, c'est tout).
    209208* Vous auriez par exemple:
    210209{{{#!bash
     
    248247
    2492481. Faites varier la taille du cache d'instructions de 4 à 1024 cases par puissance de 2, et notez à chaque fois le CPI et le temps de calcul obtenus. Vous utiliserez comme taille de cache de données `NDCACHESET=1024` (cache de 16 kibi octets).
    250 
    2512492. Faites varier la taille du cache de données de 1 à 1024 cases par puissance de 2, et notez à chaque fois le CPI et le temps de calcul obtenus. Vous utiliserez comme taille de cache d'instructions `NICACHESET=1024` (cache de 16 kibi octets).
    252 
    2532503. Pour cette application logicielle, quelles tailles de caches pensez-vous qu'il faille choisir pour obtenir (approximativement) les taux de MISS correspondant aux hypothèses faites plus haut (4% pour le cache instruction et 8% pour le cache de données) ?
    254251
     
    269266
    270267
    271 * En reprenant vos résultats de l'exercice 2, créez un fichier texte dans lequel vous mettrez à chaque ligne le nombre de lignes du cache d'instructions et la valeur du CPI que vous avez obtenue pour ce nombre. Le format d'une ligne de ce fichier doit être le suivant :
    272 
     268* En reprenant vos résultats de l'exercice **C.2.**, créez un fichier texte dans lequel vous mettrez, à chaque ligne du fichier, le nombre de cases du cache d'instructions et la valeur du CPI que vous avez obtenue pour ce nombre. Le format d'une ligne de ce fichier doit être le suivant :
    273269{{{
    274270...
    275 NB_LIGNES_ICACHE CPI
    276 NB_LIGNES_ICACHE CPI
    277 NB_LIGNES_ICACHE CPI
     271NB_CASES_ICACHE CPI
     272NB_CASES_ICACHE CPI
     273NB_CASES_ICACHE CPI
    278274...
    279275}}}
    280276
    281 * Utilisez l'outil `gnuplot` pour visualiser la courbe représentant l'évolution du CPI en fonction de la taille du cache d'instructions.
    282 
    283 * Refaites la même opération pour le cache de données, afin de générer la courbe représentant l'évolution du CPI en fonction de la taille du cache de données.
     2771. Utilisez l'outil `gnuplot` pour visualiser la courbe représentant l'évolution du CPI en fonction de la taille du cache d'instructions.
     2781. Refaites la même opération pour le cache de données, afin de générer la courbe représentant l'évolution du CPI en fonction de la taille du cache de données.