Spatially-Parallel Collision Scheme for Implementing Direct Simulation Monte Carlo in Field-Programmable Gate Arrays
摘要
Direct simulation Monte Carlo is a numerical method to simulate gas flows, leveraging some embarrassingly parallel steps like random number generation, advection, and sampling. Field-programmable gate arrays—devices with reconfigurable logic—are well suited for these tasks. Efficiently parallelising the commonly used no-time-counter collision evaluation scheme on these devices, however, introduces challenges, particularly repeated particle selections and race conditions during simultaneous post-collision velocity updates. These issues reduce the collision frequency and compromise accuracy. We address this with a modified scheme that splits and shuffles particle indices within a cell, enabling fine-grained, highly parallel collision evaluations without repeated particles or pairs and a preservation of collision frequency while still realising coarse-grained cell-based spatial parallelism within the programmable logic of a single device. We demonstrate the method on a one-dimensional heat transfer problem, achieving accurate results comparable to standard no-time-counter-based implementations.