in CO and Architecture edited by
2,210 views
9 votes
9 votes
A system has cache main memory and disk for virtual memory. If referenced word in cache $30$ ns to access it. If it is not in cache $80$ ns to load it in cache and reference is started again. If the word not in memory then $22$ms to bring from disk to memory and $80$ ns from memory to cache and start again. Cache hit ratio is $0.8$ memory hit ratio is $0.9$
in CO and Architecture edited by
2.2k views

2 Comments

What this question is asking?
0
0
This qstn is asking about Average access Time .
1
1

3 Answers

3 votes
3 votes
Best answer
In this question nothing is mention about search time inside memory and disk, so we safely ignore search time .

so that average access time is :

cache access time + MM access time + Disk access time

$$\begin{align*} & 0.8 * 30 \text{ ns } \\ &+ 0.18 * \left ( 30 + 80 \right ) \text{ ns } \\ &+ 0.02 * \left ( 30 + 80 + 22000000 \right ) \text{ ns } \\ &=\bf 440046 \text{ ns } \\ \end{align*}$$

in each above case , cache  and MM and disk we consider search time to find that referenced word = 0  .
edited by
by

2 Comments

From where you have used 0.18.....
0
0
it is (1-0.8)*0.9 = 0.18
0
0
8 votes
8 votes

Total time = Cache Access + Memory Access + Disk Access

= Cache time + Cache Miss * (Transfer from Memory to cache + 2nd Cache reference ) + Cache Miss * Memory Miss ( Fetch Disk + Transfer from Disk to Memory )
= 30 + 0.20*(80+30) + 0.20*0.10(80 + 22,000,000)
=30 + 22 + 440001.6
= 440053.60 ns
$\approx 440 \mu s$
 

4 Comments

0.8 * (30) + 0.2 (0.9 * (80+30) + 0.1 (80+30+22000000) )=440026ns

ans should be like this, isn't it?

i'm not getting logic here....can u explain further?
0
0
you can expand that 0.8 * 30 + 0.2 * 30 = 30 - we can rewrite like this also. But given answer is wrong due to "ms".
1
1
what about it ratio for cache
0
0
1 vote
1 vote
I did something Like this

 

0.8*30 + 0.2*0.9*(80+30) + 0.2 *0.1*(80+30 + (22000000))=440046 ns.
Answer:

Related questions