跳转至

Lecture 5 Sources of Parallelism and Locality in Simulation

Parallel Computer Model

alt text

Parallelism and data locality both critical to performance.

Basic Kinds of Simulation

Actually we can rank a system from discrete to continuous.

  • Discrete Event Systems
  • Particle Systems
  • Lumped variables depending on continuous parameters
    • aka. ODE
  • Continuous variables depending on continuous parameters
    • aka. PDE

Discrete Event Systems

  1. Systems are represented as finite set of variables.
  2. variable at a given time: state
  3. each variable is updated by calling a transition function

System may be:

  • synchronous: at each discrete timestamp evaluate all transition functions; also called a state machine
  • asynchronous: transition functions are evaluated only if the inputs change
    • based on an “event” from another part of the system
    • also called event driven simulation

Approach:

  1. Domain Decomposition - pick shape of domain:
    • Regular Meshes: minimize communication on mesh
    • Graph Partition: load balance + minimize communication
  2. Run each component ahead using:
    • Synchronous: communicate each time stamp
    • Asynchronous: communicate only when necessary
      • Conservative: need deadlock detection
      • Speculative: need rollback if necessary

Others

Ignored in this page