Fu, YuankunLi, FengSong, FengguangZhu, Luoding2023-02-222023-02-222018-09Fu, Y., Li, F., Song, F., & Zhu, L. (2018). Designing a Parallel Memory-Aware Lattice Boltzmann Algorithm on Manycore Systems. 2018 30th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD), 97–106. https://doi.org/10.1109/CAHPC.2018.8645909https://hdl.handle.net/1805/31394Lattice Boltzmann method (LBM) is an important computational fluid dynamics (CFD) approach to solving the Naiver-Stokes equations and simulating complex fluid flows. LBM is also well known as a memory bound problem and its performance is limited by the memory access time on modern computer systems. In this paper, we design and develop both sequential and parallel memory-aware algorithms to optimize the performance of LBM. The new memory-aware algorithms can enhance data reuses across multiple time steps to further improve the performance of the original and fused LBM. We theoretically analyze the algorithms to provide an insight into how data reuses occur in each algorithm. Finally, we conduct experiments and detailed performance analysis on two different manycore systems. Based on the experimental results, the parallel memory-aware LBM algorithm can outperform the fused LBM by up to 292% on the Intel Haswell system when using 28 cores, and by 302 % on the Intel Skylake system when using 48 cores.enPublisher PolicyLattice Boltzmann methodmemory-aware algorithmsparallel numerical methodsmanycore systemsDesigning a Parallel Memory-Aware Lattice Boltzmann Algorithm on Manycore SystemsArticle