Аннотация:
В работе рассмотрена задача обтекания группы объектов потоком несжимаемой жидкости (дыма), пришедшая из компьютерной графики и сводящаяся к решению трёхмерной системы уравнений Эйлера. Авторами предложен механизм для оценки допустимой погрешности при выполнении проекционного этапа, заключающегося в численном решении уравнения Пуассона в смешанной постановке на структурированной сетке. Для выполнения данного этапа были использованы сторонние библиотеки Hypre (CPU) и NVIDIA AmgX (GPU), реализующие алгоритмы решения СЛАУ с разреженными матрицами. Проведено сравнение полученных реализаций при варьировании численных методов, типов сцен и размера сеток на системе с процессором Xeon E5-2697v3 и ускорителем Tesla K40. Показано, что, в зависимости от специфики сцены, полезная производительность сильно изменяется, в результате чего вопросы выбора предпочтительной библиотеки, аппаратной платформы и алгоритма оказываются достаточно неоднозначными. В частности, ускорение библиотеки для графического ускорителя относительно её аналога для центрального процессора находилось в диапазоне от 1.2 до 273 раз.