Two-phase trace-driven simulation (TPTS): a fast multicore processor architecture simulation approach

  • Authors:
  • Hyunjin Lee;Lei Jin;Kiyeon Lee;Socrates Demetriades;Michael Moeng;Sangyeun Cho

  • Affiliations:
  • Department of Computer Science, University of Pittsburgh, Pittsburgh, PA 15260, U.S.A.;Department of Computer Science, University of Pittsburgh, Pittsburgh, PA 15260, U.S.A.;Department of Computer Science, University of Pittsburgh, Pittsburgh, PA 15260, U.S.A.;Department of Computer Science, University of Pittsburgh, Pittsburgh, PA 15260, U.S.A.;Department of Computer Science, University of Pittsburgh, Pittsburgh, PA 15260, U.S.A.;Department of Computer Science, University of Pittsburgh, Pittsburgh, PA 15260, U.S.A.

  • Venue:
  • Software—Practice & Experience
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Simulation is indispensable in computer architecture research. Researchers increasingly resort to detailed architecture simulators to identify performance bottlenecks, analyze interactions among different hardware and software components, and measure the impact of new design ideas on the system performance. However, the slow speed of conventional execution-driven architecture simulators is a serious impediment to obtaining desirable research productivity. This paper describes a novel fast multicore processor architecture simulation framework called Two-Phase Trace-driven Simulation (TPTS), which splits detailed timing simulation into a trace generation phase and a trace simulation phase. Much of the simulation overhead caused by uninteresting architectural events is only incurred once during the cycle-accurate simulation-based trace generation phase and can be omitted in the repeated trace-driven simulations. We report our experiences with tsim, an event-driven multicore processor architecture simulator that models detailed memory hierarchy, interconnect, and coherence protocol based on the TPTS framework. By applying aggressive event filtering, tsim achieves an impressive simulation speed of 146 millions of simulated instructions per second, when running 16-thread parallel applications. Copyright © 2010 John Wiley & Sons, Ltd.