Total: 1
The Jiangmen Underground Neutrino Observatory (JUNO) is a multi-purpose experiment under construction in southern China. JUNO aims to determine the neutrino mass ordering and precisely measure the neutrino oscillation parameters by detecting reactor neutrinos from nuclear power plants. In addition to reactor neutrinos, JUNO can study atmospheric neutrinos, solar neutrinos, geo-neutrinos, supernova burst neutrinos, the Diffuse Supernova Neutrino Background (DSNB), and nucleon decay, covering an energy range from keV to TeV. JUNO consists of a 20 kton liquid scintillator detector, equipped with 17,612 20-inch PMTs and 25,600 3-inch PMTs, achieving a 3\% energy resolution (at 1~MeV). Precise simulation plays a crucial role in the experiment. Developed using the SNiPER framework and Geant4 toolkit, the JUNO simulation software is a key component of the JUNO offline software (JUNOSW). The large detector size and the broad energy range of interest pose challenges for detector simulation in terms of CPU time and memory consumption. As the computing nodes shift to include multiple integrated CPU cores, traditional single-threaded computing model can lead to large memory footprints and inefficient use of system resources. Multi-threading on many-core architectures can significantly improve resource utilization. This paper introduces the design and implementation of multi-threaded simulation software for the JUNO experiment.