WWW.DOC.KNIGI-X.RU
БЕСПЛАТНАЯ  ИНТЕРНЕТ  БИБЛИОТЕКА - Различные документы
 

«УДК 532.529 РЕАЛИЗАЦИЯ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ НА ГРАФИЧЕСКИХ ПРОЦЕССОРАХ В ПАКЕТЕ ВЫЧИСЛИТЕЛЬНОЙ ГАЗОВОЙ ДИНАМИКИ ЛОГОС К. Н. ...»

334 вычислительные методы и программирование. 2013. Т. 14

УДК 532.529

РЕАЛИЗАЦИЯ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ НА ГРАФИЧЕСКИХ

ПРОЦЕССОРАХ В ПАКЕТЕ ВЫЧИСЛИТЕЛЬНОЙ ГАЗОВОЙ ДИНАМИКИ ЛОГОС

К. Н. Волков1, Ю. Н. Дерюгин2, В. Н. Емельянов1, А. Г. Карпенко3,

А. С. Козелков2, П. Г. Смирнов1, И. В. Тетерина1

Разработаны средства численного моделирования трехмерных течений вязкого сжимаемого газа с использованием графических процессоров. Для дискретизации уравнений Навье–Стокса используется метод конечных объемов на неструктурированной сетке, реализованный в рамках пакета ЛОГОС. Рассматриваются различные подходы к расчету потоков через грани контрольных объемов, а также особенности реализации модели турбулентности. Для программной реализации параллельных вычислительных алгоритмов применяется технология CUDA. Обсуждается решение ряда тестовых задач внутренней и внешней газовой динамики. Сравнивается ускорение счета на графических процессорах по отношению к расчетам на центральном процессоре.

Ключевые слова: графический процессор, параллельный алгоритм, газовая динамика, метод конечных объемов, неструктурированная сетка, технология CUDA, пакет ЛОГОС.

1. Введение. Расширение возможностей и повышение функциональных характеристик разрабатываемых изделий в различных отраслях промышленности требует использования методов математического моделирования на основе современных вычислительных технологий и средств параллельной обработки данных.


Применение методов компьютерного моделирования позволяет создавать высокотехнологичные изделия с улучшенными эксплуатационными характеристиками, снижая при этом время и стоимость разработок и испытаний новых изделий. Повышение требований к качеству обоснования технических решений, используемых при проектировании, приводит к необходимости совершенствования программных средств, применяемых для моделирования физических процессов.

Для моделирования течений жидкости и газа и конвективного теплообмена в технических и технологических приложениях широкое применение находят методы вычислительной газовой динамики (Computational Fluid Dynamics, CFD). К настоящему времени накоплен обширный фонд вычислительных алгоритмов, предназначенных для численного моделирования течений жидкости и газа и реализованных в виде универсальных коммерческих CFD-пакетов (например, Ansys Fluent и Ansys CFX) и CFD-пакетов с открытым исходным кодом (например, OpenFOAM). Имеется также ряд пакетов, развиваемых и поддерживаемых отдельными научными коллективами, например пакеты VP2/3 [1], SINF [2], NOISETTE [3] и др., обладающие той или иной степенью универсальности в своей предметной области.

В CFD-пакеты включаются широкие наборы математических моделей физических процессов, конечноразностных схем, методов решения систем разностных уравнений, из элементов которых конструируется решение той или иной задачи.

К универсальным CFD-пакетам относится также пакет ЛОГОС [4], разработанный в Институте теоретической и математической физики Российского федерального ядерного центра (Саров) и предназначенный для решения широкого круга задач газовой динамики и теплообмена на компьютерах с массовым параллелизмом. Пакет имеет в своем составе препроцессор, генератор неструктурированных сеток и средства визуализации. Пакет ЛОГОС написан на языке C++, а вычислительные алгоритмы и составные части расчетного модуля реализованы в рамках объектно-ориентированной модели программирования.

В пакете ЛОГОС для дискретизации основных уравнений, описывающих законы сохранения массы, количества движения и энергии, применяется метод конечных объемов на неструктурированных сетках, 1 Балтийский государственный технический университет “Военмех” им. Д. Ф. Устинова, факультет энергетического машиностроения, 1-я Красноармейская ул., д. 1, 190005, Санкт-Петербург; К. Н. Волков, вед.

науч. сотр., e-mail: dsci@mail.ru; В. Н. Емельянов, профессор, e-mail: vlademelyanov@gmail.com; П. Г. Смирнов, аспирант, e-mail: petr.s.8314@mail.ru; И. В. Тетерина, доцент, e-mail: yaiv@mail.ru 2 ФГУП Российский федеральный ядерный центр Всероссийский научно-исследовательский институт экспериментальной физики, просп. Мира, д. 37, 607188, г. Саров; Ю. Н. Дерюгин, рук. отдела. e-mail:

askozelkov@mail.ru; А. С. Козелков, рук. отдела, e-mail: askozelkov@mail.ru 3 Санкт-Петербургский государственный университет, математико-механический факультет, Петродворец, Университетский просп., д. 28, 198504, Санкт-Петербург; аспирант, e-mail: aspera.2003.ru@mail.ru c Научно-исследовательский вычислительный центр МГУ им. М. В. Ломоносова вычислительные методы и программирование. 2013. Т. 14

–  –  –

2.2. Особенности численной реализации. Для дискретизации по времени применяется явный метод Эйлера или явный двухшаговый метод Рунге–Кутты. Расчет потоков основывается на решении задачи о распаде произвольного разрыва (применяются метод Годунова и схема Рое с энтропийной поправкой Хартена). Для повышения порядка точности по пространству используется кусочно-непрерывное распределение искомых функций внутри контрольного объема и производится интерполяция решения на грань контрольного объема. В разностную схему вводятся переключатели (minmod, van Leer, SuperBee), которые осуществляют переход на схему 1-го порядка в тех областях, где существуют больше градиенты и решения, и на схему 2-го порядка в области гладкого изменения решения. Для расчета вязких потоков используются физические переменные, а для расчета градиента в центре грани контрольного объема линейная интерполяция градиента на грань [11]. Для повышения точности численного решения при моделировании низкоскоростных течений вязкого сжимаемого газа и увеличения скорости сходимости метода установления применяется метод предобусловливания, основанный на введении физических переменных.

Некоторые особенности реализации компонентов вычислительной процедуры обсуждаются в работах [9, 10, 12].

3. Модель турбулентности. При моделировании турбулентных течений молекулярные коэффициенты переноса заменяются их эффективными значениями [13] (µe = µ + µt ). Использование неструктурированных сеток вносит дополнительные трудности в реализацию модели турбулентности на ГПУ.

В качестве модели турбулентности используется модель пути смешения Прандтля. Турбулентная вязкость находится из соотношения µt = c lm ||, где c = (L + R )/2 плотность в центре грани контрольного объема, вектор завихренности. Путь смешения рассчитывается по формуле lm = yc, где yc минимальное расстояние от грани контрольного объема до граничной грани, лежащей на стенке, постоянная Кармана ( = 0.41). Расстояние от грани контрольного объема до ближайшей стенки находится из соотношения yc = min (r c r i ) · ni, где rc радиус-вектор центра грани контрольi ного объема, r i радиус-вектор центра граничной грани контрольного объема, ni вектор нормали к граничной грани. Поиск минимума производится при помощи перебора всех граничных граней.

y+ Для учета демпфирующего влияния стенки используется функция Ван Дриста f = 1exp, A где y + = yu /, u = (w /)1/2, A = 25. Под w понимается напряжение сдвига на стенке. Применение модели Прандтля с демпфирующей функцией Ван Дриста требует расчета пристеночной координаты y + на стенках. При использовании неструктурированной сетки для каждой грани имеется информация о соседних ячейках, поэтому расчет напряжения трения на стенке производится заранее.

Выбор модели турбулентности Прандтля обусловливается простотой и удобством ее программной реализации в рамках существующего кода. Реализация других алгебраических моделей турбулентности, например двухслойной модели Болдуина–Ломакса (Baldwin–Lomax) или модели Себеси–Смита (Cebeci– Smith), требует поиска максимума или интегрирования некоторых параметров поперек пограничного слоя (по нормали к стенке).

В работе [14] для каждого пристеночного контрольного объема вводятся вспомогательные линии, нормальные к стенке и проходящие через центры контрольных объемов. Длина вспомогательных линий полагается равной толщине пограничного слоя, которая зависит от числа Рейнольдса. Эти линии разбиваются на участки, на которые производится интерполяция параметров, рассчитанных на неструктурированной сетке. После интерполяции вдоль каждой линии находится максимум функции для определения турбулентной вязкости во внешней области. Реализация локальной интерполяции решения, полученного на неструктурированной сетке, в точки, расположенные на линиях, проходящих через центры контрольных объемов, или построение структурированной сетки около стенки оказываются неэффективными на ГПУ, поскольку требуют реализации процедуры поиска соответствующих контрольных объемов.





В разработанном подходе применяется двойная процедура интерполяции. Параметры потока интерполируются с неструктурированной сетки на вспомогательную структурированную сетку, на которой производится расчет турбулентной вязкости. Рассчитанные значения турбулентной вязкости затем переносятся обратно на исходную сетку.

Реализация дифференциальных моделей турбулентности (например, модели Спаларта–Аллмареса или модели k–) требует доработки существующего программного кода, что связывается с необходимостью добавления дополнительных уравнений в структуру расчетного модуля, но не вносит принципиальных трудностей.

4. Расчет потоков и пересечение нитей. Каждому контрольному объему соответствует 5 значений физических переменных (плотность, 3 компоненты скорости, давление). На неструктурированной вычислительные методы и программирование. 2013. Т. 14 сетке данные обычно развертываются в линейный массив путем записи ne блоков по 5 значений (под ne понимается число контрольных объемов), а адресация переменной j для контрольного объема i имеет вид u[5 i + j]. Такой вариант подходит для архитектуры ЦПУ, но для архитектуры ГПУ намного эффективнее разворачивать данные в 5 блоков по ne значений, что дает адресацию u[i + j ne ], соответствующую модели объединения запросов (coalescing) и увеличивающую производительность вычислений.

С точки зрения программной реализации, вычислительная процедура представляет собой множество однотипных заданий по вычислению потоков через грани контрольных объемов. Для вычисления потока через внутренние грани используются газодинамические переменные в контрольных объемах, которым эта грань принадлежит, а также геометрические параметры граней (площади, нормали).

Для расчета потоков по методу Годунова или по схеме Рое на каждой грани контрольного объема решается задача о распаде произвольного разрыва. В подходе Годунова задача о распаде произвольного разрыва решается итерационным методом (например, методом Ньютона), скорость сходимости которого меняется от грани к грани. При сходимости итерационного процесса с разной скоростью в разных нитях одного варпа время выполнения варпа определяется временем выполнения самой медленной нити (грань с наиболее медленной скоростью сходимости итераций). Увеличение числа итераций не требует дополнительных операций по чтению из глобальной памяти, а все вычисления производятся с данными из регистровой памяти, поэтому разная скорость сходимости метода Ньютона для различных граней оказывает слабое влияние на общее время счета.

Для нахождения потоков производится суммирование потоков через общую грань контрольных объемов i и j, рассчитанных по методу Годунова или по схеме Рое, и сохранение результатов расчетов в массиве потоков по ячейкам. Потоки используются для расчета газодинамических переменных на новом слое по времени. Одна из проблем, возникающих при реализации параллельных вычислений на ГПУ, связана с пересечением нитей при суммировании потоков [15]. При параллельном вычислении потоков через грани между контрольными объемами i j и i k возникает ошибка, что связывается с одновременным суммированием потоков для контрольного объема i двумя разными нитями.

Для исключения ошибки, возникающей в результате обработки различными нитями одного контрольного объема, при вычислении потоков через грани контрольных объемов используются различные подходы.

1. Последовательная обработка граничных элементов. Каждая нить производит обработку только своих внутренних элементов. Обработка граничных элементов производится после перебора внутренних элементов одной нитью.

2. Повторение вычислений. Каждая нить производит обработку как внутренних элементов, так и граничных элементов, имеющих узлы, принадлежащие нити. Каждая нить осуществляет запись только для своих узлов.

3. Репликация данных. Производится распределение граничных элементов между нитями. Каждая нить осуществляет сохранение результатов расчетов в свой отдельный массив данных по узлам. Суммирование результатов производится отдельной нитью.

4. Потактовое вычисление. Элементы делятся на группы, не имеющие пересечений. Каждая группа обрабатывается отдельной нитью.

5. Использование фиктивных ячеек. К границам области добавляются фиктивные ячейки, параметры в которых рассчитываются таким образом, чтобы удовлетворить граничным условиям при расчете потоков через грани.

В подходах 1–4 для вычисления потока через граничные грани помимо геометрических параметров используются газодинамические переменные только в одном контрольном объеме. Поскольку газодинамические переменные полагаются постоянными на шаге интегрирования по времени, то задания по вычислению потоков являются независимыми по входным данным и допускают параллельную обработку.

При вычислении потоков с репликацией данных (метод 3) для исключения конфликтов по доступу к памяти на этапе вычисления потоков создается дополнительный массив для записи потоков по граням ячеек, что увеличивает потребление оперативной памяти [15]. Для каждой грани записывается два набора из 5 значений (плотность, 3 компоненты скорости и давление). После вычисления потоков через грани производится суммирование потоков для того, чтобы получить конечные значения в ячейках. Для этого необходимо хранить в памяти дуальный граф связей контрольных объемов (узлы графа ячейки сетки, ребра связи ячеек через общие грани контрольных объемов), который содержит 2ns + ne + 1 целочисленных значений, где ne число контрольных объемов и ns число внутренних граней контрольных объемов. Преимущество подхода состоит в том, что все задания по обработке внутренних граней контрольных объемов запускаются одновременно.

338 вычислительные методы и программирование. 2013. Т. 14 При потактовом вычислении потоков (метод 4) к дуальному графу сетки применяется алгоритм раскраски ребер. В множестве ребер графа выделяется такое подмножество ребер, чтобы каждый из узлов встречался не более одного раза. Обработка запущенными на ГПУ нитями такого подмножества ребер происходит параллельно и исключает возможность конфликтов нитей по модификации одних и тех же ячеек памяти. Процедура вычисления потоков разбивается на такты. На каждом из таких тактов обрабатывается одно из выделенных подмножеств ребер сетки. Число тактов по вычислению потоков не может быть меньше максимального числа граней для контрольных объемов, при этом число одновременно обрабатываемых на каждом из тактов граней не может быть больше, чем ne /2. Необходимость многократного запуска процедуры вычисления потоков для каждого из тактов и снижение числа обрабатываемых одновременно граней представляют собой отрицательные стороны данного метода. По сравнению с методом с репликацией данных в потактовом алгоритме нет необходимости в выделении дополнительных объемов оперативной памяти и лишнем суммировании вычисленных по граням потоков в ячейках.

В разработанном коде применяется подход с использованием фиктивных ячеек (метод 5), при этом отпадает необходимость учета типа грани контрольного объема (внутренняя или граничная). После копирования данных в память ГПУ запускается цикл по времени. На каждой итерации находится шаг интегрирования по времени, исходя из критерия устойчивости разностной схемы. Для каждого граничного условия производится добавление необходимых параметров в фиктивные ячейки, после чего выполняется расчет градиентов в центрах контрольных объемов и добавление в фиктивные ячейки градиентов, соответствующих граничным условиям. Расчет потоков производится для всех граней контрольных объемов, а затем для каждого внутреннего контрольного объема выполняется сложение потоков через грани контрольных объемов и расчет параметров на следующем слое по времени.

5. Тестовые задачи. Разработанные средства численного моделирования реализуются в рамках пакета программ ЛОГОС и применяются для решения ряда тестовых задач, для которых существуют надежные экспериментальные и расчетные данные. Решение тестовых задач производится на сетках с фиксированным числом узлов. Обзор тестовых задач пакета ЛОГОС дается в работе [4].

5.1. Обзор задач. Рассматривается моделирование ламинарного и турбулентного пограничного слоя на плоской пластине (задача А1), расчет течения невязкого сжимаемого газа в плоском канале с клином при M = 2 (задача А2), невязкое обтекание профиля NACA0012 под углом атаки (задача А3), невязкое обтекание профиля RAE2822 (задача А4), невязкое течение около конуса при M = 1.6 (задача А5), а также расчет теплообмена при обтекании обратной ступеньки (задача Т1), препятствия на стенке плоского канала (задача Т2) и при течении в квадратной каверне (задача Т3).

Расчеты производятся на основе явной схемы Эйлера 1-го порядка при помощи метода установления.

Дискретизация невязких потоков проводится при помощи схемы 2-го порядка точности с ограничителем minmod (за исключением задачи Т2, в которой применяется схема 1-го порядка). Для расчета вязких потоков используется интерполяция градиентов из центров ячеек на грань, что позволяет получить схему 2-го порядка точности. Для решения задачи о распаде произвольного разрыва (задача Римана) применяется метод Годунова (все задачи, за исключением А1 и Т3) или схема Рое с энтропийной поправкой Хартена (задачи А1 и Т3).

Задачи A1 и T3 решаются в вязкой постановке, а остальные задачи в невязкой. Проводится также моделирование турбулентного пограничного слоя на плоской пластине (при решении задачи А1 подключается модель турбулентности). Для задач, в которых предусматривалось разрешение вопросов теплообмена, возникают трудности в реализации явных разностных схем, связанные с необходимостью обеспечения устойчивости при дискретизации членов, определяющих механизм теплопроводности.

Результаты решения тестовых задач не приводятся, а основное внимание уделяется ускорению вычислительной процедуры. Для тестовой реализации алгоритма выполняется измерение производительности программного кода на ЦПУ и ГПУ как при выполнении всего шага по времени, так и отдельных операций.

Все вычисления выполняются для чисел с плавающей точкой одинарной точности.

Вычисления полностью выполняются на ГПУ (за исключением подготовки данных и обработки результатов), что не требует передачи данных между ЦПУ и ГПУ. Наличие вычислений, выполняющихся на ЦПУ, приводит к необходимости обменов данными (операции чтения и записи) по 5ne значений, что увеличивает общее время вычислений на ГПУ.

5.2. Пограничный слой на пластине. Рассматривается ламинарное или турбулентное обтекание тонкой пластины потоком вязкого сжимаемого газа. Размер расчетной области в направлении оси x составляет 30L (10L перед пластиной и 20L позади пластины), а в направлении оси y размер расчетной области равняется 20L, где L длина пластины (L = 1 м). Толщина расчетной области полагается равной одной ячейке. Расчеты проводятся на неравномерной сетке со сгущением узлов к поверхности пластины.

вычислительные методы и программирование. 2013. Т. 14 Во входном сечении задаются скорость (U = 10 м/с), статическое давление (p = 101 325 Па) и температура (T = 300 К). Для скорости на поверхности пластины используются условия прилипания и непротекания. Поверхность пластины считается адиабатической. В выходном сечении расчетной области используются граничные условия свободного вытекания. На удаленных границах задаются условия скольжения.

Профиль продольной скорости в различных сечениях пограничного слоя на плоской пластине сравнивается с решением задачи Блазиуса. В случае турбулентного обтекания профиль скорости сравнивается с законом Рейхардта, описывающим профиль скорости в ламинарном подслое, буферной и логарифмической подобластях.

5.3. Обтекание клина. Рассматривается течение невязкого сжимаемого га- нка о ная ы о ная за в плоском канале с клином (рис. 1). ани а ани а нка Угол полураствора клина полагается равным 4. Расчеты проводятся на сетке со Линия сгущением узлов перед клином, что тре- имм ии буется для разрешения скачка уплотнеРис. 1. Течение в плоском канале с клином ния. Толщина расчетной области в наM правлении оси z полагается равной 4 ячейкам. Число шагов по времени состав- 1.22 1.42 1.62 1.82 2.02 ляет 2 104.

Во входном сечении канала задается скорость потока (U = 697.52 м/с), статическое давление (p = 101 325 Па) и температура (T = 300 К), что соответствует Рис. 2. Линии уровня числа Маха в канале с клином числу Маха M = 2. В выходном сечении канала используется граничное условие свободного вытекания, на поверхности клина и стенки канала условие непротекания, а на участке нижней границы расчетной области перед клином условие симметрии.

При входных условиях задачи образуется присоединенный скачок уплотнения (рис. 2). Полученные результаты показывают развитие ударно-волновой структуры потока в канале с клином (зарождение скачка уплотнения, его развитие, отражение от стенок канала и взаимодействие с веером волн разрежения).

5.4. Обтекание профиля NACA0012. Рассматривается плоское трансзвуковое течение невязкого сжимаемого газа около профиля NACA0012 под углом атаки 4.

Расчетная область представляет собой круг радиусом 10L с центром, расположенным в центре тяжести профиля, где L хорда профиля (L = 1 м). Толщина расчетной области в направлении оси z полагается равной 1 ячейке. Количество шагов по времени полагается равным 104.

На границах расчетной области задаются M = 0.75 (число Маха), p = 85418.95 Па (статическое давление) и T = 260 К (температура), а также направление потока (nx = 0.9976, ny = 0.0698, nz = 0), соответствующее заданному углу атаки профиля. На поверхности профиля используется условие непротекания для скорости и условие теплоизолированности для температуры.

Результаты расчетов показывают формирование локальной сверхзвуковой области потока над поверхностью профиля (рис. 3, показана часть расчетной области).

5.5. Обтекание профиля RAE2822. Рассматривается течение невязкого сжимаемого газа около профиля RAE2822. Расчетная область представляет собой цилиндр диаметром 20 м и высотой 20 мм (центр цилиндра располагается в центре тяжести профиля). Толщина расчетной области в направлении оси z составляет 1 ячейку.

На входной границе задаются число Маха (M = 0.3), статическое давление (p = 96 526.6 Па) и температура (T = 255.556 К). На поверхности профиля используются граничные условия непротекания для скорости и теплоизолированности для температуры. На боковых границах используются условия симметрии течения.

Полученные результаты показывают расположение зон давления и разрежения на поверхности профиля (рис. 4).

5.6. Обтекание конуса. Рассматривается осесимметричное течение невязкого сжимаемого газа около конуса, расположенного в канале. Моделирование течения проводится в расчетной области, показанной на рис. 1. Расчетная область представляет собой сегмент с углом 1. Число шагов по времени составляет 3 104.

340 вычислительные методы и программирование. 2013. Т. 14

–  –  –

На входной границе задаются U = 435.51 м/с (скорость потока), p = 101325 Па (статическое давление) и T = 300 К (температура), что соответствует числу маха M = 1.6. В выходном сечении используется условие свободного вытекания, на поверхности конуса и стенки канала условие непротекания, а на участке нижней границы расчетной области перед конусом условие симметрии. На боковых границах (в окружном направлении) используются периодические граничные условия.

Результаты расчетов показывают формирование ударно-волновой структуры течения в канале с отсоединенным скачком уплотнения перед конусом (рис. 5).

–  –  –

5.7. Теплообмен при обтекании обратного уступа. Рассматривается обтекание обратного уступа высотой h = 5 мм потоком невязкого сжимаемого газа (рис. 6). Длина расчетной области составляет 15h (5h перед ступенькой и 10h после ступеньки), а ее высота во входном сечении 2h. Толщина расчетной области в направлении оси z составляет 1 ячейку.

На входной границе задаются скорость (U = 10 м/с), статическое давление (p = 101 325 Па) и температура (T = 300 К). На боковых границах расчетной области используются условия симметрии потока.

5.8. Теплообмен при обтекании препятствия на стенке. Рассматривается обтекание препятствия высотой h = 5 мм в плоском канале потоком невязкого сжимаемого газа (рис. 7). Длина расчетной области составляет 21h (10h перед препятствием и 10h после препятствия), а высота 5h. Толщина расчетной области в направлении оси z составляет 1 ячейку.

Во входном сечении канала задаются скорость потока (U = 10 м/с), статическое давление (p = 101 325 Па) и температура (T = 300 К). На боковых границах расчетной области используются условия симметрии течения.

5.9. Теплообмен при течении в каверне. Рассматривается теплообмен в плоской каверне с подвижной верхней стенкой. Толщина расчетной области в направлении оси z составляет 1 ячейку.

вычислительные методы и программирование. 2013. Т. 14 Скорость движения верхней стенки полагается U = 1 м/с. В качестве начальных условий в каверне задаются давление (p = 101 325 Па) и температура (T = 300 К). На стенках каверны применяются условия прилипания и непротекания. На боковых границах используются условия симметрии течения.

6. Ускорение счета. Результаты сравнения времени, необходимого на расчет одной итерации на ЦПУ и ГПУ при решении различных тестовых задач, а также ускорение счета представлены в табл. 1.

Расчеты производятся на одном ядре центрального процессора AMD Phenom 2.3 ГГц и на одном модуле графического процессора Tesla S1070, состоящем из 240 ядер, с тактовой частотой ядра 1.44 ГГц.

Ускорение решения тестовых задач изменяется от 22 (задачи А4 и А5) до 60 (задача Т1).

–  –  –

Для решения задачи А1 в турбулентной постановке используются различные сетки и вычислительные системы. Расчеты производятся на одном ядре центрального профессора Xeon X5670 с тактовой частотой

2.93 ГГц и на одном модуле графической системы Tesla S2050. Время счета одной итерации приводится в табл. 2 для сеток различной разрешающей способности. При увеличении узлов сетки с 105 до 107 ускорение счета изменяется приблизительно на 10%.

Таблица 2 Задача А1. Время и ускорение вычислений Число узлов Время счета на ЦПУ, с Время счета на ГПУ, с Ускорение 1.3 105 0.140 0.003 46.67 1.3 106 1.406 0.026 54.08 6.6 106 7.091 0.126 56.28 1.3 107 14.06 0.251 56.02

7. Заключение. В рамках пакета ЛОГОС разработана вычислительная процедура моделирования трехмерных течений вязкого сжимаемого газа на неструктурированных сетках и созданы средства поддержки параллельных вычислений на графических процессорах общего назначения. Для программной реализации кода используется технология CUDA.

На основе решения ряда тестовых задач проведено сравнение ускорения счета, достигнутого на ГПУ, по сравнению с временем счета на ЦПУ.

Направления дальнейших работ и исследований связаны с реализацией дифференциальных моделей турбулентности, неявных разностных схем и методов ускорения сходимости (многосеточный метод, сглаживание невязки), а также с применением и реализацией разностных схем высокой разрешающей способности.

СПИСОК ЛИТЕРАТУРЫ

1. Исаев С.А., Судаков А.Г., Баранов П.А., Усачов А.Е., Стрижак С.В., Лоханский Я.К., Гувернюк С.В. Разработка, верификация и применение основанного на многоблочных вычислительных технологиях распараллеленного пакета открытого типа VP2/3 для решения фундаментальных, прикладных и эксплуатационных задач аэромеханики и теплофизики // Вестник ЮУрГУ. Математическое моделирование и программирование. 2009.

№ 17. Вып. 3. 59–72.

2. Смирнов Е.М., Зайцев Д.К. Метод конечных объемов в приложении к задачам гидрогазодинамики и теплообмена в областях сложной геометрии // Научно-технические ведомости СПбГПУ. 2004. № 2. 70–81.

3. Абалакин И.В., Бахвалов П.А., Горобец А.В., Дубень А.П., Козубская Т.К. Параллельный программный комплекс NOISETTE для крупномасштабных расчетов задач аэродинамики и аэроакустики // Вычислительные методы и программирование. 2012. 13, № 2. 222–237.

342 вычислительные методы и программирование. 2013. Т. 14

4. Козелков А.С., Дерюгин Ю.Н., Зеленский Д.К., Глазунов В.А., Голубев А.А., Денисова О.В., Лашкин С.В., Жучков Р.Н., Тарасова Н.В., Сизова М.А. Многофункциональный пакет программ ЛОГОС для расчета задач гидродинамики и тепломассопереноса на суперЭВМ. Базовые технологии и алгоритмы // Сборник трудов XII Международного семинара “Супервычисления и математическое моделирование”. 11–15 октября 2010. Саров, Россия. Саров: РФЯЦ–ВНИИЭФ, 2011. 215–230.

5. Brandvik T., Pullan G. An accelerated 3D Navier–Stokes solver for ows in turbomachines // ASME Paper. 2009.

N. GT2009-60052.

6. Corrigan A., Camelli F., Lhner R., Wallin J. Running unstructured grid-based CFD solvers on modern graphics o hardware // AIAA Paper. 2009. N. 2009-4001.

7. Corrigan A., Camelli F., Lhner R., Mut F. Semi-automatic porting of a large-scale Fortran CFD code to GPUs // o International Journal for Numerical Methods in Fluids. 2012. 69, N 2. 314–331.

8. Kampolis I.C., Trompoukis X.S., Asouti V.G., Giannakoglou K.C. CFD-based analysis and two-level aerodynamic optimization on graphics processing units // Computer Methods in Applied Mechanics and Engineering. 2010. 199, N 9–12. 712–722.

9. Волков К.Н., Емельянов В.Н., Карпенко А.Г., Курова И.В., Серов А.Е., Смирнов П.Г. Численное решение задач гидродинамики на графических процессорах общего назначения // Вычислительные методы и программирование. 2013. 14, № 1. 59–67.

10. Волков К.Н., Емельянов В.Н., Карпенко А.Г., Смирнов П.Г., Тетерина И.В. Реализация метода конечных объемов и расчет течений вязкого сжимаемого газа на графических процессорах // Вычислительные методы и программирование. 2013. 14, № 1. 160–171.

11. Mavriplis D.J. Unstructured mesh discretizations and solvers for computational aerodynamics // AIAA Paper. 2007.

N. 2007-3955.

12. Волков К.Н. Дискретизация уравнений Навье–Стокса на неструктурированной сетке при помощи метода контрольного объема и разностных схем повышенной разрешающей способности // Журнал вычислительной математики и математической физики. 2008. 48, № 7. 1250–1273.

13. Волков К.Н., Емельянов В.Н. Моделирование крупных вихрей в расчетах турбулентных течений. М.: Физматлит, 2008.

14. Liu C.H., Li Y. Turbulence modeling for computing viscous high-Reynolds-number ows on unstructured meshes // Computer Methods in Applied Mechanics and Engineering. 2001. 190, N 40. 5325–5339.

15. Горобец А.В., Суков С.А., Железняков А.О., Богданов П.Б., Четверушкин Б.Н. Применение GPU в рамках гибридного двухуровневого распараллеливания MPI+OpenMP на гетерогенных вычислительных системах // Параллельные вычислительные технологии. Челябинск: Издательский центр ЮУрГУ, 2011. 452–460.

Поступила в редакцию 14.05.2013





Похожие работы:

«УДК 004.312.44 МОДЕЛИРОВАНИЕ СИСТЕМЫ МОНИТОРИНГА ПУЛЬСА НА ОСНОВЕ ИК-ДАТЧИКА С ИСПОЛЬЗОВАНИЕМ UML Матюшкин Никита Викторович Пензенский государственный технологический университет Студе...»

«ДЮЛИЧЕВА Юлия Юрьевна УДК 519.68 МОДЕЛИ КОРРЕКЦИИ РЕДУЦИРОВАННЫХ БИНАРНЫХ РЕШАЮЩИХ ДЕРЕВЬЕВ 01.05.01 – Теоретические основы информатики и кибернетики Диссертация на соискание ученой степени кандидата физико-математических наук Научный руководитель: доктор физико-математических наук, профессор ДОНСК...»

«Секция "География" 1 СЕКЦИЯ "ГЕОГРАФИЯ" ПОДСЕКЦИЯ "ГЕОГРАФИЧЕСКАЯ КАРТОГРАФИЯ, ГЕОИНФОРМАТИКА И АЭРОКОСМИЧЕСКОЕ ЗОНДИРОВАНИЕ" Прогнозирование эрозионных процессов на основе геоинформационных технологий Андреянов Дмитрий Юрьевич аспирант Ставропольский научно-исследовательский институт сельского хозяйства, Михайловск, Росси...»

«ISSN 2222-0364 • Вестник ОмГАУ № 3 (23) 2016 СЕЛЬСКОХОЗЯЙСТВЕННЫЕ НАУКИ kolmakovaek.@mail.ru; Ледовский Евгений НикоLedovskiy Evgeniy Nikolaevich, Cand. Agr. Sci., Head, лаевич, кандидат с.-х. наук, заведующий сектором, Plant Protection Sector, Siberian Research Institute of ФГБН...»

«В.Ю. Зайченко ГЕОИНФОРМАТИКА КАК САМОСТОЯТЕЛЬНАЯ НАУКА И ОТДЕЛЬНАЯ НАУЧНАЯ ДИСЦИПЛИНА Введение Новое научное направление науки информатики, получившее название Геоинформатика возникло в России в середине 70-х годов ХХ столетия в связи с потребностью общества в совершенствовании системы управления природными ресурсами...»

«Министерство образования Республики Беларусь Учреждение образования "Белорусский государственный университет информатики и радиоэлектроники" УТВЕРЖДАЮ Проректор по учебной работе и социальным вопросам А.А. Хмыль " 16...»

«Второй (заключительный) этап академического соревнования Олимпиады школьников "Шаг в будущее" по общеобразовательному предмету "Информатика" 10 класс, февраль, 2016 г. Вариант № 1. Задание 1 (12 баллов) Определить минимальное основание системы счислен...»

«4 УДК 621.396.6.002 Ланин В.Л. Технология сборки, монтажа и контроля в производстве электронной аппаратуры / Бел. гос. ун-т информатики и радиоэлектроники. – Мн.: Инпредо, 1997. – 64 с. ISBN 985-63-45-06-5 Рассмотрены методы сборки и монтажа в производстве электронной аппаратуры, технологическое оборуд...»








 
2017 www.doc.knigi-x.ru - «Бесплатная электронная библиотека - различные документы»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.