|M.Sc Student||Agbarya Mohammad|
|Subject||Estimating Application Runtimes Using TLB Performance|
|Department||Department of Computer Science||Supervisor||Dr. Gala Yadgar|
Computer architects frequently use cycle-accurate simulations, a methodology that
suffers from heavy overheads. Recent virtual memory studies therefore increasingly
employ a lighter methodology, which utilizes a partial simulation (of only the memory
subsystem) whose output is fed into a mathematical linear model that predicts execution runtimes. The latter methodology is much faster, but its accuracy is only assumed, never rigorously validated.
We question the assumption and put it to the test by developing Mosalloc, the Mosaic Memory Allocator. Mosalloc backs the virtual memory of applications with
arbitrary combinations of 4KB, 2MB, and 1GB pages (each combination forms a “mosaic” of pages). Previous studies used a single page size per execution?either 4KB or 2MB?to generate exactly two execution samples, which defined the aforementioned linear model. In contrast, Mosalloc allows us to generate numerous samples; we can therefore test instead of merely assume the model’s accuracy. We find that prediction errors of existing models can be as high as 127%-164%. We then propose a new model that bounds the maximal error below 3%, making it more reliable and useful for exploring new ideas.