Fast Accurate Simulation of Large Shared Memory Multiprocessors (Revised version)

Abstract

Fast computer simulation is an essential tool in the design of large parallel computers. Our Fast Accurate Simulation Tool, FAST, is able to accurately simulate large shared memory multiprocessors and their execution of parallel applications at simulation speeds that are one to two orders of magnitude faster than previous comparable simulators. The key ideas involve execution driven simulation techniques that modify the object code of the application program being studied. This produces an augmented version of the code that is directly executed and performs much of the work of the simulation. We extend the previous work by introducing several new uses of code augmentation. In this paper we summarize the tradeoffs made in the designs of this and previous simulators. In previous simulators, these tradeoffs have often led to sacrificing accuracy for faster simulation. However by careful selection of techniques and when to apply them, we have built a simulator that is both faster and more accurate than previous simulation systems. The improved accuracy comes from applying code augmentation techniques at a uniform low level and from having such fast context switching that accuracy/performance tradeoffs become unnecessary. Our simulator has a modular design and has been configured in many ways. It has been used to conduct numerous experiments on multithreaded machine behavior, application behavior, cache behavior, compiler optimization, and traffic patterns. Because of its high performance, we have been able to perform simulations of larger machines than would otherwise have been feasible.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jun 01, 1993
Accession Number
ADA604322

Entities

People

  • Bob Boothe

Organizations

  • University of California, Berkeley

Tags

DTIC Thesaurus Topics

  • Accuracy
  • Application Software
  • Computational Processes
  • Computer Science
  • Computer Simulations
  • Computers
  • Computing-Related Activities
  • Information Operations
  • Multiprocessors
  • Multithreading
  • Object Code
  • Simulations
  • Simulators

Fields of Study

  • Computer science
  • Engineering

Readers

  • Parallel and Distributed Computing.
  • Systems Analysis and Design