Flocks, herds and schools: A distributed behavioral model
SIGGRAPH '87 Proceedings of the 14th annual conference on Computer graphics and interactive techniques
Interconnection Networks: An Engineering Approach
Interconnection Networks: An Engineering Approach
Networked games: a QoS-sensitive application for QoS-insensitive users?
RIPQoS '03 Proceedings of the ACM SIGCOMM workshop on Revisiting IP QoS: What have we learned, why do we care?
Crowd simulation for emergency response using BDI agent based on virtual reality
Proceedings of the 38th conference on Winter simulation
Lock-free deques and doubly linked lists
Journal of Parallel and Distributed Computing
Large scale agent-based simulation on the grid
Future Generation Computer Systems
Introducing technology into the Linux kernel: a case study
ACM SIGOPS Operating Systems Review - Research and developments in the Linux kernel
A Scalable Architecture for Crowd Simulation: Implementing a Parallel Action Server
ICPP '08 Proceedings of the 2008 37th International Conference on Parallel Processing
A new system architecture for crowd simulation
Journal of Network and Computer Applications
Atomic quake: using transactional memory in an interactive multiplayer game server
Proceedings of the 14th ACM SIGPLAN symposium on Principles and practice of parallel programming
QuakeTM: parallelizing a complex sequential application using transactional memory
Proceedings of the 23rd international conference on Supercomputing
A comparative study of partitioning methods for crowd simulations
Applied Soft Computing
A new autonomous agent approach for the simulation of pedestrians in urban environments
Integrated Computer-Aided Engineering
Scalable concurrent hash tables via relativistic programming
ACM SIGOPS Operating Systems Review
Making lockless synchronization fast: performance implications of memory reclamation
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Why STM can be more than a research toy
Communications of the ACM
User-Level Implementations of Read-Copy Update
IEEE Transactions on Parallel and Distributed Systems
Hi-index | 0.00 |
The Read-Copy Update (RCU) synchronization method was designed to cope with multiprocessor scalability some years ago, and it was included in the Linux kernel October of 2002. Recently, libraries providing user-space access to this method have been released, although they still have not been used in complex applications.In this paper, we propose the evaluation of the RCU synchronization method for two different cases of use in a distributed system architecture for crowd simulations. We have compared the RCU implementation with a parallel implementation based on Mutex, a traditional locking synchronization method for solving race conditions among threads in parallel applications. The performance evaluation results show that the use of RCU significantly decreases the system response time and increases the system throughput, supporting a higher number of agents while providing the same latency levels. The reason for this behavior is that the RCU method allows read accesses in parallel with write accesses to dynamic data structures, avoiding the sequential access that a Mutex represents for these data structures. In this way, it can better exploit the existing number of processor cores. These results show the potential of this synchronization method for improving parallel and distributed applications.