1 / 14

Parallel and Distributed Simulation

Parallel and Distributed Simulation. Hardware Platforms Simulation Fundamentals. Outline. Hardware Platforms Parallel computers Distributed computers Simulation Fundamentals State Time Time flow mechanisms. Parallel Computers. Distributed Computers. Physical extent. Machine room.

powellt
Télécharger la présentation

Parallel and Distributed Simulation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Parallel and Distributed Simulation Hardware Platforms Simulation Fundamentals

  2. Outline • Hardware Platforms • Parallel computers • Distributed computers • Simulation Fundamentals • State • Time • Time flow mechanisms

  3. Parallel Computers Distributed Computers Physical extent Machine room Building, city, global Processors Homogeneous Often heterogeneous Comm. Network Custom switch Commercial LAN / WAN Comm. Latency (small messages) A few to tens of microseconds hundreds of microseconds to seconds Parallel and Distributed Computers • Parallel computers (tightly coupled processors) • Shared memory multiprocessors • Distributed memory multicomputers • Distributed computers (loosely coupled processors) • Networked workstations

  4. CPU CPU CPU . . . cache cache cache interconnection network . . . memory memory I/O devices programming model: shared variables; synchronization via locks { shared int i; L … Lock (L) i = i + 1; Unlock (L) … } { shared int i, L … Lock (L) i = i + 1; Unlock (L) … } Processor 1 Processor 2 Shared Memory Multiprocessors Examples: Sun Enterprise; SGI Origin

  5. CPU CPU memory memory cache cache . . . communications controller communications controller Interconnection network programming model: no shared variables; message passing {int i; … Send (2, &i, sizeof(int)) … } {int j; … Receive (&j, sizeof(int)); … } Processor 1 Processor 2 Distributed Memory Multicomputers Examples: IBM SP, Intel Paragon

  6. Outline • Hardware Platforms • Parallel computers • Distributed computers • Simulation Fundamentals • State • Time • Time flow mechanisms

  7. Simulation Fundamentals A computer simulation is a computer program that models the behavior of a physical system over time. • Program variables (state variables) represent the current state of the physical system • Simulation program modifies state variables to model the evolution of the physical system over time.

  8. physical system: the actual or imagined system being modeled • simulation: a system that emulates the behavior of a physical system physical system simulation main() { ... double clock; ... } Time • physical time: time in the physical system • Noon, December 31, 1999 to noon January 1, 2000 • simulation time: representation of physical time within the simulation • floating point values in interval [0.0, 24.0] • wallclock time: time during the execution of the simulation, usually output from a hardware clock • 9:00 to 9:15 AM on September 10, 1999

  9. Simulation Time Simulation time is defined as a totally ordered set of values where each value represents an instant of time in the physical system being modeled. For any two values of simulation time T1 representing instant P1, and T2 representing P2: • Correct ordering of time instants • If T1 < T2, then P1 occurs before P2 • 9.0 represents 9 PM, 10.5 represents 10:30 PM • Correct representation of time durations • T2 - T1 = k (P2 - P1) for some constant k • 1.0 in simulation time represents 1 hour of physical time

  10. Paced vs. Unpaced Execution Modes of execution • As-fast-as-possible execution (unpaced): no fixed relationship necessarily exists between advances in simulation time and advances in wallclock time • Real-timeexecution (paced): each advance in simulation time is paced to occur in synchrony with an equivalent advance in wallclock time • Scaled real-time execution (paced): each advance in simulation time is paced to occur in synchrony with S * an equivalent advance in wallclock time (e.g., 2x wallclock time) Simulation Time = W2S(W) = T0 + S * (W - W0) W = wallclock time; S = scale factor W0 (T0) = wallclock (simulation) time at start of simulation (assume simulation and wallclock time use same time units)

  11. computer simulation discrete models continuous models event driven time- stepped Simulation Taxonomy • Continuous time simulation • State changes occur continuously across time • Typically, behavior described by differential equations • Discrete time simulation • State changes only occur at discrete time instants • Time stepped: time advances by fixed time increments • Event stepped: time advances occur with irregular increments

  12. state variables state variables simulation time simulation time time stepped execution event driven execution Time Stepped vs. Event Stepped Goal: compute state of system over simulation time

  13. Time Stepped Execution (Paced) While (simulation not completed) { Wait Until (W2S(wallclock time) ≥ current simulation time) Compute state of simulation at end of this time step Advance simulation time to next time step }

  14. Summary • Hardware Platforms • Tightly coupled multiprocessors: fast communication • Networked workstations: larger message latencies • Important to distinguish among simulation time, wallclock time, and time in the physical system • Paced execution (e.g., immersive virtual environments) vs. unpaced execution (e.g., simulations to analyze systems) • Continuous and discrete simulation use different execution paradigms, time advance mechanisms • Time stepped vs. event stepped • Here, focus on discrete event simulations

More Related