Optimal Footprint Symbiosis in Shared Cache
2015 15th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing
On multicore processors, applications are run sharing the cache. This paper presents online optimization to colocate applications to minimize cache interference to maximize performance. The paper formulates the optimization problem and solution, presents a new sampling technique for locality analysis and evaluates it in an exhaustive test of 12,870 cases. For locality analysis, previous sampling was two orders of magnitude faster than full-trace analysis. The new sampling reduces the cost by
... uces the cost by another two orders of magnitude. The best prior work improves co-run performance by 56% on average. The new optimization improves it by another 29%. When sampling and optimization are combined, the paper shows that it takes less than 0.1 second analysis per program to obtain a co-run that is within 1.5% of the best possible performance. II. FOOTPRINT-BASED OPTIMAL SYMBIOSIS In this section, we introduce the footprint theory, which we use to compute shared-cache locality. Then we formalize the linearity assumption, which relates shared-cache locality to shared-cache performance. Finally we describe the symbiotic optimization. A. Background: Footprint Theory Given a window, the working set size (WSS) is the amount of data accessed in the window, i.e. the size of the "active"