Results 1 - 10
of
152
Virtual time
- ACM Transactions on Programming Languages and Systems
, 1985
"... Virtual time is a new paradigm for organizing and synchronizing distributed systems which can be applied to such problems as distributed discrete event simulation and distributed database concur-rency control. Virtual time provides a flexible abstraction of real time in much the same way that virtua ..."
Abstract
-
Cited by 790 (5 self)
- Add to MetaCart
Virtual time is a new paradigm for organizing and synchronizing distributed systems which can be applied to such problems as distributed discrete event simulation and distributed database concur-rency control. Virtual time provides a flexible abstraction of real time in much the same way that virtual memory provides an abstraction of real memory. It is implemented using the Time Warp mechanism, a synchronization protocol distinguished by its reliance on lookahead-rollback, and by its implementation of rollback via antimessages.
Efficient algorithms for distributed snapshots and global virtual time approximation
- Journal of Parallel and Distributed Computing
, 1993
"... Abstract. This paper presents snapshot algorithms for determining a consistent global state of a distributed system without significantly affecting the underlying computation. These algorithms do not require channels to be FIFO or messages to be acknowledged. Only a small amount of storage is needed ..."
Abstract
-
Cited by 117 (1 self)
- Add to MetaCart
Abstract. This paper presents snapshot algorithms for determining a consistent global state of a distributed system without significantly affecting the underlying computation. These algorithms do not require channels to be FIFO or messages to be acknowledged. Only a small amount of storage is needed. An important application of a snapshot algorithm is Global Virtual Time determination for distributed simulations. The paper proposes new and efficient Global Virtual Time approximation schemes based on snapshot algorithms and distributed termination detection principles. 1
Parallel and Distributed Simulation of Discrete Event Systems
, 1995
"... The achievements attained in accelerating the simulation of the dynamics of complex discrete event systems using parallel or distributed multiprocessing environments are comprehensively presented. While parallel discrete event simulation (DES) governs the evolution of the system over simulated time ..."
Abstract
-
Cited by 97 (16 self)
- Add to MetaCart
The achievements attained in accelerating the simulation of the dynamics of complex discrete event systems using parallel or distributed multiprocessing environments are comprehensively presented. While parallel discrete event simulation (DES) governs the evolution of the system over simulated time in an iterative SIMD way, distributed DES tries to spatially decompose the event structure underlying the system, and executes event occurrences in spatial subregions by logical processes (LPs) usually assigned to different (physical) processing elements. Synchronization protocols are necessary in this approach to avoid timing inconsistencies and to guarantee the preservation of event causalities across LPs. Included in the survey are discussions on the sources and levels of parallelism, synchronous vs. asynchronous simulation and principles of LP simulation. In the context of conservative LP simulation (Chandy/Misra/Bryant) deadlock avoidance and deadlock detection/recovery strategies, Con...
Enabling large-scale simulations: selective abstraction approach to the study of multicast protocols
- In Proceedings of the International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems
, 1998
"... Due to the complexity and scale of the current Internet, large-scale simulations are an increasingly important tool to evaluate network protocol design. Parallel and distributed simulation is one appropriate approach to the simulation scalability problem, but it can require expensive hardware and ha ..."
Abstract
-
Cited by 64 (10 self)
- Add to MetaCart
Due to the complexity and scale of the current Internet, large-scale simulations are an increasingly important tool to evaluate network protocol design. Parallel and distributed simulation is one appropriate approach to the simulation scalability problem, but it can require expensive hardware and have high overhead. In this study, we investigate a complimentary solution to large-scale simulation-- simulation abstraction. Just as a custom simulator includes only details necessary for the task at hand, we show how a general simulator can support configurable levels of detail for different simulations. We develop two abstraction techniques, centralized computation and abstract packet distribution, to abstract network and transport layer protocols. We demonstrate these techniques in multicast simulations and derives centralized multicast and abstract multicast distribution (session multicast). We show that our abstraction techniques each help to gain one order of magnitude in performance improvement (from tens to hundreds to thousands of nodes). Although abstraction simulations are not identical to more detailed simulations, we show that in many cases these differences are small. We show that these differences result in minimal changes in the conclusions drawn from simulations in reliable multicast simulations.
A Spectrum Of Options For Parallel Simulation
- In Proceedings of the 1988 Winter Simulation Conference
, 1988
"... Conventional wisdom has it there are two basic approaches to parallel simulation: conservative (Chandy-Misra) and optimistic (time warp). All known protocols are thought to fall into one of these two classes. This dichotomy is false. There exists a spectrum of options that includes these approaches. ..."
Abstract
-
Cited by 52 (5 self)
- Add to MetaCart
Conventional wisdom has it there are two basic approaches to parallel simulation: conservative (Chandy-Misra) and optimistic (time warp). All known protocols are thought to fall into one of these two classes. This dichotomy is false. There exists a spectrum of options that includes these approaches. We describe a design space that admits these as alternatives, we show how most of the well known parallel simulation approaches can be derived using our design alternatives, and we explore the implications of the existence of the design space we describe. In particular, we note there are many as yet unexplored approaches to parallel simulation. 1. INTRODUCTION Parallel simulation, generally called distributed simulation in the literature, is concerned with the parallel execution of discrete event simulations. Beginning with the research of Chandy and Misra [ChMi79] and Peacock et al. [PeWo79], a number of approaches have been described for coordinating cooperating processes so th...
The Distributed Simulation of Multi-Agent Systems
- Proceedings of the IEEE
, 2000
"... Agent-based systems are increasingly being applied in a wide range of areas including telecommunications, business process modelling, computer games, control of mobile robots and military simulations. Such systems are typically extremely complex and it is often useful to be able to simulate an agent ..."
Abstract
-
Cited by 42 (13 self)
- Add to MetaCart
Agent-based systems are increasingly being applied in a wide range of areas including telecommunications, business process modelling, computer games, control of mobile robots and military simulations. Such systems are typically extremely complex and it is often useful to be able to simulate an agent-based system to learn more about its behaviour or investigate the implications of alternative architectures. In this paper, we discuss the application of distributed discrete-event simulation techniques to the simulation of multi-agent systems. We identify the efficient distribution of the agents' environment as a key problem in the simulation of agent-based systems, and present an approach to the decomposition of the environment which facilitates load balancing.
Heterogeneous Concurrent Modeling and Design in Java (Volumes 1: Introduction to Ptolemy II)
, 2005
"... ..."
The nachos instructional operating system
- Proceedings of the USENIX Winter 1993 Conference
, 1993
"... In teaching operating systems at an undergraduate level,itisvery important toprovide a project that is realistic enough to show how real operating systems work, yet simple enough that the students can understand and modify it in signi cant ways. A number of these instructional systems have been crea ..."
Abstract
-
Cited by 34 (0 self)
- Add to MetaCart
In teaching operating systems at an undergraduate level,itisvery important toprovide a project that is realistic enough to show how real operating systems work, yet simple enough that the students can understand and modify it in signi cant ways. A number of these instructional systems have been created over the last two decades, but recent changes in hardware and software design, along with the increasing power of available computational resources, have changed the basis for many of the tradeo s made by these systems. We have implemented an instructional operating system, called Nachos, and designed a series of assignments to go with it. Our system includes CPU and device simulators, and runs as a regular UNIX process. Nachos illustrates and takes advantage of modern OS technology, such as threads and remote procedure calls, recent hardware advances, such as RISC's and the prevalence of memory hierarchies, and modern software design techniques, such as objectoriented programming and distributed computing. We have used Nachos in the undergraduate operating systems class at Berkeley, with positive results. Nachos is freely available, and we would like to see it widely used for undergraduate instruction. 1
Time Management in the High Level Architecture
- Simulation
, 1998
"... Time management is required in simulations to ensure temporal aspects of the system under investigation are correctly reproduced by the simulation model. This paper describes the time management services that have been defined in the High Level Architecture. The need for time management services is ..."
Abstract
-
Cited by 31 (1 self)
- Add to MetaCart
Time management is required in simulations to ensure temporal aspects of the system under investigation are correctly reproduced by the simulation model. This paper describes the time management services that have been defined in the High Level Architecture. The need for time management services is discussed, as well as design rationales that lead to the current definition of the HLA time management services. These services are described, highlighting information that must flow between federates and the Runtime Infrastructure (RTI) software in order to efficiently implement time management algorithms. 1. Introduction The Defense Modeling and Simulation Office (DMSO), through its High Level Architecture (HLA) initiative, is addressing the continuing need for interoperability between new and existing simulations within the U. S. Department of Defense. The HLA builds upon and generalizes the results of the Distributed Interactive Simulation (DIS) effort (DIS Steering Committee 1994) and...
Restructuring A Parallel Simulation To Improve Cache Behavior In A Shared-Memory Multiprocessor: The Value Of Distributed Synchronization
- In Proc. 7th Workshop on Parallel and Distributed Simulation
, 1991
"... Synchronization is a significant cost in many parallel programs, and can be a major bottleneck if it is handled in a centralized fashion using traditional shared-memory constructs such as barriers. In a parallel time-stepped simulation, the use of global synchronization primitives limits scalability ..."
Abstract
-
Cited by 29 (11 self)
- Add to MetaCart
Synchronization is a significant cost in many parallel programs, and can be a major bottleneck if it is handled in a centralized fashion using traditional shared-memory constructs such as barriers. In a parallel time-stepped simulation, the use of global synchronization primitives limits scalability, increases the sensitivity to load imbalance, and reduces the potential for exploiting locality to improve cache behavior. This paper presents the results of an initial one-application study quantifying the costs and performance benefits of distributed, nearest neighbors synchronization. The application studied, MP3D, is a particle-based wind tunnel simulation. Our results for this one application on current shared-memory multiprocessors show a significant decrease in synchronization time using these techniques. We prototyped an application-independent library that implements distributed synchronization. The library allows a variety of parallel simulations to exploit these techniques without...

