feat. GPT-4o

  1. Cache block size (B) can affect both miss rate and miss latency. Assuming a machine with a base CPI of 1, and an average of 1.35 references (both instruction and data) per instruction, find the block size that minimizes the total miss latency given the following miss rates for various block sizes.

    image.png

    1.1 [10] What is the optimal block size for a miss latency of 20 ×B cycles?

    instruction당 miss penalty = miss_rate x miss_latency x Memory Access per instruction

    → 1.35 x miss_rate x 20 x block_size이므로 각 case의 penalty를 계산하면 아래와 같다

    1. 1.35 x 0.04 x 20 x 8 = 8.64 ← minimum
    2. 1.35 x 0.03 x 20 x 16 = 12.96
    3. 1.35 x 0.02 x 20 x 32 = 17.28
    4. 1.35 x 0.015 x 20 x 64 = 25.92
    5. 1.35 x 0.01 x 20 x 128 = 34.56

    1.2 [10] What is the optimal block size for a miss latency of 24 +B cycles?

    반대로 이 경우에는 latency가 고정돼있어서 Block Size에 따라 Penalty가 linear하진 않고, 계산하면 아래와 같다

    1. 1.35 x 0.04 x (24 + 8) = 1.728
    2. 1.35 x 0.03 x (24 + 16) = 1.620
    3. 1.35 x 0.02 x (24 + 32) = 1.512 ← minimum
    4. 1.35 x 0.015 x (24 + 64) = 1.782
    5. 1.35 x 0.01 x (24 + 128) = 2.052

    1.3 [10] For constant miss latency, what is the optimal block size?

    Block Size에 관계 없다면 1.35x0.01xB 값인 128Byte Cache가 최적일 것 같다

  2. In this exercise, we will examine how replacement policies affect miss rate. Assume a two-way set associative cache with four one-word blocks. Consider the following word address sequence: 0, 1, 2, 3, 4, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7, 0.

    Consider the following address sequence: 0, 2, 4, 8, 10, 12, 14, 16, 0

    5.20.1 [5] Assuming an LRU replacement policy, which accesses are hits?

    5.20.2 [5] Assuming an MRU (most recently used) replacement policy, which accesses are hits?

    Sequence Replacement Policy Step Address Set Index Result Set 0 Set 1
    Sequence 1 LRU 0 0 0 Miss [0] []
    Sequence 1 LRU 1 1 1 Miss [0] [1]
    Sequence 1 LRU 2 2 0 Miss [0, 2] [1]
    Sequence 1 LRU 3 3 1 Miss [0, 2] [1, 3]
    Sequence 1 LRU 4 4 0 Miss [2, 4] [1, 3]
    Sequence 1 LRU 5 2 0 Hit [4, 2] [1, 3]
    Sequence 1 LRU 6 3 1 Hit [4, 2] [1, 3]
    Sequence 1 LRU 7 4 0 Hit [2, 4] [1, 3]
    Sequence 1 LRU 8 5 1 Miss [2, 4] [3, 5]
    Sequence 1 LRU 9 6 0 Miss [4, 6] [3, 5]
    Sequence 1 LRU 10 7 1 Miss [4, 6] [5, 7]
    Sequence 1 LRU 11 0 0 Miss [6, 0] [5, 7]
    Sequence 1 LRU 12 1 1 Miss [6, 0] [7, 1]
    Sequence 1 LRU 13 2 0 Miss [0, 2] [7, 1]
    Sequence 1 LRU 14 3 1 Miss [0, 2] [1, 3]
    Sequence 1 LRU 15 4 0 Miss [2, 4] [1, 3]
    Sequence 1 LRU 16 5 1 Miss [2, 4] [3, 5]
    Sequence 1 LRU 17 6 0 Miss [4, 6] [3, 5]
    Sequence 1 LRU 18 7 1 Miss [4, 6] [5, 7]
    Sequence 1 MRU 0 0 0 Miss [0] []
    Sequence 1 MRU 1 1 1 Miss [0] [1]
    Sequence 1 MRU 2 2 0 Miss [0, 2] [1]
    Sequence 1 MRU 3 3 1 Miss [0, 2] [1, 3]
    Sequence 1 MRU 4 4 0 Miss [0, 4] [1, 3]
    Sequence 1 MRU 5 2 0 Miss [0, 2] [1, 3]
    Sequence 1 MRU 6 3 1 Hit [0, 2] [1, 3]
    Sequence 1 MRU 7 4 0 Miss [0, 4] [1, 3]
    Sequence 1 MRU 8 5 1 Miss [0, 4] [1, 5]
    Sequence 1 MRU 9 6 0 Miss [0, 6] [1, 5]
    Sequence 1 MRU 10 7 1 Miss [0, 6] [1, 7]
    Sequence 1 MRU 11 0 0 Hit [6, 0] [1, 7]
    Sequence 1 MRU 12 1 1 Hit [6, 0] [7, 1]
    Sequence 1 MRU 13 2 0 Miss [6, 2] [7, 1]
    Sequence 1 MRU 14 3 1 Miss [6, 2] [7, 3]
    Sequence 1 MRU 15 4 0 Miss [6, 4] [7, 3]
    Sequence 1 MRU 16 5 1 Miss [6, 4] [7, 5]
    Sequence 1 MRU 17 6 0 Hit [4, 6] [7, 5]
    Sequence 1 MRU 18 7 1 Hit [4, 6] [5, 7]
    Sequence 2 LRU 0 0 0 Miss [0] []
    Sequence 2 LRU 1 2 0 Miss [0, 2] []
    Sequence 2 LRU 2 4 0 Miss [2, 4] []
    Sequence 2 LRU 3 8 0 Miss [4, 8] []
    Sequence 2 LRU 4 10 0 Miss [8, 10] []
    Sequence 2 LRU 5 12 0 Miss [10, 12] []
    Sequence 2 LRU 6 14 0 Miss [12, 14] []
    Sequence 2 LRU 7 16 0 Miss [14, 16] []
    Sequence 2 LRU 8 0 0 Miss [16, 0] []
    Sequence 2 MRU 0 0 0 Miss [0] []
    Sequence 2 MRU 1 2 0 Miss [0, 2] []
    Sequence 2 MRU 2 4 0 Miss [0, 4] []
    Sequence 2 MRU 3 8 0 Miss [0, 8] []
    Sequence 2 MRU 4 10 0 Miss [0, 10] []
    Sequence 2 MRU 5 12 0 Miss [0, 12] []
    Sequence 2 MRU 6 14 0 Miss [0, 14] []
    Sequence 2 MRU 7 16 0 Miss [0, 16] []
    Sequence 2 MRU 8 0 0 Hit [16, 0] []