Advanced Numerical Techniques of Performance Evaluation. Volume 2

Abstract

The conservative (Bryant-Chandy-Misra) parallel simulation paradigm was originally developed in a distributed system setting. However, the recent widespread availability of relatively inexpensive, medium-scale shared memory multiprocessors encourages a re-examination of traditional approaches to its implementation. Many of the obstacles to good performance, such as communication delay, sub-optimal model partitioning, artificial blocking, and the high cost of deadlock avoidance, deadlock detection, and deadlock recovery, can be reduced or even eliminated in a shared-memory implementation. This paper presents a number of techniques for efficient in a shared memory parallel simulation. All of these techniques have been implemented in Synapse, an integrated programming environment/run-time system that supports efficient parallel discrete-event simulation on shared-memory multiprocessors. A new technique for artificial blocking and deadlock avoidance, lazy blocking avoidance, is built directly into Synapse's multi-threaded run-time kernel. The Synapse run-time system also contains mechanisms for efficiently detecting and breaking the few deadlocks that are not prevented by lazy blocking avoidance. Our performance results are substantially better than those reported in previous empirical studies in this area, enough to challenge their negative conclusions about the feasibility of the conservative approach to parallel simulation.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jun 01, 1990
Accession Number
ADA230293

Entities

Organizations

  • University of Washington

Tags

Communities of Interest

  • Biomedical
  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Application Software
  • Communication Channels
  • Computer Networks
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Information Processing
  • Information Science
  • Lisp Programming Language
  • Monte Carlo Method
  • Network Science
  • Operating Systems
  • Parallel Computing
  • Probabilistic Models
  • Programming Languages
  • Random Variables

Fields of Study

  • Computer science
  • Engineering

Readers

  • Parallel and Distributed Computing.
  • Robotics and Automation.
  • Systems Analysis and Design