We develop a simple formal model of the Time Warp approach to distributed computation, prove several important properties of the model, and devise some extensions to Time Warp that provide improved termination behavior. Our model consists of processes that communicate solely via message passing. One of the basic process steps is a rollback operation that includes message retraction via transmission of antimessages. In the model, we consider three problems: safety, progress, and termination. By safety, we mean that for a given system of processes, if a run of the system terminates, then the final system state of the run is identical to the final system state of a rollback-free run. We give premises that imply safety, and a counterexample that shows how safety can fail. By progress, we mean that, as a run of a system proceeds, the minimum timestamp of an unprocessed message always eventually increases. We state three axioms that imply the progress property. By termination, we mean that, if all rollback-free runs of a system terminate, then all runs terminate. The termination property is generally false in existing implementations of Time Warp systems due to the possibility of Time Warp vortices. We define additional mechanisms that can guarantee the termination property for most Time Warp applications.
This paper compares the performance and features of five different tools for object-oriented simulation. Three of the tools (MODSIM II, SES/workbench, and Sim++) are commercial products that are targeted exclusively at simulation work. Also examined are simulations in Smalltalk-80 and our own, non-commercial C++ simulation library, called MOOSE (MITRE Object-Oriented Simulation Executive). For each of the tools, we discuss the support for simulation, the support for object-oriented design and the degree to which these areas are effectively integrated. We report the results of performance testing of the tools using six concise benchmarks, each devised to test a specific feature, and one larger simulation, devised to compare general performance. Also included are partial results on ERIC, an object-oriented simulation tool developed at Rome Laboratories. iii ACKNOWLEDGMENTS This paper was presented at the 1992 Object-Oriented Simulation Conference, part of the Society for Computer Simulation (SCS) Western Simulation Multiconference, held 20-22 January in Newport Beach, CA. A condensed version of the paper appears in the conference proceedings [Bensley 92]. The Sim++ code for one of our benchmarks (the bank simulation) was written by Brett Cui under support from the Software Engineering Core Project The following trademarks are used throughout the remainder of the document: * Butterfly is a trademark of BBN Advanced Computers, Inc. * Computing Surface is a trademark of Meiko Scientific Corporation. * Jade, Sim++, and TimeWarp are trademarks of Jade Simulations International Corporation. • MODSIM II and SIMGRAPHICS II are trademarks and service marks of CACI Products Company. * Sun-3 and Sun-4 are trademarks of Sun Microsystems, Inc. " Smalltalk-80 and Objectworks are trademarks
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.