SearcharxivSearch

arXiv subjects

Ilham Variansyah

Publications and source records attributed to Ilham Variansyah.

At least 19 recordsLinked to original sources

Hybrid Delta Tracking Schemes Using a Track-Length Estimator

In Monte Carlo radiation transport calculations, Woodcock-delta tracking is a common alternative to the more popular surface tracking technique. In this work we introduce a delta-tracking algorithm that tallies fluxes to a structured rectilinear mesh using the track-length estimator. This development also enables hybrid surface-delta tracking algorithms, because the track-length tally can be used everywhere for scalar flux estimation regardless of which tracking algorithm is employed. We use this tallying technique to develop a novel hybrid-in-energy method. We also implement a hybrid-in-material method, like what is implemented in Serpent2. We demonstrate that these delta tracking algorithms can be used in conjunction with continuously moving surfaces. We compare these methods showing figures of merit on four time-dependent problems (multi-group and continuous energy) solved with CPU- and GPU-based computers. Our implementation of delta tracking with a track length tally modestly improves figures of merit compared to standard delta tracking with a collision estimator and surface tracking with a track length estimator (1.5X 2.5X) for a problem with significant void regions. For both multi-group and continuous energy pressurized water reactor benchmarks, standard delta tracking with a collision estimator performs best. Hybrid-in-energy methods show significant improvements (7X-11X) for a continuous energy reactor benchmark problem.

physics.comp-ph

Compressed Sensing Methods for Memory Reduction in Monte Carlo Simulations

Monte Carlo simulations of neutronic systems are computationally intensive and demand significant memory resources for high-fidelity modeling. Compressed sensing enables accurate reconstruction of signals from significantly fewer samples than traditional methods. The specific implementation of compressed sensing investigated here involves the use of overlapping cells to collect tallies. Increasing the number of samples improves the reconstruction accuracy, although the marginal gains diminish with more samples. Reconstruction quality is strongly influenced by the sparsity parameter used in basis pursuit denoising. Across the three test cases considered, memory reductions of up to 81.25% (96.25%) are demonstrated for 2D (3D) reconstructions, with select scenarios achieving reconstruction errors within 1 standard deviation of the corresponding high-fidelity reference results.

physics.comp-ph

Interplay of Variance Reduction and Population Control in Monte Carlo Neutron Transport

Monte Carlo methods are widely used for neutron transport simulations at least partly because of the accuracy they bring to the modeling of these problems. However, the computational burden associated with the slow convergence rate of Monte Carlo poses a significant challenge to running large-scale simulations. The continued improvement in high-performance computing capabilities has put exascale time-dependent Monte Carlo neutron transport simulations within reach. Variance reduction techniques have become an essential component to the efficiency of steady-state simulations, and population control techniques are an integral part of time-dependent simulations, but combining them can create algorithmic conflicts. This study investigates the performance of steady-state variance reduction techniques when extended to time-dependent problems and examines how variance reduction and population control techniques combine to impact the effectiveness of time-dependent simulations. Simulations were conducted using various combinations of these techniques across multiple test problems to assess their performance. While this study does not examine all possible variance reduction and population control combinations, the findings emphasize the importance of carefully selecting algorithms to simulate large-scale time-dependent problems effectively. Notably, using weight windows with weight-based combing for population control can significantly hinder simulation performance, whereas pairing weight windows with uniform combing can provide the efficiencies necessary for successfully computing the results of massive problems. Further performance gains were observed when steady-state weight windows were replaced with time-dependent versions.

physics.comp-ph

Comparing the Performance of MC/DC's on-GPU Event-based Processing Methods in Multigroup and Continuous-energy Problems

Monte Carlo / Dynamic Code (MC/DC) is a portable Monte Carlo neutron transport package for rapid numerical methods exploration in heterogeneous and HPC contexts, developed under the auspices of the Center for Exascale Monte Carlo Neutron Transport (CEMeNT). To support execution on GPUs, MC/DC delegates resource and execution management to Harmonize (another CEMeNT software project). In this paper, we describe and compare the performance of the two methods that Harmonize currently provides: a stack-based method and a distributed, asynchronous method. As part of this investigation, we analyze the performance of both methods under the 3D C5G7 k-eigenvalue benchmark problem and a continuous-energy infinite pin cell problem, as run across 4 NVIDIA Tesla V100s. We find that the asynchronous method exhibits stronger early scaling compared to the stack-based method in the 3D C5G7 benchmark. We also found that the asynchronous method exhibits mixed performance relative to the stack-based method in the continuous-energy problem, depending upon tally resolution, particle count, and transport loop decomposition.

physics.comp-ph

Performance Portable Monte Carlo Neutron Transport in MCDC via Numba

Finding a software engineering approach that allows for portability, rapid development, and open collaboration for high-performance computing on GPUs and CPUs is a challenge. We implement a portability scheme using the Numba compiler for Python in Monte Carlo / Dynamic Code (MC/DC), a new neutron transport application for rapidly developing Monte Carlo. Using this scheme, we have built MC/DC as an application that can run as a pure Python, compiled CPU, or compiled GPU solver. In GPU mode, we use Numba paired with an asynchronous GPU scheduler called Harmonize to increase GPU performance. We present performance results (including weak scaling up to 256 nodes) for a time-dependent problem on both CPUs and GPUs and compare favorably to a production C++ code.

physics.comp-ph

Enabling GPU Portability into the Numba-JITed Monte Carlo Particle Transport Code MC/DC

The Center for Exascale Monte Carlo Neutron Transport is developing Monte Carlo / Dynamic Code (MC/DC) as a portable Monte Carlo neutron transport package for rapid numerical methods exploration on CPU- and GPU-based high-performance computers. In this paper, we describe MC/DC's current event-based GPU algorithm as well as the just-in-time (JIT) compilation scheme we use to enable GPU operability on Nvidia and AMD GPUs from MC/DC's Python source. To analyze performance, we conduct runtime tests of the C5G7 k-eigenvalue benchmark problem and a continuous-energy infinite pin cell on Nvidia Tesla V100 GPU, AMD MI250X GPU, and the AMD MI300A APU and make comparison to a dual-socket Intel Xeon Sapphire Rapid CPU node. We found that for the multi-group C5G7 benchmark problem, we respectively see a 15$\times$, 0.7$\times$, 12$\times$ speedup on a V100, MI250X, and MI300A over 112 Intel Xeon CPU cores. For the continuous-energy infinite pin-cell benchmark, we found speedups of 5$\times$, 3$\times$, 4$\times$ on a V100, MI250X, and MI300A, respectively, over the same CPU node.

physics.comp-ph

One-Cell Inversion for Solving Higher-Order Time-Dependent Radiation Transport on GPUs

To find deterministic solutions to the transient discrete-ordinates neutron-transport equation, source iterations (SI) are typically used to lag the scattering (and fission) source terms from subsequent iterations. For Cartesian geometries in one dimension, SI is parallel over the number of angles but not spatial cells; this is a disadvantage for many-core compute architectures like graphics processing units. One-cell inversion (OCI) is a class of alternative iterative methods that allow space-parallel radiation transport on heterogeneous compute architectures. For OCI, previous studies have shown that, in steady-state computations, spectral radius tends to unity when cells are optically thin regardless of the scattering ratio. In this work, we analyze how the convergence rate of an OCI scheme behaves when used for time-dependent neutron transport computations. We derive a second-order space-time discretization method from the simple corner balance and multiple balance time discretization schemes and show via Fourier analysis that it is unconditionally stable through time. Then, we derive and numerically solve the Fourier systems for both OCI and SI splittings of our discretization, showing that small mean-free times improve the spectral radius of OCI more than SI, and that spectral radius for OCI tends to zero as mean free time gets smaller. We extend both solvers to be energy dependent (using the multigroup assumption) and implement on an AMD MI250X using vendor-supplied batched LAPACK solvers. Smaller time steps improve the relative performance of OCI over SI, and, even when OCI requires more iterations to converge a problem, those iterations can be done much faster on a GPU. This leads to OCI performing better overall than SI on GPUs.

physics.comp-ph

Implicit Collision Multiplicity Adjustment for Efficient Monte Carlo Transport Simulation of Reactivity Excursion

We present an implicit collision method with on-the-fly multiplicity adjustment based on the forward weight window methodology for efficient Dynamic Monte Carlo (MC) simulation of reactivity excursion transport problems. Test problems based on the Dragon experiment of 1945 by Otto Frisch are devised to verify and assess the efficiency of the method. The test problems exhibit the key features of the Dragon experiment, namely nine orders of magnitude neutron flux bursts followed by significant post-burst delayed neutron effects. Such an extreme reactivity excursion is particularly challenging and has never been solved with Dynamic MC. The proposed implicit collision multiplicity adjustment, in conjunction with a simple forced delayed neutron precursor decay technique, profitably trades simulation precision for reduced runtime, leading to an improved figure of merit, enabling efficient Dynamic MC simulation of extreme reactivity excursions.

physics.comp-ph

Derivative Source Method for Monte Carlo Transport Calculation of Sensitivities to Material Densities and Dimensions

The Derivative Source Method (DSM) takes derivatives of a particle transport equation with respect to selected parameters and solves them via the standard Monte Carlo random walk simulation along with the original transport problem. The Monte Carlo solutions of the derivative equations make the sensitivities of quantities of interest to the selected parameters. In this paper, we show that DSM can be embedded in Monte Carlo simulation to simultaneously calculate sensitivities of transport phase-space solution to multiple object dimensions and material densities. We verify and assess the efficiency of DSM by solving a multigroup neutronic system of a source-driven fuel-moderator-absorber slab lattice and calculating the fast and slow flux sensitivity coefficient distributions to the fuel and absorber dimensions, as well as the fuel, moderator, and absorber densities. The results are compared to those obtained from conventional finite difference sensitivity calculations. A figure of merit, defined as the product inverse of runtime and square of relative error, is used to assess method efficiencies. For a couple of the calculated sensitivities, well-configured finite difference calculations are the most efficient, followed closely by DSM. However, since seeking such well-configured finite difference is not always practical, in the rest of the cases, including the all-parameter simultaneous sensitivity calculation, DSM has the highest efficiency, demonstrating its robustness.

physics.comp-ph

A Batch Power Iteration Approach for the Iterative Quasi-Monte Carlo Method Using a Randomized-Halton Sequence

The Iterative Quasi-Monte Carlo (iQMC) method is a recently developed hybrid method for neutron transport simulations. iQMC replaces standard quadrature techniques used in deterministic linear solvers with Quasi-Monte Carlo simulation for accurate and efficient solutions to the neutron transport equation. Previous iQMC studies utilized a fixed-seed approach wherein particles were reset to the same initial position and direction of travel at the start of every transport sweep. While the QMC samples offered greatly improved uniformity compared to pseudo-random samples, the fixed-seed approach meant that some regions of the problem were under-sampled and resulted in errors similar to ray effects observed in discrete ordinates methods. This work explores using randomized-Quasi Monte Carlo techniques (RQMC) to generate unique sets of QMC samples for each transport sweep and gain a much-improved sampling of the phase space. The use of RQMC introduces some stochastic noise to iQMC's iterative process, which was previously absent. To compensate, we adopt a ``batch'' approach similar to typical Monte Carlo k-eigenvalue problems, where the iQMC source is converged over $N_\text{inactive}$ batches, then results from $N_\text{active}$ batches are recorded and used to calculate the average and standard deviation of the solution. The RQMC batch method was implemented in the Monte Carlo Dynamic Code (MC/DC) and is shown to be a large improvement over the fixed-seed method. The batch method was able to provide iteratively stable and more accurate solutions with nearly two orders of magnitude reduction in the number of particle histories per batch. Notably, despite introducing some stochastic noise to the solution, the RQMC batch approach converges both the k-effective and mean scalar flux error at the theoretical QMC convergence rate of $O(N^{-1})$.

physics.comp-ph

An Alternative to Stride-Based RNG for Monte Carlo Transport

The techniques used to generate pseudo-random numbers for Monte Carlo (MC) applications bear many implications on the quality and speed of that programs work. As a random number generator (RNG) slows, the production of random numbers begins to dominate runtime. As RNG output grows in correlation, the final product becomes less reliable. These difficulties are further compounded by the need for reproducibility and parallelism. For reproducibility, the numbers generated to determine any outcome must be the same each time a simulation is run. However, the concurrency that comes with most parallelism introduces race conditions. To have both reproducibility and concurrency, separate RNG states must be tracked for each independently schedulable unit of simulation, forming independent random number streams. We propose an alternative to the stride-based parallel LCG seeding approach that scales more practically with increased concurrency and workload by generating seeds through hashing and allowing for repeated outputs. Data gathered from normality tests of tally results from simple MC transport benchmark calculations indicates that the proposed hash-based RNG does not significantly affect the tally result normality property as compared to the conventional stride-based RNG.

physics.comp-ph

Mitigating Spatial Error in the iterative-Quasi-Monte Carlo (iQMC) Method for Neutron Transport Simulations with Linear Discontinuous Source Tilting and Effective Scattering and Fission Rate Tallies

The iterative Quasi-Monte Carlo (iQMC) method is a recently proposed method for multigroup neutron transport simulations. iQMC can be viewed as a hybrid between deterministic iterative techniques, Monte Carlo simulation, and Quasi-Monte Carlo techniques. iQMC holds several algorithmic characteristics that make it desirable for high performance computing environments including a $O(N^{-1})$ convergence scheme, ray tracing transport sweep, and highly parallelizable nature similar to analog Monte Carlo. While there are many potential advantages of using iQMC there are also inherent disadvantages, namely the spatial discretization error introduced from the use of a mesh across the domain. This work introduces two significant modifications to iQMC to help reduce the spatial discretization error. The first is an effective source transport sweep, whereby the source strength is updated on-the-fly via an additional tally. This version of the transport sweep is essentially agnostic to the mesh, material, and geometry. The second is the addition of a history-based linear discontinuous source tilting method. Traditionally, iQMC utilizes a piecewise-constant source in each cell of the mesh. However, through the proposed source tilting technique iQMC can utilize a piecewise-linear source in each cell and reduce spatial error without refining the mesh. Numerical results are presented from the 2D C5G7 and Takeda-1 k-eigenvalue benchmark problems. Results show that the history-based source tilting significantly reduces error in global tallies and the eigenvalue solution in both benchmarks. Through the effective source transport sweep and linear source tilting iQMC was able to converge the eigenvalue from the 2D C5G7 problem to less than $0.04\%$ error on a uniform Cartesian mesh with only $204\times204$ cells.

physics.comp-ph

Exploring One-Cell Inversion Method for Transient Transport on GPU

To find deterministic solutions to the transient $S_N$ neutron transport equation, iterative schemes are typically used to treat the scattering (and fission) source terms. We explore the one-cell inversion iteration scheme to do this on the GPU and make comparisons to a source iteration scheme. We examine convergence behavior, through the analysis of spectral radii, of both one-cell inversion and source iterations. To further boost the GPU parallel efficiency, we derive a higher-order discretization method, simple corner balance (in space) and multiple balance (in time), to add more work to the threads and gain accuracy. Fourier analysis on this higher-order numerical method shows that it is unconditionally stable, but it can produce negative flux alterations that are critically damped through time. We explore a whole-problem (in all angle and all cell) sparse linear algebra framework, for both iterative schemes, to quickly produce performant code for GPUs. Despite one-cell inversion requiring additional iterations to convergence, those iterations can be done faster to provide a significant speedup over source iteration in quadrature sets at or below $S_{128}$. Going forward we will produce a two-dimensional implementation of this code to experiment with memory and performance impacts of a whole-problem framework including methods of synthetic acceleration and pre-conditioners for this scheme, then we will begin making direct comparisons to traditionally implemented source iteration in production code.

physics.comp-ph

Reducing Spatial Discretization Error with Linear Discontinuous Source Tilting in Iterative Quasi-Monte Carlo for Neutron Transport

Recently, iterative Quasi-Monte Carlo (iQMC) was introduced as a new method of neutron transport which combines deterministic iterative methods and quasi-Monte Carlo simulation for more efficient solutions to the neutron transport equation. Previous iQMC results utilized a uniform Cartesian grid with a piecewise-constant source. Similar to "teleportation error" in Implicit Monte Carlo (IMC) methods, the spatial discretization and piecewise-constant source can lead to a significant spatial error that limits convergence of the overall method. Taking concepts from IMC, we have developed a history-based discontinuous piecewise-linear source tilting scheme to reduce spatial error in iQMC. The source tilting method is described below and afterward we present results from a fixed-source 2D reactor-like problem adapted from the Takeda-1 Benchmark problem.

physics.comp-ph

iQMC: Iterative Quasi-Monte Carlo for k-Eigenvalue Neutron Transport Simulations

The Iterative Quasi-Monte Carlo method, or iQMC, replaces standard quadrature techniques used in deterministic linear solvers with Quasi-Monte Carlo simulation for more accurate and efficient solutions to the neutron transport equation. This work explores employing iQMC in the Monte-Carlo Dynamic Code (MCDC) to solve k-eigenvalue problems for neutron transport with both the standard power iteration and the generalized Davidson method, a Krylov Subspace method. Results are verified with the 3-D, 2-group, Takeda-1 Benchmark problem.

physics.comp-ph

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

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.

physics.comp-ph

High-fidelity treatment for object movement in time-dependent Monte Carlo transport simulations

We investigate the use of time-dependent surfaces in Monte Carlo transport simulation to accurately model prescribed, continuous object movements. The performance of the continuous time-dependent surface technique, relative to the typical stepping approximations and the recently proposed at-source geometry adjustment technique, is assessed by running a simple test problem involving continuous movements of an absorbing object. A figure of merit analysis, measured from the method's accuracy and total runtime, shows that the time-dependent surface is more efficient than the stepping approximations. We also demonstrate that the time-dependent surface technique offers robustness, as it produces accurate solutions even in problems where the at-source geometry technique fails. Finally, we verify the time-dependent surface technique against one of the multigroup 3D C5G7-TD benchmark problems.

physics.comp-ph

An effective initial particle sampling technique for Monte Carlo reactor transient simulations

We propose a technique to effectively sample initial neutron and delayed neutron precursor particles for Monte Carlo (MC) simulations of typical off-critical reactor transients. The technique can be seen as an improvement, or alternative, to the existing ones. Similar to some existing techniques, the proposed sampling technique uses the standard MC criticality calculation. However, different from the others, the technique effectively produces uniform-weight particles around user-specified target sizes. The technique is implemented into the open-source Python-based MC code MC/DC and verified against an infinite homogeneous 361-group medium problem and the 3D C5G7-TD benchmark model.

physics.comp-ph