🤖 AI Summary
Amid the slowing of Moore’s Law, achieving efficient and portable implementations of the Lattice Boltzmann Method (LBM) across GPUs from multiple vendors presents significant challenges. This work proposes PortLBM, a scalable SYCL-based LBM framework supporting AMD, NVIDIA, and Intel GPUs, integrated with real-time visualization. It presents the first systematic evaluation of three data layouts—stream, bundle, and collision—and both single- and double-population algorithms across these hardware platforms. The study reveals no universally optimal configuration: the stream layout performs best on NVIDIA and Intel GPUs, whereas AMD favors the bundle layout; double-population schemes yield higher throughput, while single-population variants are better suited for memory-constrained scenarios. These findings underscore the necessity of hardware-aware customization for heterogeneous architectures.
📝 Abstract
The lattice Boltzmann method (LBM) is a well-established approach for simulating fluid flows at the mesoscopic scale. With the stagnation of Moore's law, high-performance computing has shifted toward GPU accelerators, necessitating programming models that ensure both portability and efficiency across diverse hardware platforms.
We present PortLBM, an extensible portable LBM framework built on SYCL that integrates cross-platform GPU support with interactive real-time visualization. PortLBM supports diverse simulation scenarios ranging from Kármán vortex streets and wing flows to porous media, and is designed for easy extension with new algorithms and backends. As part of a performance portability study, we evaluate PortLBM on contemporary GPU architectures from NVIDIA, AMD, and Intel, examining the impact of three data layouts (stream, bundle, and collision) and four algorithmic variants on simulation throughput.
Our results show that no single configuration achieves optimal performance across all GPU vendors, confirming the need for system-specific tuning. The stream layout maximizes bandwidth and performs best on the contemporary NVIDIA and Intel GPUs, while the bundle layout improves cache efficiency and excels on the AMD GPU. Two-lattice schemes achieve higher throughput while one-lattice schemes are preferable under memory constraints. Our work underscores the necessity for adaptable, portable LBM software in increasingly heterogeneous computing environments.