Вычислить среднее время загрузки - PullRequest
0 голосов
/ 03 февраля 2019

Компьютер имеет кеш, основную память и жесткий диск.Если упомянутое слово находится в кэше, для доступа к нему требуется 15 нс.Если он находится в основной памяти, но не в кеше, его загрузка (блок, содержащий) в кеш (требуется время для первоначальной проверки кеша) занимает 85 нс, а затем снова начинается поиск ссылок.Если слово отсутствует в основной памяти, его загрузка (блок, содержащий) с диска в основную память занимает 10 мс, а затем снова начинается поиск ссылок.Коэффициент попадания в кэш составляет 0,4.В случае пропуска кэша вероятность того, что слово находится в основной памяти, составляет 0,7.Вычислить среднее время загрузки.

My Answer

    Given:

    Cache access time = 15 ns
    Cache hit rate = 0.4
    Cache miss rate = 1 – 0.4 = 0.6
    RAM access time = 85 ns
    RAM hit rate = 0.7
    RAM miss rate = 1 – 0.7 = 0.3
    Disk access time = 10ms = 10000000 ns



    >  Average access time = (cache access time x cache hit rate) + (cache
    > miss rate) x (RAM access time + RAM hit rate) + (cache miss rate x ram
    > miss rate x disk access time)
    >     = (15*0.4) + (0.6)(85*0.7) + (0.6)(0.3)(10000000)
    >     = 1 800 041,7 ns

Ответы [ 3 ]

0 голосов
/ 17 февраля 2019

Пожалуйста, поделитесь ответами на первые три вопроса в задании здесь, если вы сделали их ..: P

For this question answer is :

Cache access time = 15ns
Memory access time = 85ns +15ns = 100ns
Disk access time = 10x106 + 100ns = 10000100ns
Average load time = 0.4 x 15ns + 0.6[0.7 x 100ns + 0.3(10000100ns)]
Average load time =     6 +0.6(70 + 3000030) = 6 + 1800060
Average load time = 1800066ns = 1.8ms
0 голосов
/ 19 февраля 2019

Если он находится в основной памяти, но не в кеше, его загрузка (блок, содержащий) в кеш занимает 85 нс (включая время первоначальной проверки кеша).

Вы не делаетене нужно добавлять 85 (память) и 15 (кэш)

На этот вопрос ответ:

Cache access time = 15ns
Memory access time = 85ns
Disk access time = 10x106 + 85ns = 1000085ns
Average load time = 0.4 x 15ns + 0.6[0.7 x 85ns + 0.3(1000085ns)]
Average load time =     6 +0.6(59.5 + 3000025.5) = 6 + 1800051
Average load time = 1800057ns = 1.8ms
0 голосов
/ 16 февраля 2019

Я надеюсь, что вы наслаждаетесь классом компьютерных систем в Биркбеке ...; P

Я думаю, что вы что-то упустили, хотя:

(1) Вы предполагаете, что 10 мс включают начальную проверкукеша (он указал его для 85 нс, но не для 10 мс, так что добавил бы это, чтобы быть в безопасности)

(2) Он говорит, что справочный поиск снова запускается после загрузки в кеш и основную памятьсоответственно ... Так что из вопроса я понимаю, что слова могут быть доступны только из кэша (иначе зачем беспокоиться о 85 нс?).Следовательно, я думаю, вам нужно добавить время, необходимое для загрузки его в кэш из основной памяти при получении с диска изначально.Кроме того, хотя я не совсем уверен в этом, так как он немного неоднозначный, я думаю, что вам нужно добавить еще 15 нс для слова, к которому нужно обращаться в кеш после его загрузки из основной памяти ...

Интересно услышать некоторые мысли

...