Parallelized direct execution simulation of message-passing parallel programs

Phillip M. Dickens, Philip Heidelberger, David M. Nicol

Research output: Contribution to journalArticlepeer-review

Abstract

As massively parallel computers proliferate, there is growing interest in finding ways by which performance of massively parallel codes can be efficiently predicted. This problem arises in diverse contexts such as parallelizing compilers, parallel performance monitoring, and parallel algorithm development. In this paper, we describe one solution where one directly executes the application code, but uses a discrete-event simulator to model details of the presumed parallel machine, such as operating system and communication network behavior. Because this approach is computationally expensive, we are interested in its own parallelization, specifically the parallelization of the discrete-event simulator. We describe methods suitable for parallelized direct execution simulation of message-passing parallel programs, and report on the performance of such a system, LAPSE (Large Application Parallel Simulation Environment), we have built on the Intel Paragon. On all codes measured to date, LAPSE predicts performance well, typically within 10% relative error. Depending on the nature of the application code, we have observed low slowdowns (relative to natively executing code) and high relative speedups using up to 64 processors.

Original languageEnglish (US)
Pages (from-to)1090-1105
Number of pages16
JournalIEEE Transactions on Parallel and Distributed Systems
Volume7
Issue number10
DOIs
StatePublished - 1996
Externally publishedYes

Keywords

  • Architectural simulation
  • Contention
  • Direct execution simulation
  • MIMD
  • Message-passing programs
  • Parallel simulation
  • Synchronization

ASJC Scopus subject areas

  • Signal Processing
  • Hardware and Architecture
  • Computational Theory and Mathematics

Fingerprint

Dive into the research topics of 'Parallelized direct execution simulation of message-passing parallel programs'. Together they form a unique fingerprint.

Cite this