| Author: | Gerald Krafft |
| Supervisor: | Vladimir Getov |
| Submitted: | 24th January 2007 |
| Research group: | Distributed and Intelligent Systems Group |
| Categories: | Parallel and distributed simulation, Grid computing |
Abstract:
This paper analyses the possibilities of performing parallel transaction-oriented simulations with a special focus on the space-parallel approach and discrete event simulation synchronisation algorithms that are suitable for transaction-oriented simulation and the target environment of Ad Hoc Grids. To demonstrate the findings a Java-based parallel transaction-oriented simulator for the simulation language GPSS/H is implemented on the basis of the promising Shock Resistant Time Warp synchronisation algorithm and using the Grid framework ProActive. The validation of this parallel simulator shows that the Shock Resistant Time Warp algorithm can successfully reduce the number of rolled back Transaction moves but it also reveals circumstances in which the Shock Resistant Time Warp algorithm can be outperformed by the normal Time Warp algorithm. The conclusion of this paper suggests possible improvements to the Shock Resistant Time Warp algorithm to avoid such problems.
Introduction:
Computer Simulation is one of the oldest areas in Computer Science. It provides answers about the behaviour of real or imaginary systems that otherwise could only be gained under great expenditure of time, with high costs or that could not be gained at all. Computer Simulation uses simulation models that are usually simpler than the systems they represent but that are expected to behave as analogue as possible or as required. The growing demand of complex Computer Simulations for instance in engineering, military, biology and climate research has also lead to a growing demand in computing power. One possibility to reduce the runtime of large, complex Computer Simulations is to perform such simulations distributed on several CPUs or computing nodes. This has induced the availability of high-performance parallel computer systems. Even so the performance of such systems has constantly increased, the ever-growing demand to simulate more and more complex systems means that suitable high-performance systems are still very expensive.
Grid computing promises to provide large-scale computing resources at lower costs by allowing several organisations to share their resources. But traditional Computing Grids are relatively static environments that require a dedicated administrative authority and are therefore less well suited for transient short-term collaborations and small organisations with fewer resources. Ad Hoc Grids provide such a dynamic and transient resource-sharing infrastructure that allows even small organisations or individual users to form Computing Grids. They will make Grid computing and Grid resources widely available to small organisations and mainstream users allowing them to perform resource intensive computing tasks like Computer Simulations.
There are several approaches to performing Computer Simulations distributed across a parallel computer system. The space-parallel approach is one of these approaches that is robust, applicable to many different simulation types and that can be used to speed up single simulation runs. It requires the simulation model to be partitioned into relatively independent sub-systems that are then performed in parallel on several nodes. Synchronisation between these nodes is still required because the model sub-systems are not usually fully independent. A lot of past research has concentrated on different synchronisation algorithms for parallel simulation. Some of these are only suitable for certain types of parallel systems, like for instance shared memory systems.
This work investigates the possibility of performing parallel transaction-oriented simulation in an Ad Hoc Grid environment with the main focus on the aspects of parallel simulation. Potential synchronisation algorithms and other simulation aspects are analysed in respect of their suitability for transaction-oriented simulation and Ad Hoc Grids as the target environment and the chosen solutions are described and reasons for their choice given. A past attempt to investigate the parallelisation of transaction-oriented simulation is presented here but the synchronisation algorithm that was employed is not well suited for transaction-oriented simulation. Lessons from this past attempt have been learned and included in the considerations of this work. Furthermore this work outlines certain requirements that a Grid environment needs to fulfil in order to be appropriate for Ad Hoc Grids. The proposed solutions are demonstrated by implementing a Java-based parallel transaction-oriented simulator using the Grid middleware ProActive, which fulfils the requirements described before.
The specific simulation type of transaction-oriented simulation was chosen because it is still taught at many universities and is therefore well known. It uses a relatively simple language for the modelling that does not require extensive programming skills and it is a special type of discrete event simulation so that most findings can also be applied to discrete event simulation.
The thesis report is organised as follows. Section 2 introduces the fundamental concepts and terminology essential for the understanding of this work. In section 3 the specific requirements of Ad Hoc Grids are outlined and the Grid middleware ProActive is briefly described as an environment that fulfils these requirements. Section 4 focuses on the aspects of parallel simulation and their application to transaction-oriented simulation. Past research results are discussed, requirements for a suitable synchronisation algorithm outlined and the most promising algorithm selected. This section also addresses other points related to parallel transaction-oriented simulation like GVT calculation, handling of the simulation end, suitable cancellation techniques and the influence of the model partitioning. Section 5, which is the largest section of this report, describes the implementation of the parallel transaction-oriented simulator, starting with the initial implementation considerations and the implementation phases to specific details of the implementation and how the simulator is used. The functionality of the implemented parallel simulator is then validated in section 6 and the final conclusions presented in section 7.
Complete thesis document:
The complete thesis can be downloaded here (PDF, ca. 3.4MB).
Alternatively the thesis can be found at the arXiv.org open access research archive, paper ID 0704.1827.
[Update]
Further validation experiments of the simulator were carried out using the Grid'5000 platform and the results published in the following conference paper:
Krafft, Gerald and Getov, Vladimir (2008) Transaction-oriented simulation in ad hoc grids: design and experience, Proceedings of the 2008 High Performance Computing & Simulation Conference (HPCS 2008), 3 - 6 June 2008, Nicosia, Cyprus, p. 38-44, ISBN: 978-0-9553018-7-2 (CD: 978-0-9553018-6-5) BibTex