CONCURRENCY AND COMPUTATION: PRACTICE AND EXPERIENCE Concurrency Computat.: Pract. Exper. 2009; 21:1483–1503 Published online 11 February 2009 inWiley InterScience (www.interscience.wiley.com). DOI: 10.1002/cpe.1399 Causality information and proactive cancellation mechanisms Malolan Chetlur 1 and Philip A. Wilsey 2, , 1 IBM India Research Laboratory, Bangalore, India 2 Experimental Computing Laboratory, Department of ECE, University of Cincinnati, P.O. Box 210030, Cincinnati, OH 45221-0030, U.S.A. SUMMARY Time Warp distributed simulations can enter a catastrophic state of cascading rollbacks where out of order (premature) event executions propagate faster than the corrective measures (anti-messages) designed to terminate them. In this paper, a distributed, proactive cancellation mechanism designed to avoid this situation is presented. We also present a version of total clocks called Plausible Total Clocks (PTC). PTC employs a compact time vector of event counter range to address the scalability issues typically suffered by total clock solutions. That is, PTC consists of constant size vectors and are independent of the number of simulation objects in the simulation. The events generated due to an out of order execution are proactively cancelled by determining its causality relation with the already annihilated events. We present a proof of correctness of the distributed cancellation mechanism using PTC and also show that the catastrophic states are avoided with this proactive cancellation mechanism. This cancellation mechanism assumes first- input–first-output communication layer, static inter-connection topology, and logical processes consisting of multiple simulation objects. Copyright © 2009 John Wiley & Sons, Ltd. Received 10 May 2008; Revised 24 October 2008; Accepted 10 November 2008 KEY WORDS: logical time; time warp; cancellation; vector clocks; virtual time 1. INTRODUCTION Rollback is an inherent part of the Time Warp synchronization mechanism for distributed simulation. More precisely, rollback is used to recover from an out of order (or premature) event execution. Conventionally, a rollback will send anti-messages to cancel the prematurely sent output event messages. Rollbacks can occur frequently and propagate to other simulation objects to cancel out any corresponding incorrect event computations caused by the original out of order processing. Correspondence to: Philip A. Wilsey, Experimental Computing Laboratory, Department of ECE, University of Cincinnati, P.O. Box 210030, Cincinnati, OH 45221-0030, U.S.A. E-mail: philip.wilsey@uc.edu Copyright 2009 John Wiley & Sons, Ltd.