Development of MC/DC: a performant, scalable, and portable Python-based Monte Carlo neutron transport code

Abstract

We discuss the current development of MC/DC (Monte Carlo Dynamic Code). MC/DC is primarily designed to serve as an exploratory Python-based MC transport code. However, it seeks to offer improved performance, massive scalability, and backend portability by leveraging Python code-generation libraries and implementing an innovative abstraction strategy and compilation scheme. Here, we verify MC/DC capabilities and perform an initial performance assessment. We found that MC/DC can run hundreds of times faster than its pure Python mode and about 2.5 times slower, but with comparable parallel scaling, than the high-performance MC code Shift for simple problems. Finally, to further exercise MC/DC's time-dependent MC transport capabilities, we propose a challenge problem based on the C5G7-TD benchmark model.

0

Turn this paper into a lesson

ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…