1 |
A Domain Specific Language Based Approach for Generating Deadlock-Free Parallel Load Scheduling Protocols for Distributed SystemsAdhikari, Pooja 11 May 2013 (has links)
In this dissertation, the concept of using domain specific language to develop errorree parallel asynchronous load scheduling protocols for distributed systems is studied. The motivation of this study is rooted in addressing the high cost of verifying parallel asynchronous load scheduling protocols. Asynchronous parallel applications are prone to subtle bugs such as deadlocks and race conditions due to the possibility of non-determinism. Due to this non-deterministic behavior, traditional testing methods are less effective at finding software faults. One approach that can eliminate these software bugs is to employ model checking techniques that can verify that non-determinism will not cause software faults in parallel programs. Unfortunately, model checking requires the development of a verification model of a program in a separate verification language which can be an error-prone procedure and may not properly represent the semantics of the original system. The model checking approach can provide true positive result if the semantics of an implementation code and a verification model is represented under a single framework such that the verification model closely represents the implementation and the automation of a verification process is natural. In this dissertation, a domain specific language based verification framework is developed to design parallel load scheduling protocols and automatically verify their behavioral properties through model checking. A specification language, LBDSL, is introduced that facilitates the development of parallel load scheduling protocols. The LBDSL verification framework uses model checking techniques to verify the asynchronous behavior of the protocol. It allows the same protocol specification to be used for verification and the code generation. The support to automatic verification during protocol development reduces the verification cost post development. The applicability of LBDSL verification framework is illustrated by performing case study on three different types of load scheduling protocols. The study shows that the LBDSL based verification approach removes the need of debugging for deadlocks and race bugs which has potential to significantly lower software development costs.
|
2 |
A Framework for Individual-based Simulation of Heterogeneous Cell PopulationsAbdennur, Nezar A 13 December 2011 (has links)
An object-oriented framework is presented for developing and simulating individual-based models of cell populations. The framework supplies classes to define objects called simulation channels that encapsulate the algorithms that make up a simulation model. These may govern state-updating events at the individual level, perform global state changes, or trigger cell division. Simulation engines control the scheduling and execution of collections of simulation channels, while a simulation manager coordinates the engines according to one of two scheduling protocols. When the ensemble of cells being simulated reaches a specified maximum size, a procedure is introduced whereby random cells are ejected from the simulation and replaced by newborn cells to keep the sample population size constant but representative in composition. The framework permits recording of population snapshot data and/or cell lineage histories. Use of the framework is demonstrated through validation benchmarks and two case studies based on experiments from the literature.
|
3 |
A Framework for Individual-based Simulation of Heterogeneous Cell PopulationsAbdennur, Nezar A 13 December 2011 (has links)
An object-oriented framework is presented for developing and simulating individual-based models of cell populations. The framework supplies classes to define objects called simulation channels that encapsulate the algorithms that make up a simulation model. These may govern state-updating events at the individual level, perform global state changes, or trigger cell division. Simulation engines control the scheduling and execution of collections of simulation channels, while a simulation manager coordinates the engines according to one of two scheduling protocols. When the ensemble of cells being simulated reaches a specified maximum size, a procedure is introduced whereby random cells are ejected from the simulation and replaced by newborn cells to keep the sample population size constant but representative in composition. The framework permits recording of population snapshot data and/or cell lineage histories. Use of the framework is demonstrated through validation benchmarks and two case studies based on experiments from the literature.
|
4 |
A Framework for Individual-based Simulation of Heterogeneous Cell PopulationsAbdennur, Nezar A 13 December 2011 (has links)
An object-oriented framework is presented for developing and simulating individual-based models of cell populations. The framework supplies classes to define objects called simulation channels that encapsulate the algorithms that make up a simulation model. These may govern state-updating events at the individual level, perform global state changes, or trigger cell division. Simulation engines control the scheduling and execution of collections of simulation channels, while a simulation manager coordinates the engines according to one of two scheduling protocols. When the ensemble of cells being simulated reaches a specified maximum size, a procedure is introduced whereby random cells are ejected from the simulation and replaced by newborn cells to keep the sample population size constant but representative in composition. The framework permits recording of population snapshot data and/or cell lineage histories. Use of the framework is demonstrated through validation benchmarks and two case studies based on experiments from the literature.
|
5 |
A Framework for Individual-based Simulation of Heterogeneous Cell PopulationsAbdennur, Nezar A January 2012 (has links)
An object-oriented framework is presented for developing and simulating individual-based models of cell populations. The framework supplies classes to define objects called simulation channels that encapsulate the algorithms that make up a simulation model. These may govern state-updating events at the individual level, perform global state changes, or trigger cell division. Simulation engines control the scheduling and execution of collections of simulation channels, while a simulation manager coordinates the engines according to one of two scheduling protocols. When the ensemble of cells being simulated reaches a specified maximum size, a procedure is introduced whereby random cells are ejected from the simulation and replaced by newborn cells to keep the sample population size constant but representative in composition. The framework permits recording of population snapshot data and/or cell lineage histories. Use of the framework is demonstrated through validation benchmarks and two case studies based on experiments from the literature.
|
Page generated in 0.3737 seconds