Skip to content

Latest commit

 

History

History
15 lines (10 loc) · 1.57 KB

File metadata and controls

15 lines (10 loc) · 1.57 KB

2026LC

Codex/ChatGPT (July 2026)

Summary

The paper presents a GPU and multi-GPU redesign of the Palabos lattice-Boltzmann framework using C++17 standard parallel algorithms. A new AcceleratedLattice preserves the established CPU-facing interface while replacing the CPU array-of-structures and virtual-polymorphism design with a GPU-oriented structure-of-arrays layout, thread-safe collision--streaming, compile-time kernels, and integer-tag dispatch. Shared MPI infrastructure and explicit bridges between CPU and GPU containers support hybrid execution and incremental porting instead of a complete rewrite. Operations use standard algorithms such as for_each, transform_reduce, and exclusive_scan, avoiding vendor-specific language extensions. Taylor--Green vortex, lid-driven cavity, and Berea-sandstone tests agree with reference solutions. On A100 GPUs, tested configurations reach roughly 75--85% of the memory-bandwidth performance model, comparable to CUDA/OpenCL-native LBM codes. Four-GPU tests achieve 80--90% weak-scaling efficiency and approximately 65--80% strong-scaling efficiency despite lacking communication--computation overlap.

Contributions

  1. Designed a data-oriented GPU lattice compatible with Palabos' existing CPU interface.
  2. Used C++17 standard parallel algorithms and templates for accelerator kernels.
  3. Enabled hybrid CPU/GPU interoperability and incremental application migration.
  4. Validated three-dimensional transitional, cavity, and porous-media flows.
  5. Demonstrated near-bandwidth-limited single-GPU performance and strong multi-GPU scaling.