Enhancing the Malloc System with Pollution Awareness for Better Cache Performance | IEEE Journals & Magazine | IEEE Xplore

Enhancing the Malloc System with Pollution Awareness for Better Cache Performance


Abstract:

Cache pollution, by which weak-locality data unduly replaces strong-locality data, may notably degrade application performance in a shared-cache multicore machine. This p...Show More

Abstract:

Cache pollution, by which weak-locality data unduly replaces strong-locality data, may notably degrade application performance in a shared-cache multicore machine. This paper presents NightWatch, a cache management subsystem that provides general, transparent and low-overhead pollution control to applications. NightWatch is based on the observation that data within the same memory chunk or chunks within the same allocation context often share similar locality property. NightWatch embodies this observation by online monitoring current cache locality to predict future behavior and restricting potential cache polluters proactively. We have integrated NightWatch into two popular allocators, tcmalloc and ptmalloc2. Experiments with SPEC CPU2006 show that NightWatch improves application performance by up to 45 percent (18 percent on average), with an average monitoring overhead of 0.57 percent (up to 3.02 percent).
Published in: IEEE Transactions on Parallel and Distributed Systems ( Volume: 28, Issue: 3, 01 March 2017)
Page(s): 731 - 745
Date of Publication: 07 July 2016

ISSN Information:

Funding Agency:


1 Introduction

Modern multicore processors usually have a shared last level cache, where all cores place their data to improve cache utilization. This, however, creates a new challenge of cache management, due to cache pollution. One major problem is that data with weak locality may unduly evict other data with strong locality, if both are mapped into the same cache set  [1], [2], [3], [4], [5], [6].

Contact IEEE to Subscribe

References

References is not available for this document.