Learning objectives
After this class, you should be able to:
- Derive the cache complexity of the cache oblivious algorithm discussed in class.
- Given an algorithm that is cache-inefficient, modify it to make it more efficient.
Reading assignment
- Handout on cache oblivious algorithms.
- Review selection (finding the
k
th largest number from a list onN
numbers).Exercises and review questions
- Questions on current lecture's material
- A typical mergesort implementation uses recursion, leading to a depth first traversal of the mergesort tree. We can alternatively implement it to perform a breadth first traversal. Which implementation will make better use of cache?
- Which of the following algorithms is likely to be the most cache efficient: (i) mergesort, (ii) quicksort, and (iii) heapsort?
- Questions on next lecture's material
- None.