Question

Question 1: Qu'est-ce que le temps d'accès moyen d'un système de mémoire à 3 niveaux avec le temps d'accès T_1 $ $, 2T_1 $ $ $ $ et 3T_1? (Taux de réussite $ h-1 = $ H_2 $ = 0,9)

La solution donnée est: 0,9 $ [T_1] + 0,1 (0,9 [2 * T_1] + 0,1 [3 * T_1]) = 1,11 [T_1] $ (Méthode 1)

Ici, ils ont examiné la page ne sera pas copié au niveau inférieur. Dans le cas contraire, il aurait été comme suit

If a page is not there in cache, it would be copied from main memory to cache and then accessed. $ T_1 + 2T_1 $

If a page is not there even in main memory, it would be brought to main memory, then cache and then accessed. $ T_1 + 2T_1 + 3T_1 $

0,9 $ [T_1] + 0,1 (0,9 [T_1 + 2 * T_1] + 0,1 [T_1 + 2 * T_2 + 3 * T_1]) = 1,23 [T_1] $ (Méthode 2)

je suis passé par un autre problème similaire.

Question 2

Cache Access Time = 20ns
Memory Access Time = 120ns
Hit Ratio = 0.8
Some other useless information below...
Cache Block size = 16 words
Set size = 2 blocks
Number of sets = 128
Size of main memory address = 21bits
What is the hit ratio if the average access time is increased by 40ns?
(A) Remains same      (B) 0.921     (C) 0.467      (D) 0.592

I simplement calculé à l'aide de Méthode 1 comme suit

Effective access time = 0.8*20 + 0.2*(120) = 40ns
Increase by 40ns, so new time = 80ns
80 = h*20 + (1-h)*120
Hit ratio = 0.4

Mais ce n'est pas dans les options

Mais quand je calculé à l'aide de Méthode 2

Effective access time = 0.8*20 + 0.2*(20 + 120) = 44ns
Increase by 40ns, so new time = 84ns
84 = h*20 + (1-h)*120
Hit ratio = 0.467

C'est l'option (C)

Ici, la réponse est à venir en utilisant la méthode 2, mais dans la question ci-dessus, ils sont en utilisant la méthode 1.

Comment puis-je savoir quelle méthode de prendre tout en résolvant ces problèmes? Que serait la page manquée soit amené dans la mémoire inférieure (cache) ou non?

Était-ce utile?

La solution

Je pense que le with some other useless information... partiel dans votre cahier des charges de problème doit contenir des informations sur la résolution de votre problème. Comme je tentais de calculer les chiffres que vous avez trouvé des erreurs que je, et je pensais qu'il doit y avoir plus d'entrée. Permettez-moi tout d'abord vous expliquer:

Vos formules sont incorrectes pour les Method 1 et Method 2. Lorsque vous accédez à un certain niveau de mémoire que vous accédez toujours à ce niveau, et non avec une probabilité! Explication va quelque chose comme ceci: Vous ACCÈS $ L1 $, si vous MISS (une certaine probabilité), vous allez à $ L2 $. Sur $ L2 vous $ à nouveau faire un accès, et si vous MISS (avec une certaine probabilité), vous passez à $ L3) ...

Method 1 avec votre premier problème serait la suivante: $$ [T1] 0,1 ([2 * T1] + 0,1 * [3 * T1]) = 1,23 [T1] $$

Method 2 pour premier problème: $$ [T1] 0,1 ([T1 + 2 * T1] 0,1 [T1 + 2 * T1 + 3 * T1]) = 1,36 [T1] $$

Alors regardant maintenant à votre deuxième problème, vous pouvez le résoudre en utilisant Method 1:

Nouvelle méthode 1

Effective access time = 20 + 0.2*(120) = 44ns
Increase by 40ns, so new time = 84ns
84 = 20 + (1-h)*120
Hit ratio = 0.467

Notez que là, je suppose que vous avez fait une erreur avec réponse $ (C) $ dans la description du problème (ce n'est pas 0,4467 $ $, mais il est 0,467 $ $).

Maintenant, si vous auriez des pénalités de manquer définies dans votre déclaration de problème, vous pouvez ensuite utiliser Method 2. Mlle pénalité dit juste, que si vous ne recevez pas le résultat de votre niveau actuel, vous devez copier à partir du niveau supérieur. Supposons maintenant, que la peine de manquer le deuxième niveau est 300ns (ce qui signifie la copie du contenu au niveau 1 et y accédant). Tout le reste demeure inchangé. Les calculs allaient:

Nouvelle méthode 2

Effective access time = 20 + 0.2*(120+0.2*300) = 56ns
Increase by 40ns, so new time = 96ns
96 = 20 + (1-h)*(120+(1-h)*300)
Hit ratio = 0.65840

Une autre mise en garde ... Vous devez utiliser la même formule pour calculer le temps d'accès moyen si vous avez choisi une méthode. (Dans votre Method 2 temps d'accès calculé par Method 2 puis calculé le nouveau taux de succès avec Method 1)

Alors, comment savez-vous quelle méthode choisir? De la description du problème! Si vous avez peine de manquer donné, vous prenez la deuxième approche. Si vous n'avez pas peine de manquer, vous utilisez la première approche.

Autres conseils

Il est un choix de conception pour le cache. Donc, si vous concevez un cache, faire les deux et examiner les conséquences en terme de performance, la complexité de la conception et d'autres impacts afin de faire votre choix.

Si vous essayez prédire pour un cache donné, regardez ses spécifications.

Et notez que cache de toute façon ont souvent un comportement plus complexe que si tout ce qui est le résultat, ne le prenez pas pour une vérité absolue, il y a des facteurs que vous ne prenez pas en compte avec un tel calcul simple d'esprit (grâce des tampons, des prélecture, les conflits de bus, ...)

Licencié sous: CC-BY-SA avec attribution
Non affilié à cs.stackexchange
scroll top