Jie Guo , Yunlan Wang , Rui Zhang , Feifei Zhang , Tianhai Zhao , Congshan Zhuo , Sha Liu , Chengwen Zhong
{"title":"Implementation and optimisation of the cdugksFoam solver on the Sunway TaihuLight supercomputer","authors":"Jie Guo , Yunlan Wang , Rui Zhang , Feifei Zhang , Tianhai Zhao , Congshan Zhuo , Sha Liu , Chengwen Zhong","doi":"10.1016/j.cpc.2024.109455","DOIUrl":null,"url":null,"abstract":"<div><div>In this study, the cdugksFoam solver was successfully implemented on the Sunway TaihuLight system using the MPI + Athread programming model. To utilise the heterogeneous SW26010 many-core processor fully, we implemented three levels of parallelisation: MPI process-level hybrid parallelisation in physical space and velocity space, thread-level parallelisation to further partition physical space, and single-instruction multiple-data (SIMD) vectorisation. To address the performance bottleneck caused by the low memory bandwidth of the SW26010 processor, a series of optimisation methods, including kernel fusion, transcendental function optimisation, and soft cache, were designed and implemented to reduce discrete memory access and improve the computational efficiency of CPEs. The accuracy of the optimised program was validated through simulations of the 3D lid-driven cavity flow and rarefied supersonic flow past a sphere. Based on the experimental results from multiple grid scales, the overall performance achieved an acceleration of over 5 times compared to running on the management processing elements. In both strong and weak scalability tests, a parallel efficiency exceeding 90% was achieved.</div></div>","PeriodicalId":285,"journal":{"name":"Computer Physics Communications","volume":"308 ","pages":"Article 109455"},"PeriodicalIF":7.2000,"publicationDate":"2024-11-27","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/S0010465524003783","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 this study, the cdugksFoam solver was successfully implemented on the Sunway TaihuLight system using the MPI + Athread programming model. To utilise the heterogeneous SW26010 many-core processor fully, we implemented three levels of parallelisation: MPI process-level hybrid parallelisation in physical space and velocity space, thread-level parallelisation to further partition physical space, and single-instruction multiple-data (SIMD) vectorisation. To address the performance bottleneck caused by the low memory bandwidth of the SW26010 processor, a series of optimisation methods, including kernel fusion, transcendental function optimisation, and soft cache, were designed and implemented to reduce discrete memory access and improve the computational efficiency of CPEs. The accuracy of the optimised program was validated through simulations of the 3D lid-driven cavity flow and rarefied supersonic flow past a sphere. Based on the experimental results from multiple grid scales, the overall performance achieved an acceleration of over 5 times compared to running on the management processing elements. In both strong and weak scalability tests, a parallel efficiency exceeding 90% was achieved.
期刊介绍:
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.