ECMon: exposing cache events for monitoring

Vijay Nagarajan, Rajiv Gupta

Research output: Chapter in Book/Report/Conference proceedingConference contribution


The advent of multicores has introduced new challenges for programmers to provide increased performance and software reliability. There has been significant interest in techniques that use software speculation to better utilize the computational power of multicores. At the same time, several recent proposals for ensuring software reliability are not applicable in a multicore setting due to their inability to handle interprocessor shared memory dependences (ISMDs). The demands for performing speculation and ensuring software reliability in a multicore setting, although seemingly different, share a common requirement: the need for monitoring program execution and collecting interprocessor dependence information at low overhead. For example, an important component of speculation is the effcient detection of missspeculation which in turn requires dependence information. Likewise, tasks that help ensure software reliability on multicores, including recording for replay, require ISMD information.

In this paper, we propose ECMon: support for exposing cache events to the software. This enables the programmer to catch these events and react to them; in effect, efficiently exposing the ISMDs to the programmer. In the context of speculation, we show how ECMon optimizes the detection of miss-speculation; we use this simple support to speculate past active barriers and achieve a speedup of 12% for the set of parallel programs considered. As an application of ensuring software reliability, we show how ECMon can be used to record shared memory dependences on multicores using no specialized hardware support at only 2.8 fold execution time overhead.
Original languageEnglish
Title of host publicationISCA '09 Proceedings of the 36th annual international symposium on Computer architecture
Number of pages12
ISBN (Print)978-1-60558-526-0
Publication statusPublished - 2009


  • cache events
  • recording for replay
  • speculation past barriers


Dive into the research topics of 'ECMon: exposing cache events for monitoring'. Together they form a unique fingerprint.

Cite this