[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.5555/2263019.2263057acmotherconferencesArticle/Chapter ViewAbstractPublication PagessimutoolsConference Proceedingsconference-collections
research-article

Time warp on the go

Published: 19 March 2012 Publication History

Abstract

In this paper we deal with the impact of multi and many-core processor architectures on simulation. Despite the fact that modern CPUs have an increasingly large number of cores, most softwares are still unable to take advantage of them. In the last years, many tools, programming languages and general methodologies have been proposed to help building scalable applications for multi-core architectures, but those solutions are somewhat limited. Parallel and distributed simulation is an interesting application area in which efficient and scalable multi-core implementations would be desirable. In this paper we investigate the use of the Go Programming Language to implement optimistic parallel simulations based on the Time Warp mechanism. Specifically, we describe the design, implementation and evaluation of a new parallel simulator. The scalability of the simulator is studied when in presence of a modern multi-core CPU and the effects of the Hyper-Threading technology on optimistic simulation are analyzed.

References

[1]
Parallel And Distributed Simulation (PADS) research group. http://pads.cs.unibo.it, 2011.
[2]
The Go Programming Language. http://golang.org/, 2012.
[3]
J. Armstrong. Programming Erlang: Software for a Concurrent World. Pragmatic Bookshelf, 2007.
[4]
L. Bononi, M. Bracuto, G. D'Angelo, and L. Donatiello. Exploring the effects of hyper-threading on parallel simulation. In Proceedings of the 10th IEEE international symposium on Distributed Simulation and Real-Time Applications, pages 257--260, Washington, DC, USA, 2006. IEEE Computer Society.
[5]
L. Dagum and R. Menon. Openmp: An industry-standard api for shared-memory programming. IEEE Comput. Sci. Eng., 5:46--55, January 1998.
[6]
G. D'Angelo. Parallel and distributed simulation from many cores to the public cloud. In HPCS '11: Proceedings of International Conference on High Performance Computing and Simulation. IEEE, 2011.
[7]
J. Dean and S. Ghemawat. Mapreduce: simplified data processing on large clusters. Commun. ACM, 51:107--113, Jan. 2008.
[8]
R. Ewald. Automatic Algorithm Selection for Complex Simulation Problems. Springer, 2011.
[9]
R. Fujimoto. Parallel and Distributed Simulation Systems. Wiley & Sons, 2000.
[10]
R. M. Fujimoto. Parallel discrete event simulation. In Proceedings of the 21st conference on Winter simulation, WSC '89, pages 19--28, New York, NY, USA, 1989. ACM.
[11]
R. M. Fujimoto. Performance of time warp under synthetic workloads. In Proceedings of the SCS Multiconference on Distributed Simulation, pages 23--28, 1990.
[12]
W. Gropp, E. Lusk, and A. Skjellum. Using MPI--Portable Parallel Programming with the Message Passing Interface. MIT Press, 2nd edition edition.
[13]
J. Himmelspach, R. Ewald, S. Leye, and A. M. Uhrmacher. Enhancing the scalability of simulations by embracing multiple levels of parallelization. In Proceedings of the 2010 Ninth International Workshop on Parallel and Distributed Methods in Verification, and Second International Workshop on High Performance Computational Systems Biology, PDMC-HIBI '10, pages 57--66, Washington, DC, USA, 2010. IEEE Computer Society.
[14]
D. Jefferson. Virtual time. ACM Transactions Program. Lang. Syst., 7(3):404--425, 1985.
[15]
D. W. Jones. An empirical comparison of priority-queue and event-set implementations. Commun. ACM, 29:300--311, April 1986.
[16]
Y. Jun, C. Raczy, and G. Tan. Evaluation of a sort-based matching algorithm for ddm. In Proceedings of the sixteenth workshop on Parallel and distributed simulation, PADS '02, pages 68--75, Washington, DC, USA, 2002. IEEE Computer Society.
[17]
Khronos OpenCL Working Group. The OpenCL Specification, version 1.1. http://www.khronos.org/opencl/, 2011.
[18]
L. Lamport. Time, clocks, and the ordering of events in a distributed system. Commun. ACM, 21:558--565, July 1978.
[19]
A. M. Law and D. M. Kelton. Simulation Modeling and Analysis. McGraw-Hill Higher Education, 3rd edition, 1999.
[20]
L. li Chen, Y. shuai Lu, Y. ping Yao, S. liang Peng, and L. da Wu. A well-balanced time warp system on multi-core environments. In Principles of Advanced and Distributed Simulation (PADS), 2011 IEEE Workshop on, pages 1--9, june 2011.
[21]
K. Manian and P. Wilsey. Distributed simulation on a many-core processor. In Proceedings of SIMUL 2011: Third Conference on Advances in System Simulation. IARIA, 2011.
[22]
D. T. Marr, F. Binns, D. L. Hill, G. Hinton, D. A. Koufaty, A. J. Miller, and M. Upton. Hyper-Threading Technology Architecture and Microarchitecture. Intel Technology Journal, 6(1), Feb. 2002.
[23]
F. Mattern. Efficient algorithms for distributed snapshots and global virtual time approximation. J. Parallel Distrib. Comput., 18:423--434, August 1993.
[24]
J. Misra. Distributed discrete event simulation. ACM Computing Surveys, 18(1):39--65, 1986.
[25]
J. Nickolls, I. Buck, M. Garland, and K. Skadron. Scalable parallel programming with cuda. Queue, 6:40--53, March 2008.
[26]
K. S. Perumalla. Switching to high gear: Opportunities for grand-scale real-time parallel simulations. Distributed Simulation and Real Time Applications, IEEE/ACM International Symposium on, 0:3--10, 2009.
[27]
C. Pheatt. Intel threading building blocks. J. Comput. Sci. Coll., 23:298--298, April 2008.
[28]
B. Samadi, R. Muntz, and D. Parker. A distributed algorithm to detect a global state of a distributed simulation system. In Prof. of the IFIP Conference on Distributed Processing, 1987.
[29]
N. Su, H. Hou, F. Yang, Q. Li, and W. Wang. Optimistic parallel discrete event simulation based on multi-core platform and its performance analysis. In Complex, Intelligent and Software Intensive Systems, 2009. CISIS '09. International Conference on, pages 675--680, march 2009.
[30]
S. Tay, G. Tan, and K. Shenoy. Piggy-backed time-stepped simulation with 'super-stepping'. In Simulation Conference, 2003. Proceedings of the 2003 Winter, volume 2, pages 1077--1085 vol.2, dec. 2003.
[31]
TILERA: TILE-Gx Processor Family. http://www.tilera.com/products/processors/TILE-Gx_Family, 2011.
[32]
X. Zeng, R. Bagrodia, and M. Gerla. Glomosim: a library for parallel simulation of large-scale wireless networks. SIGSIM Simul. Dig., 28(1):154--161, 1998.

Cited By

View all
  • (2019)Controlled Asynchronous GVTProceedings of the 48th International Conference on Parallel Processing10.1145/3337821.3337927(1-10)Online publication date: 5-Aug-2019
  • (2018)Performance implications of global virtual time algorithms on a knights landing processorProceedings of the 22nd International Symposium on Distributed Simulation and Real Time Applications10.5555/3330299.3330310(87-96)Online publication date: 15-Oct-2018
  • (2016)Parallel Expanded Event Simulation of Tightly Coupled SystemsACM Transactions on Modeling and Computer Simulation (TOMACS)10.1145/283290926:2(1-26)Online publication date: 6-Jan-2016
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
SIMUTOOLS '12: Proceedings of the 5th International ICST Conference on Simulation Tools and Techniques
March 2012
402 pages
ISBN:9781450315104

In-Cooperation

Publisher

ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering)

Brussels, Belgium

Publication History

Published: 19 March 2012

Check for updates

Author Tags

  1. many-core
  2. multi-core
  3. parallel and distributed simulation
  4. simulation
  5. synchronization

Qualifiers

  • Research-article

Conference

SIMUTOOLS'12

Acceptance Rates

Overall Acceptance Rate 20 of 73 submissions, 27%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2019)Controlled Asynchronous GVTProceedings of the 48th International Conference on Parallel Processing10.1145/3337821.3337927(1-10)Online publication date: 5-Aug-2019
  • (2018)Performance implications of global virtual time algorithms on a knights landing processorProceedings of the 22nd International Symposium on Distributed Simulation and Real Time Applications10.5555/3330299.3330310(87-96)Online publication date: 15-Oct-2018
  • (2016)Parallel Expanded Event Simulation of Tightly Coupled SystemsACM Transactions on Modeling and Computer Simulation (TOMACS)10.1145/283290926:2(1-26)Online publication date: 6-Jan-2016
  • (2015)Adaptive Resource Provisioning Mechanism in VEEs for Improving Performance of HLA-Based SimulationsACM Transactions on Modeling and Computer Simulation (TOMACS)10.1145/271730926:1(1-25)Online publication date: 29-Jun-2015
  • (2014)Hierarchical resource management for enhancing performance of large-scale simulations on data centersProceedings of the 2nd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation10.1145/2601381.2601390(187-196)Online publication date: 18-May-2014
  • (2013)Accelerating optimistic HLA-based simulations in virtual execution environmentsProceedings of the 1st ACM SIGSIM Conference on Principles of Advanced Discrete Simulation10.1145/2486092.2486119(211-220)Online publication date: 19-May-2013
  • (2012)Parallel discrete event simulation with ErlangProceedings of the 1st ACM SIGPLAN workshop on Functional high-performance computing10.1145/2364474.2364487(83-92)Online publication date: 15-Sep-2012

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media