Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Using Pin as a Memory Reference Generator for Multiprocessor Simulation

Technical Report ·
DOI:https://doi.org/10.2172/886014· OSTI ID:886014

In this paper we describe how we have used Pin to generate a multithreaded reference stream for simulation of a multiprocessor on a uniprocessor. We have taken special care to model as accurately as possible the effects of cache coherence protocol state, and lock and barrier synchronization on the performance of multithreaded applications running on multiprocessor hardware. We first describe a simplified version of the algorithm, which uses semaphores to synchronize instrumented application threads and the simulator on every memory reference. We then describe modifications to that algorithm to model the microarchitectural features of the Itanium2 that affect the timing of memory reference issue. An experimental evaluation determines that while cycle-accurate multithreaded simulation is possible using our approach, the use of semaphores has a negative impact on the performance of the simulator.

Research Organization:
ORNL
Sponsoring Organization:
USDOE
DOE Contract Number:
AC05-00OR22725
OSTI ID:
886014
Report Number(s):
R05-124274
Country of Publication:
United States
Language:
English

Similar Records

S-1 multiprocessor system
Conference · Thu Apr 01 23:00:00 EST 1982 · OSTI ID:7056449

Multiprocessor cache design considerations
Conference · Wed Dec 31 23:00:00 EST 1986 · OSTI ID:5546150

Effective use of shared memory multiprocessors
Conference · Mon Feb 15 23:00:00 EST 1988 · OSTI ID:5255016