February 12, 2004 Adrienne Noble Week 6 February 12, 2004 Adrienne Noble
Important Dates Due Wednesday, Feb 18 Due Wednesday, Feb 25 Project 3 Experiment Design (emailed to TAs) Homework 6 Due Wednesday, Feb 25 Project 3
Questions? Midterm Project 3 Homework 6
Project 3 Implement an LRU-like page replacement algorithm Design and perform an experiment on page replacement algorithms
The Scientific Method Four steps Observe something Invent a description, or hypothesis Use the hypothesis to make predictions Test those predictions with an experiment Google “scientific method” for more information
Running Experiments Control: what is the baseline? What happens with existing page sizes / page replacement algorithms / no prefetching New test: what happens with the new system? Try to change just one aspect of the system to isolate the difference
Experiment Ideas What is the ideal page size for this trace under different amounts of main memory? How much better is page replacement algorithm X then LRU “Real” LRU, FIFO, 2Q, ARC, etc How close can we come to LRU without doing any work between page faults? No scanning, constant work per page fault How important is recency vs. frequency in predicting page re-use?
Working Set The set of pages that a process currently needs When is a page in the working set? When it has been referenced in the last x references What’s the difference between temporal and spacial locality?
Example for (int i=0; i<1000; i++){ int i = 0; int j = 1; printf(“Hello World”); } int i = 0; int j = 1; int k = 2; i = j + k; printf(“Hello World”); double d = 100; myFunction(d, j); printf(“%d”, k); Temporal locality – locations referenced recently Spacial locality – locations near locations that have been referenced recently