Performance of a multi-agent system over a multi-core cluster managed by Terracotta

TitlePerformance of a multi-agent system over a multi-core cluster managed by Terracotta
Publication TypeConference Paper
Year of Publication2011
AuthorsCicirelli, F, Furfaro, A, Giordano, A, Nigro, L
Conference NameProc. of Symposium On Theory of Modeling and Simulation - DEVS Integrative M&S Symposium (TMS/DEVS'11)
Date PublishedApril 4-7
Conference LocationBoston, MA, USA

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.