235 views
5 5 votes

A system uses a $\mathbf{2-}$level hierarchical page table for a $32-$bit virtual address space. The page size is $\mathbf{4 ~KB}$. Each Page Table Entry (PTE) at both levels is $\mathbf{4~bytes}$. The system uses a Translation Lookahead Buffer (TLB) with a hit ratio of $\mathbf{9 5 \%}$.

A process is currently executing a loop where it accesses a specific data array. Due to a unique hardware constraint, the first-level page table (Page Directory) is not cacheable in the TLBonly the second-level PTEs are cached.

If a TLB hit takes $\mathbf{2 ~ n s}$ and a single main memory access takes $\mathbf{100 ~ns}$, what is the Effective Memory Access Time (EMAT) in nanoseconds for a memory reference? (Assume the secondlevel page table is always in memory and ignore page faults).

1 Answer

2 2 votes

TLB Hit $(95\%):$ Even on a TLB hit, the hardware constraint says we only cached the $2$nd-level entry. We still have to access the Page Directory in memory.

  • Time $=T L B_{\text {search }}+ Mem _{\text {PageDirectory }}+ Mem _{\text {ActualData }}$
     
  • Time $=2+100+100=202 \mathrm{~ns}$
     

TLB Miss $(5\%):$ Must access Page Directory, then Page Table, then Data.

  • Time $=T L B_{\text {search }}+ Mem _{\text {PageDirectory }}+ Mem _{\text {PageTable }}+ Mem _{\text {ActualData }}$
     
  • Time $=2+100+100+100=302 \mathrm{~ns}$
     

EMAT: $(0.95 \times 202)+(0.05 \times 302)=191.9+15.1=207 \mathrm{~ns}$.

Answer:
Position:
Show:

Related questions

4 4 votes
1 1 answer
365
365 views
GO Classes asked Feb 10
365 views
Consider a system with a $\mathbf{48}$-bit virtual address, $\mathbf{36}$-bit physical address, and a page size of $\mathbf{16}$ KB. The system implements an Inverted Pag...
1 1 vote
1 1 answer
226
226 views
GO Classes asked Feb 10
226 views
Consider a uniprocessor system with three processes $P_1, P_2$, and $P_3$ arriving at time $t=0$. Each process has a total execution time of $20$ units. The execution pro...
2 2 votes
1 1 answer
240
240 views
GO Classes asked Feb 10
240 views
Consider a system with $3$ processes $P_1, P_2, P_3$ and two resource types $R_1$ and $R_2$.$R_1$ has $\mathbf{2}$ instances. $R_2$ has $\mathbf{2}$ instances.The current...
2 2 votes
1 1 answer
211
211 views
GO Classes asked Feb 10
211 views
Consider a Unix-style Inode-based file system. A specific Inode contains:$12$ Direct Block Pointers $1$ Single Indirect Pointer $1$ Double Indirect Pointer $1$ Triple Ind...