В статье описан расчетный код, предназначенный для численного моделирования двухмерных течений разреженного газа на основе решения кинетического уравнения Больцмана конечно-разностным методом, и выполняемый на гибридных кластерах.
Обычно гибридный вычислительный кластер состоит нескольких вычислительных узлов с многоядерным центральным процессором, соединенным 1-4 ГПУ. В соответствии с этой архитектурой расчетный код организован в виде последовательного вызова различных вычислительных модулей. Аппроксимация свободно-молекулярного переноса основана на современных WENO (Weighted Essentially Non-Oscillatory) схемах сквозного счета [1]. Модуль свободно-молекулярного переноса был перенесен на гибридную архитектуру с использованием интерфейса программирования приложений CUDA и существующего кода на основе протокола MPI [2]. Этот модуль выполняет инициализацию данных, читает заранее созданную расчетную сетку в фазовом пространстве и накладывает начальные и граничные условия. Отдельный модуль отвечает за вычисление интеграла столкновений Больцмана. Расчетный код на CUDA был оптимизирован для использования в двухмерных расчетах с высоким разрешением. Перекомпоновка вычислительных нитей (threads), на которых выполняются ядерные функции (процедуры для ГПУ) и применение технологии CUDA streams в расчетах на нескольких ГПУ позволяет проводить вычисления с большим количеством ячеек как в физическом, так и в скоростном пространстве [3].
Была проведена перекрестная верификация разработанного кода с программами на основе решения модельных кинетических уравнений и методе прямого статистического моделирования путем расчетов двумерных течений разреженного газа, включая обтекание плоской пластины конечной длины и течения в ударной трубе.
При решении уравнения Больцмана использовалось до 27 ГПУ и полученный значительный прирост производительности свидетельствует о том, что именно ГПУ являются тем вычислительным ресурсом, который позволит выполнять двухмерные расчеты на основе уравнения Больцмана с высоким разрешением за разумное время.
1. Jiang G-S., Shu C.-W. Efficient Implementation of Weighted ENO Schemes // J. Comput. Phys. 1996, Vol. 126, P. 202228.
2. Kudryavtsev A.N., Shershnev A.A. A Numerical Method for Simulation of Microflows by Solving Directly Kinetic Equations with WENO Schemes // Journal of Scientific Computing 2013, Vol. 57, No. 1, P. 4273.
3. Malkov E.A., Ivanov M.S., Poleshkin S.O. Proc. of 28th Int. Symp. on Rarefied Gas Dynamics, AIP Conference Proceedings 1501, American Institute of Physics, Melville, NY, 2012, P. 318325.