{"title":"An efficiency and memory-saving programming paradigm for the unified gas-kinetic scheme","authors":"Yue Zhang , Yufeng Wei , Wenpei Long , Kun Xu","doi":"10.1016/j.cpc.2025.109684","DOIUrl":null,"url":null,"abstract":"<div><div>In recent years, non-equilibrium flows have gained significant attention in aerospace engineering and micro-electro-mechanical systems. The unified gas-kinetic scheme (UGKS) follows the methodology of direct modeling to couple particle collisions and free transport during gas evolution. However, like other discrete-velocity-based methods, the UGKS faces challenges related to high memory requirements and computational costs, such as the possible consumption of 1.32 TB of memory when using 512 cores for the simulations of the hypersonic flow around an X38-like space vehicle. This paper introduces a new UGKS programming paradigm for unstructured grids, focusing on reducing memory usage and improving parallel efficiency. By optimizing the computational sequence, the current method enables each cell in physical space to store only the distribution function for the discretized velocity space, eliminating the need to retain the entire velocity space for slopes and residuals. Additionally, the parallel communication is enhanced through the use of non-blocking MPI. Numerical experiments demonstrate that the new strategy in the programming effectively simulates non-equilibrium problems while achieving high computational efficiency and low memory consumption. For the hypersonic flow around an X38-like space vehicle, the simulation, which utilizes <span><math><mn>1</mn><mo>,</mo><mn>058</mn><mo>,</mo><mn>685</mn></math></span> physical mesh cells and <span><math><mn>4</mn><mo>,</mo><mn>548</mn></math></span> discrete velocity space mesh cells, requires only 99.30 GB for 32 cores and 168.12 GB for 512 cores of memory when executed on 512 CPU cores. This indicates that memory consumption in the UGKS is much reduced. This new programming paradigm can serve as a reference for discrete velocity methods for solving kinetic equations.</div></div>","PeriodicalId":285,"journal":{"name":"Computer Physics Communications","volume":"314 ","pages":"Article 109684"},"PeriodicalIF":3.4000,"publicationDate":"2025-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computer Physics Communications","FirstCategoryId":"101","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0010465525001869","RegionNum":2,"RegionCategory":"物理与天体物理","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS","Score":null,"Total":0}
引用次数: 0
Abstract
In recent years, non-equilibrium flows have gained significant attention in aerospace engineering and micro-electro-mechanical systems. The unified gas-kinetic scheme (UGKS) follows the methodology of direct modeling to couple particle collisions and free transport during gas evolution. However, like other discrete-velocity-based methods, the UGKS faces challenges related to high memory requirements and computational costs, such as the possible consumption of 1.32 TB of memory when using 512 cores for the simulations of the hypersonic flow around an X38-like space vehicle. This paper introduces a new UGKS programming paradigm for unstructured grids, focusing on reducing memory usage and improving parallel efficiency. By optimizing the computational sequence, the current method enables each cell in physical space to store only the distribution function for the discretized velocity space, eliminating the need to retain the entire velocity space for slopes and residuals. Additionally, the parallel communication is enhanced through the use of non-blocking MPI. Numerical experiments demonstrate that the new strategy in the programming effectively simulates non-equilibrium problems while achieving high computational efficiency and low memory consumption. For the hypersonic flow around an X38-like space vehicle, the simulation, which utilizes physical mesh cells and discrete velocity space mesh cells, requires only 99.30 GB for 32 cores and 168.12 GB for 512 cores of memory when executed on 512 CPU cores. This indicates that memory consumption in the UGKS is much reduced. This new programming paradigm can serve as a reference for discrete velocity methods for solving kinetic equations.
期刊介绍:
The focus of CPC is on contemporary computational methods and techniques and their implementation, the effectiveness of which will normally be evidenced by the author(s) within the context of a substantive problem in physics. Within this setting CPC publishes two types of paper.
Computer Programs in Physics (CPiP)
These papers describe significant computer programs to be archived in the CPC Program Library which is held in the Mendeley Data repository. The submitted software must be covered by an approved open source licence. Papers and associated computer programs that address a problem of contemporary interest in physics that cannot be solved by current software are particularly encouraged.
Computational Physics Papers (CP)
These are research papers in, but are not limited to, the following themes across computational physics and related disciplines.
mathematical and numerical methods and algorithms;
computational models including those associated with the design, control and analysis of experiments; and
algebraic computation.
Each will normally include software implementation and performance details. The software implementation should, ideally, be available via GitHub, Zenodo or an institutional repository.In addition, research papers on the impact of advanced computer architecture and special purpose computers on computing in the physical sciences and software topics related to, and of importance in, the physical sciences may be considered.