Creating GPU-Enabled Agent-Based Simulations Using a PDES Tool

Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 217)

Abstract

By offloading some computation to graphical processing units (GPUs), agent-based simulation (ABS) can be accelerated up to thousands of times faster. To exploit the power of GPUs, modellers can use available simulation frameworks to auto-generated GPU codes without requiring any knowledge of GPU programming languages. However, such frameworks only support computation on the GPUs of a particular vendor. This paper proposes techniques, implemented in a synchronous parallel discrete event simulation (PDES) tool, to allow modellers to create ABS models, and to specify computation regions in the models for multiple vendor’s GPUs or CPUs. The technique comprises a set of meta-language tags and a compilation framework to convert user-defined GPU execution regions to OpenCL. A well-known cellular ABS models, the Conway’s Game of Life, have been implemented and evaluated on two platforms i.e., the NVIDIA GeForce 240M LE and AMD Radeon HD6650M. The preliminary results demonstrate two findings: (a) the proposed technique allows the example ABS model to be executed on a PDES engine successfully; (b) the generated GPU-enabled ABS model can achieve fourteen times faster than its multicore version.

Keywords

OpenCL GPU Agent-based simulation PDES Acceleration 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Brodtkorb, A.R., Hagen, T.R., Sætra, M.L.: Graphics processing unit (GPU) programming strategies and trends in GPU computing. Journal of Parallel and Distributed Computing 73(1), 4–13 (2013)CrossRefGoogle Scholar
  2. 2.
    Perumalla, K.S., Aaby, B.G.: Data parallel execution challenges and runtime performance of agent simulations on GPUs. In: Proceedings of the SpringSim. SCS, pp. 116–123 (2008)Google Scholar
  3. 3.
    Falk, M., et al.: Parallelized agent-based simulation on CPU and graphics hardware for spatial and stochastic models in biology (2011)Google Scholar
  4. 4.
    Group, K.: OpenCL - The open standard for parallel programming of heterogeneous systems (2013), www.khronos.org
  5. 5.
    Microsoft. C++ AMP (C++ Accelerated Massive Parallelism) (2013), http://msdn.microsoft.com/en-us/library/vstudio/hh265137.aspx
  6. 6.
    Ubal, R., et al.: Multi2Sim: a simulation framework for CPU-GPU computing. In: Proceedings of PACT 2012, pp. 335–344. ACM, Minneapolis (2012)Google Scholar
  7. 7.
    Coakley, S., et al.: Exploitation of High Performance Computing in the FLAME Agent-Based Simulation Framework. In: 2012 IEEE HPCC-ICESS (2012)Google Scholar
  8. 8.
    Lysenko, M., D’Souza, R.M.: A Framework for Megascale Agent Based Model Simulations on Graphics Processing Units. J. of Art. Soc. and Soc. Sim. 11(4), 10 (2008)Google Scholar
  9. 9.
    Richmond, P., et al.: High performance cellular level agent-based simulation with FLAME for the GPU. Briefings in Bioinformatics 11(3), 334–347 (2010)CrossRefMathSciNetGoogle Scholar
  10. 10.
    Laville, G., et al.: Using GPU for multi-agent multi-scale simulations, pp. 197–204 (2012)Google Scholar
  11. 11.
    Mongkolsin, Y., Marurngsith, W.: P-HASE: An Efficient Synchronous PDES Tool for Creating Scalable Simulations. In: Xiao, T., Zhang, L., Fei, M. (eds.) AsiaSim 2012, Part III. CCIS, vol. 325, pp. 231–245. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  12. 12.
    Coe, P.S., et al.: Technical note: a hierarchical computer architecture design and simulation environment. ACM Trans. Model. Comput. Simul. 8(4), 431–446 (1998)CrossRefMATHGoogle Scholar
  13. 13.
    Tauböck, S., et al.: The <morespace> Project: Modelling and Simulation of Room Management and Schedule Planning at Universityby Combining DEVS and Agent-based Approaches. J. on Developments and Trends in Mod. and Simulation 22(2), 11–20 (2012)Google Scholar
  14. 14.
    Makpaisit, P., Marurngsith, W.: Griffon - GPU programming APIs for scientific and general purpose computing (Extended version). International Journal of Artificial Intelligence 8(12 S), 223–238 (2012)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2013

Authors and Affiliations

  1. 1.Department of Computer Science, Faculty of Science and TechnologyThammasat UniversityPathum ThaniThailand

Personalised recommendations