{"title":"Time-Sharing Time Warp via Lightweight Operating System Support","authors":"Alessandro Pellegrini, F. Quaglia","doi":"10.1145/2769458.2769478","DOIUrl":"https://doi.org/10.1145/2769458.2769478","url":null,"abstract":"The order according to which the different tasks are carried out within a Time Warp platform has a direct impact on performance, given that event processing is speculative, thus being subject to the possibility of being rolled-back. It is typically recognized that not-yet-executed events having lower timestamps should be given higher CPU-schedule priority, since this contributes to keep low the amount of rollbacks. However, common Time Warp platforms usually execute events as atomic actions. Hence control is bounced back to the underlying simulation platform only at the end of the current event processing routine. In other words, CPU-scheduling of events resembles classical batch-multitasking scheduling, which is recognized not to promptly react to variations of the priority of pending tasks (e.g. associated with the injection of new events in the system). In this article we present the design and implementation of a time-sharing Time Warp platform, to be run on multi-core machines, where the platform-level software is allowed to take back control on a periodical basis (with fine grain period), and to possibly preempt any ongoing event processing activity in favor of dispatching (along the same thread) any other event that is revealed to have higher priority. Our proposal is based on an ad-hoc kernel module for Linux, which implements a fine grain timer-interrupt mechanism with lightweight management, which is fully integrated with the modern top/bottom-half timer-interrupt Linux architecture, and which does not induce any bias in terms of relative CPU-usage planning across Time Warp vs non-Time Warp threads running on the machine. Our time-sharing architecture has been integrated within the open source ROOT-Sim optimistic simulation package, and we also report some experimental data for an assessment of our proposal.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"97 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122447905","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Syntax and Semantics of a Multi-Level Modeling Language","authors":"Tom Warnke, Tobias Helms, A. Uhrmacher","doi":"10.1145/2769458.2769467","DOIUrl":"https://doi.org/10.1145/2769458.2769467","url":null,"abstract":"The domain specific modeling and simulation language ML-Rules makes it possible to describe cell biological systems at different levels of organization. A model is formed by attributed and dynamically nested species, with reactions that are constrained by functions on attributes. In this paper, we extend ML-Rules to also support constraints using functions on multi-sets of species, i.e., solutions. Further, we present the formal syntax and semantics of ML-Rules, we define its stochastic simulator and we illustrate its expressiveness based on a model of the cell cycle and proliferation.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128685993","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Conjoining Emulation and Network Simulators on Linux Multiprocessors","authors":"Jereme Lamps, Vladimir Adam, D. Nicol, M. Caesar","doi":"10.1145/2769458.2769481","DOIUrl":"https://doi.org/10.1145/2769458.2769481","url":null,"abstract":"Conjoinment of emulation and simulation in virtual time requires that emulated execution bursts be ascribed a duration in virtual time, and that emulated execution and simulation executions be coordinated within this common virtual time basis. This paper shows how an open source tool TimeKeeper for coordinating emulations in virtual time can be integrated with three different existing software emulations/simulations: CORE, ns-3, and S3F. We describe for each of these the modifications made to the tools to support this integration, and examine experiments designed to assess the accuracy of the combined models. Timekeeper permits much tighter sychronization emulation and simulation than has ever been achieved before.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129681202","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Garro, A. Falcone, N. R. Chaudhry, Omar-Alfred Salah, A. Anagnostou, Simon J. E. Taylor
{"title":"A Prototype HLA Development Kit: Results from the 2015 Simulation Exploration Experience","authors":"A. Garro, A. Falcone, N. R. Chaudhry, Omar-Alfred Salah, A. Anagnostou, Simon J. E. Taylor","doi":"10.1145/2769458.2769489","DOIUrl":"https://doi.org/10.1145/2769458.2769489","url":null,"abstract":"The IEEE 1516-2010 High Level Architecture for distributed simulation is used to facilitate the development of large-scale simulations. However, there is a steep learning curve. The annual Simulation Exploration Experience (SEE) presents the opportunity for multiple international student-led teams to gain experience in developing distributed simulations in an interesting lunar-based scenario. To support the student learning process, a prototype HLA Development Kit has been created that has the goal of reducing the complexity of distributed simulation design and implementation. A student-led team used the Kit to create a lunar excavator federate using agent-based simulation implemented in REPAST. The excavator federate successfully interoperated with the University of Liverpool UAV during SEE 2015. This paper presents a short overview of the Kit and experiences in developing the lunar excavator federate.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126817350","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Davide Cingolani, Alessandro Pellegrini, F. Quaglia
{"title":"Transparently Mixing Undo Logs and Software Reversibility for State Recovery in Optimistic PDES","authors":"Davide Cingolani, Alessandro Pellegrini, F. Quaglia","doi":"10.1145/2769458.2769482","DOIUrl":"https://doi.org/10.1145/2769458.2769482","url":null,"abstract":"The rollback operation is a fundamental building block to support the correct execution of a speculative Time Warp-based Parallel Discrete Event Simulation. In the literature, several solutions to reduce the execution cost of this operation have been proposed, either based on the creation of a checkpoint of previous simulation state images, or on the execution of negative copies of simulation events which are able to undo the updates on the state. In this paper, we explore the practical design and implementation of a state recoverability technique which allows to restore a previous simulation state either relying on checkpointing or on the reverse execution of the state updates occurred while processing events in forward mode. Differently from other proposals, we address the issue of executing backward updates in a fully-transparent and event granularity-independent way, by relying on static software instrumentation (targeting the x86 architecture and Linux systems) to generate at runtime reverse update code blocks (not to be confused with reverse events, proper of the reverse computing approach). These are able to undo the effects of a forward execution while minimizing the cost of the undo operation. We also present experimental results related to our implementation, which is released as free software and fully integrated into the open source ROOT-Sim (ROme OpTimistic Simulator) package. The experimental data support the viability and effectiveness of our proposal.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"207 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124016357","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Improving Computational Performance of Simulation-based Heuristic Algorithms for Job Sequencing","authors":"Shell-Ying Huang, Ya Li","doi":"10.1145/2769458.2774213","DOIUrl":"https://doi.org/10.1145/2769458.2774213","url":null,"abstract":"In many simulation-based optimization algorithms, substantial amount of time is often required in the simulation experiments to evaluate the solutions to the problem. In some heuristic or metaheuristic algorithms a significant number of revisits to the same solutions are made when the search converges. We use the ATCRSS heuristic for job sequencing problems as an example to investigate two ways of implementing a dictionary to memorize the simulation results. The objective is to eliminate repeated simulations to improve the computational performance of the algorithm. Our experiments show that the saving in computational time is comparable between hash table and TRIE. For sequencing 10 to 60 jobs the saving is between 20% and 30%. In addition, hash table is more efficient in memory usage than TRIE in our tested cases. We also suggest that hash table is a more general way of implementing the dictionary for other heuristic algorithms.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123555091","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Session details: Education","authors":"Steffen Straßurger","doi":"10.1145/3247420","DOIUrl":"https://doi.org/10.1145/3247420","url":null,"abstract":"","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"169 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114738895","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Management of Ubiquitous Systems with a Mobile Application Using Discrete Event Simulations","authors":"Souhila Sehili, L. Capocchi, J. Santucci","doi":"10.1145/2769458.2769490","DOIUrl":"https://doi.org/10.1145/2769458.2769490","url":null,"abstract":"Discrete-event simulation plays an increasingly important role in the management of ubiquitous systems. This working progress proposes a cross-platform mobile application dedicated to the management of ubiquitous systems using discrete-event simulation. The mobile application aims to perform the simulation of models specified with discrete-event system specifications (DEVS). Web services are invoked by the mobile application in a generic way in order to load, set and simulate models defined using the DEVSimPy software and stored on a web server. The propose approach has been validated on an ubiquitous system defined from an interconnection of physical computing platforms including microcontrollers, switches and sensors.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"51 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126582392","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Verification of Petri Nets based Simulation Models using Coverage Metrics","authors":"M. Rabe, Maik Deininger, Anne Antonia Scheidler","doi":"10.1145/2769458.2769460","DOIUrl":"https://doi.org/10.1145/2769458.2769460","url":null,"abstract":"Through the wast growth of information technologies, verification is of high importance in many research fields. Most of the models describing modelling procedures include verification and validation as a single step or as an accompanying activity. Unfortunately, most of these models do not give more detailed operation guidelines. In this context, it is common that verification is necessary, but in real life projects there is often no time nor men power for verification, particularly, if verifying is an accompanying activity as in simulation projects. The complexity of simulation projects complicates a proper implementation of verification. Therefore, it is a common method to tailor the procedure models. In this paper we concentrate on modelling and introduce an approach for automated verification. Petri nets are widely used as modelling method. Petri nets are well defined and based on graphs. Thus, this paper introduces an approach for mapping petri-net-based models to control flow graphs. Then it is shown, how this mapping can be utilised for applying coverage metrics. This enables projects to use software testing methods of coverage for verifying petri-net-based simulation models. As a benefit, project time and personnel can be saved.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127408094","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Zhongwei Lin, C. Tropper, Mohammand Nazrul Ishlam Patoary, R. McDougal, W. Lytton, M. Hines
{"title":"NTW-MT: a Multi-threaded Simulator for Reaction Diffusion Simulations in NEURON","authors":"Zhongwei Lin, C. Tropper, Mohammand Nazrul Ishlam Patoary, R. McDougal, W. Lytton, M. Hines","doi":"10.1145/2769458.2769459","DOIUrl":"https://doi.org/10.1145/2769458.2769459","url":null,"abstract":"This paper describes a parallel discrete event simulator, Neuron Time Warp-Multi Thread (NTW-MT), developed for the simulation of reaction diffusion models of neurons. The simulator was developed as part of the NEURON project and is intended to be included in NEURON. It relies upon a stochastic discrete event model developed for chemical reactions. NTW-MT is optimistic and thread-based, in which communication latency among threads within the same process is minimized by pointers. We investigate the performance of NTW-MT on a reaction-diffusion model for the transmission of calcium waves in a neuron. Calcium plays a fundamental role in the second messenger system of a neuron. However, the mechanism by which calcium waves are transmitted is not entirely understood. Stochastic models are more realistic than deterministic models for small populations of ions such as those found in apical dendrites. To be more precise, we simulate a stochastic discrete event model for calcium wave propagation on an unbranched apical dendrite of a hippocampal pyramidal neuron. We examine the performance of NTW-MT on this calcium wave model and compare it to the performance of (1) a process based optimistic simulator and (2) a threaded simulator which uses a single priority (SQ) queue for each thread. Our multi-threaded simulator is shown to achieve superior performance to these simulators.","PeriodicalId":138284,"journal":{"name":"Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation","volume":"70 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2015-06-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127355857","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}