Font Size: a A A

Optimal collaborative caching: Theory and applications

Posted on:2015-04-01Degree:Ph.DType:Dissertation
University:University of RochesterCandidate:Gu, XiaomingFull Text:PDF
GTID:1478390017494739Subject:Computer Science
Abstract/Summary:
On most modern computers, most memory accesses happen in cache, and its usage increasingly affects the performance, stability, and energy consumption of the whole system. The traditional solution divides the memory problem and conquers the pieces separately: software to improve cache locality and hardware to improve cache speed and capacity. A recent approach called collaborative caching breaks the rigid division by allowing software to provide cache hints to influence hardware cache management. In traditional caching, the hardware infers the "importance" of data and manages cache based on the inferred priority. In collaborative caching, software specifies the "importance" of data and changes the priority in which the hardware manages the data. The dissertation presents the theory and applications of optimal collaborative caching. Through software-hardware collaboration, the goal is not to improve existing solutions but to obtain the optimal solution. Toward this goal, I tackle both theoretical and practical issues. I show in theory that efficient hardware similar to the existing cache is sufficient to produce optimal results. Based on the theory, I describe practical techniques on the software side and evaluate the combined solution on both simulated and real hardware.
Keywords/Search Tags:Collaborative caching, Theory, Cache, Hardware, Optimal, Software
Related items