Parallel and Distribution Simulation Systems
Parallel and Distribution Simulation Systems
Java Concurrency in Practice
Cooperative Multi-Agent Learning: The State of the Art
Autonomous Agents and Multi-Agent Systems
Journal of Systems and Software
The Definitive Guide to Terracotta: Cluster the JVM for Spring, Hibernate and POJO Scalability
The Definitive Guide to Terracotta: Cluster the JVM for Spring, Hibernate and POJO Scalability
Actor-Based Simulation of PDEVS systems over HLA
ANSS-41 '08 Proceedings of the 41st Annual Simulation Symposium (anss-41 2008)
Data access in distributed simulations of multi-agent systems
Journal of Systems and Software
Parallel Simulation of Multi-agent Systems Using Terracotta
DS-RT '10 Proceedings of the 2010 IEEE/ACM 14th International Symposium on Distributed Simulation and Real Time Applications
Performance Evaluation of PDES on Multi-core Clusters
DS-RT '10 Proceedings of the 2010 IEEE/ACM 14th International Symposium on Distributed Simulation and Real Time Applications
Hi-index | 0.00 |
This paper describes a modelling and simulation experience using a scalable predator/prey model based on agents (actors), over a multi-core cluster managed by Terracotta. Terracotta was chosen for its ability of transparently clustering the Java Virtual Machine (JVM). Multiple executing JVMs can communicate to one another through global shared yet locked heap objects. The actor-based approach allows an exploitation of the computing power of modern multi-core machines. A key factor is the combined use of three levels of concurrency: (a) cooperative concurrency among non pre-emptive light-weight actors local to a same JVM, (b) pre-emptive concurrency among actors executive thread and JVM i/o interface threads, and (c) truly parallelism among JVMs executing on distinct cores of (possibly) distinct physical machines. The paper summarizes the design rationale of the actor kernel over Terracotta, describes the predator/prey model where predators coordinate their behaviour by a minority game, then reports observed performance when executing the model under various distributed/parallel computing scenarios of a multi-core cluster. Finally, conclusions are drawn with an indication of on-going and future work.