Geant4 is a very large, highly accurate toolkit for Monte Carlo simulation of particle-matter interaction. It has been applied to high-energy physics, cosmic ray modeling, radiation shields, radiation therapy, mine detection, and other areas. Geant4 is being used to help design some high energy physics experiments (notably CMS and Atlas) to be run on the future large hadron collider: the largest particle collider in the world. The parallelization, ParGeant4, represents a challenge due to the unique characteristics of Geant4: (i) complex object-oriented design; (ii) intrinsic use of templates and abstract classes to be instantiated later by the end user; (iii) large program with many developers; and (iv) frequent releases. The key issue for parallelization is not just how to parallelize "correctly" but also how to parallelize "with minimum effort". In addition, the parallelization should make as few assumptions about the source code as possible, due to the frequent release schedule of Geant4. We use TOP-C (Task Oriented Parallel C/C++) for parallelization and Marshalgen for marshaling/serialization. In some examples on a cluster of 100 nodes yielded a speedup of up to 94.4. The code’s portability, scalability and performance are also discussed.


Originally published in Network Computing and Applications, 2006. NCA 2006. Fifth IEEE International Symposium on, pp. 48-55, 24-26 July 2006. doi: 10.1109/NCA.2006.45


Geant4, Monte Carlo simulation, particle-matter interaction, high energy physics, Marshalgen

Subject Categories

Electromagnetic interactions - Software, Hadron interactions - Software


Nuclear Engineering | Software Engineering

Publication Date


Rights Information

Copyright 2006


Personal use of this material is permitted. Permission from IEEE must be obtained for all other users, including reprinting/ republishing this material for advertising or promotional purposes, creating new collective works for resale or redistribution to servers or lists, or reuse of any copyrighted components of this work in other works.

Rights Holder


Click button above to open, or right-click to save.