Hi Stefan,
Worst case is when you use only one element within a fetched cache-line, and the rest of the elements in the cache line are not used. Typically with random numbers you get close to it. It need not be random numbers, it can also for example happen with codes having huge strides (remember the assignment with strided STREAM-triad).
For your assignment submission five points were deducted not because you didn't mention the word "random", but because your results for worst case was wrong. You considered the worst case to have only 8 bytes transfer for the indirectly accessed 'v' array. But in the worst case as mentioned above you would have a transfer corresponding to the entire cache line, i.e., L_c bytes. L_c is much bigger than 8 bytes, on Fritz for example it is 64 bytes.
Best,
Christie
Worst case is when you use only one element within a fetched cache-line, and the rest of the elements in the cache line are not used. Typically with random numbers you get close to it. It need not be random numbers, it can also for example happen with codes having huge strides (remember the assignment with strided STREAM-triad).
For your assignment submission five points were deducted not because you didn't mention the word "random", but because your results for worst case was wrong. You considered the worst case to have only 8 bytes transfer for the indirectly accessed 'v' array. But in the worst case as mentioned above you would have a transfer corresponding to the entire cache line, i.e., L_c bytes. L_c is much bigger than 8 bytes, on Fritz for example it is 64 bytes.
Best,
Christie