Asynchronous computation is an important optimization technique in scientific computation. The upcoming C++26 standard introduces a new asynchronous execution framework, stdexec, enabling the development of high-performance code using only standard C++. This paper explores the parallelization of single-GPU and multi-GPU lattice Boltzmann method computations using stdexec and further optimizes performance through its asynchronous execution model. Experimental results show that asynchronous stdexec achieves approximately 83.5%–105.4% of the performance of C++ stdpar. These results suggest potential for further optimizations in the future, providing additional options for high-performance computing development in pure C++.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Accelerating LBM with C++ STL Asynchronous Parallel Model

  • Ziheng Yuan,
  • Takashi Shimokawabe

摘要

Asynchronous computation is an important optimization technique in scientific computation. The upcoming C++26 standard introduces a new asynchronous execution framework, stdexec, enabling the development of high-performance code using only standard C++. This paper explores the parallelization of single-GPU and multi-GPU lattice Boltzmann method computations using stdexec and further optimizes performance through its asynchronous execution model. Experimental results show that asynchronous stdexec achieves approximately 83.5%–105.4% of the performance of C++ stdpar. These results suggest potential for further optimizations in the future, providing additional options for high-performance computing development in pure C++.