Consider a machine with a 2-way set associative data cache of size 64 Kbytes…

GATE · 2008 · CS

Consider a machine with a 2-way set associative data cache of size 64 Kbytes and block size 16 bytes. The cache is managed using 32 bit virtual addresses and the page size is 4 Kbytes. A program to be run on this machine begins as follows:

double ARR[1024][1024];
int i, j;
/* Initialize array ARR to 0.0 */
for (i = 0; i < 1024; i++)
    for (j = 0; j < 1024; j++)
        ARR[i][j] = 0.0;

The size of double is 8 bytes. Array ARR is located in memory starting at the beginning of virtual page 0XFF000 and stored in row-major order. The cache is initially empty and no pre-fetching is done. The only data memory references made by the program are those to array ARR.

The cache hit ratio for this initialization loop is

  1. A.

    0%

  2. B.

    25%

  3. C.

    50%

  4. D.

    75%

Attempted by 335 students.

Sign up free to check your answer

Sign up free

Explore the full course: Zero To Hero

Loading lesson…