Решение дифф. уравнений на CUDA на примере задач аэро-гидродинамики. zЛектор: yСахарных Н.А. (ВМиК МГУ, NVidia)Сахарных Н.А. (ВМиК МГУ, NVidia)

Slides:



Advertisements
Similar presentations
О.О.Замков, Дж.Л.Локшин Тестирование как форма текущего и итогового контроля в учебном процессе МИЭФ ГУ-ВШЭ.
Advertisements

Астрометрические каталоги К.В.Куимов, ГАИШ МГУ. Определение астрометрического каталога Астрометрический каталог – понятие неопределённое. Например, это.
Обогащение урана. ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ: Степень обогащения – α = М 235 /(M M 235 ) (Степень обогащения природного урана α f = 0,0071)
Работа выполнена учителем физики Паниной О. В. Руководитель:
Поиск оптимального набора параметров оптимизаций компилятора Брусенцов Леонид Евгеньевич студент 4 курса ФИТ НГУ Руководители:Илья.
1. ИССЛЕДОВАНИЯ РЕЗОНАНСНОГО РАССЕЯНИЯ НЕЙТРОНОВ ЯДРАМИ В ОБРАТНОЙ ГЕОМЕТРИИ. 2. ИЗМЕРЕНИЕ ДЛИНЫ n-n-РАССЕЯНИЯ. 3. ИЗМЕРЕНИЕ ГРАВИТАЦИОННОЙ МАССЫ НЕЙТРОНА.
Дипломная работа Ивановой О.О., группа 545 Научный руководитель: д. ф.-м. н., профессор Терехов А.Н. Генерация кода по диаграмме активностей.
Расторгуев А.C., 545 группа Научный руководитель: Пименов А.А. Рецензент: ст. преп. Смирнова Е.А.
Моделирование распространения магнитогидродинамических корональных волн Афанасьев А.Н., Уралов А.М., Гречнев В.В. Институт солнечно-земной физики, Иркутск.
Алгоритм приближённого join’а на потоках данных Выполнил : Юра Землянский, 445 группа Научный руководитель : Б.А. Новиков СПб, 2011 Санкт-Петербургский.
Автор : учитель математики МОУ « СОШ № 76» Виноградова Светлана Анатольевна.
Влажность воздуха Урок физики 8 класс.
Влияние нестационарного солнечного ветра на структуру гелиосферного интерфейса Проворникова Е.А., Малама Ю.Г., Измоденов В.В., Рудерман М.С. Мех-мат МГУ.
Вид продук ции А i, ед. Затраты на выполнение заказа, руб. Затраты на хранение C xi, руб./ед.год S i, ед. NiNi T i,дн. руб. СoСo СiСi , ,5445.
Неотрицательное решение задачи Коши. Нередко постановка задачи требует чтобы фазовые переменные принимали лишь неотрицательные значения. Так, в физических.
Санкт - Петербургский Государственный Университет Математико - механический факультет Кафедра системного программирования Система проверки данных на полноту.
Курсовая работа студента 345 группы Чуновкина Фёдора Дмитриевича Научный руководитель: Бондарев А.В. Санкт-Петербургский Государственный Университет Математико-механический.
Математические модели Динамические системы. “Модели” Математическое моделирование процессов отбора2.
Определение необходимого уровня запасов на складе.
Миллер Дмитрий, 545 группа Научный руководитель: д.ф.-м.н., профессор, А.Н.Терехов Рецензент: к.ф.-м.н, доцент, А.Н. Иванов.
Диффузия в пленке Метод разделения переменных:. Диффузия в пленке Десорбция, граничные условия  начальные условия 
Диффузия в пленке Метод разделения переменных:. Диффузия в пленке Десорбция, граничные условия  начальные условия 
Параметризация устройств сетевого управления Казакова А.С. Научный руководитель: Венгерова Е.А. Рецензент: Ушаков К.С. Кафедра системного программирования.
Адаптивный метод распределения SPMD-заданий в грид Паньшенсков Михаил, 545 группа Научный руководитель: Лукичев А.С. Рецензент: Демьянович Ю.К июня.
О ФОРМИРОВАНИИ И ФИНАНСОВОМ ОБЕСПЕЧЕНИИ ВЫПОЛНЕНИЯ ГОСУДАРСТВЕННОГО (МУНИЦИПАЛЬНОГО) ЗАДАНИЯ ГОСУДАРСТВЕННЫМИ (МУНИЦИПАЛЬНЫМИ) УЧРЕЖДЕНИЯМИ.
To the Solution of a Bilinear Optimal Control Problem with State Constrains by the Doubled-Variations Method E.A. Rovenskaya Lomonosov Moscow State University,
1 Соловьёв Ю.А., Царев В.М. (Российский общественный институт навигации, НТЦ «Интернавигация») Развитие требований к радионавигационному обеспечению.
Сахарных Николай (Nvidia) Решение трехдиагональных систем для методов покоординатного расщепления и задач гидродинамики.
Демидов А.В г. Операционные системы Лекция 3 Процессы.
1 Генерация контекстных ограничений для баз данных Выполнил: Жолудев В. Научный руководитель: Терехов А.Н. Рецензент: Иванов А.Н.
Москва 2008 Специализированное вычислительное устройство для обработки радиолокационной информации Московский физико-технический институтИнститут точной.
1 Организация вычислительной системы ЛЕКЦИЯ №2 Калинина А.П.
Описание архитектуры и процесса решения типовых задач
Простейшая модель генератора начального состояния для квантового компьютера на связанных электронах в волноводах Автор: Курасов А.Е. Научный руководитель:
Сравнение различных методов хранения XML в реляционных базах данных и в разных системах. Нгуен Тхань Хуен- 545 группа Руководитель : Б.А. Новиков Рецензент:
PHP как язык программирования. Типы данных логические величины int, integer – целые числа real, double, float – вещественные числа string – строки array.
Микрофазное расслоение в расплаве двойных гребнеобразных полимеров Выполнил студент Палюлин В.В. Научный руководитель: к.ф.-м.н. Потемкин И.И.
Лобанов Алексей Иванович Основы вычислительной математики Лекция 1 8 сентября 2009 года.
Симулятор квантовых вычислений Выполнил: Гедерцев А.С. Руководитель, д.ф.-м.н., профессор: Граничин О.Н.
Методы интерактивной визуализации динамики жидких и газообразных сред Елена Костикова, 521 гр.
Тема: Сравнительный анализ сложности факторизации алгоритмов целых чисел Выполнила: Дубовицкая Н.В., гр 957 Научный руководитель: Ишмухаметов Ш.Т.
Вычисление типов в императивных динамически типизированных языках. Михаил Калугин, студент 3 курса ММФ Научные руководители: Игорь Николаевич Скопин Андрей.
Применение метода представления функции переходов с помощью абстрактных конечных автоматов в генетическом программировании Царев Ф. Н. Научный руководитель.
Санкт-Петербургский Государственный Университет Математико-Механический факультет Кафедра системного программирования Применение диаграмм двоичных решений.
Реализация XPath над S-выражениями 2007 Миленин Евгений, гр. 544 Кафедра Системного Программирования Математико-Механический ф-т, СПбГУ Научный руководитель:
International Conference “Recent Problems in Computational Mathematics and Mathematical Modeling” November, 29 – 30, 2010, Moscow, Russia Past, Present.
Методы определения параметров вращения Земли
ПОДДЕРЖКА ЗАДАЧ ОПЕРАТИВНОГО МОНИТОРИНГА ПРИРОДНЫХ ПРОЦЕССОВ В ОКЕАНОЛОГИЧЕСКОЙ ИНФОРМАЦИОННО- АНАЛИТИЧЕСКОЙ СИСТЕМЕ ДВО РАН А.В. Голик, А.Е. Суботэ, С.Г.
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Математико-механический факультет Кафедра системного программирования Автоматизация выбора оптимальной.
Методы анализа данных. Статистическая проверка гипотез.
Моделирование систем хранения с целью уменьшения потребления энергии Научный руководитель: ассистент кафедры информатики Алиев А. А. Рецензент: ст. пр.
Демидов А.В г. Операционные системы Лекция 4 Работа с файлами.
Доклад сборной команды лицея БГУ Докладчик: Бондаренко Александр Духовое ружьё.
Методы интерактивной визуализации динамики жидких и газообразных сред Костикова Елена Юрьевна, 521 гр. Научный руководитель: Игнатенко Алексей Викторович.
Математическая модель движения автономного робота Руководитель: Рубцов И. В. Докладчик: Мартышин С. В. Цель работы: прогнозирование эксплуатационных характеристик.
МЕТОД СКОЛЬЗЯЩЕГО КОНТРОЛЯ ДЛЯ ОЦЕНКИ КАЧЕСТВА РЕКОМЕНДАТЕЛЬНЫХ ИНТЕРНЕТ- СЕРВИСОВ А.Ю. Каминская, Р.А. Магизов Научный руководитель – Д.И. Игнатов Государственный.
Диффузия в пленке Кинетика десорбции, граничные условия I-го рода.
ВВЕДЕНИЕ В ВЫЧИСЛИТЕЛЬНУЮ МАТЕМАТИКУ Лекция 5 6 октября 2009 ВЫЧИСЛИТЕЛЬНАЯ ЛИНЕЙНАЯ АЛГЕБРА.
Динамическая модель взаимодействия аминокислотных остатков с границей раздела фаз МГУ им. М.В. Ломоносова Физический Факультет кафедра физики полимеров.
Проверка эквивалентности срединной и линейной осей многоугольника Дипломная работа студента 545 группы Подколзина Максима Валериевича Санкт-Петербургский.
Молекулярная динамика (MD). Движения белка. Зачем нужны молекулярная механика и моделирование? ЭкспериментТеория РСА, ЯМРРазработка Мат. модели Рассеивание:
Московский инженерно-физический институт (государственный университет) НЕЙТРОННО-ФИЗИЧЕСКИЕ ХАРАКТЕРИСТИКИ ТЯЖЕЛОВОДНОГО РЕАКТОРА С РЕГУЛИРУЕМЫМ СПЕКТРОМ.
Сравнение подходов к индексированию XML документов c поддержкой некоторых операций модификации Выполнил: Василий Шикин, 545 группа Руководитель: Дмитрий.
___________________________ Грязнов В.Б. Директор по Информационным технологиям ОАО «Мосэнерго»
Исследование возможностей сервисной шины SonicMQ Дипломная работа студентки 545 группы Комольцевой Дарьи Владимировны Научный руководитель: Графеева Н.Г.
SQL Server 2012 Более 100 новых функций!. Конференция «Лонч SQL Server 2012» в Санкт-Петербурге 10 апреля 2012 Courtyard by Marriott 2-ая линия Васильевского.
GSA Co., Ltd ( Tel : ~4, Fax : Refrigerated air dryer, Desiccant.
© Copyright 2012 Hewlett-Packard Development Company, L.P. HP Restricted. For HP and Channel Partner internal use only. Серверы HP ProLiant Gen8 Александр.
Mechanical Properties of DNA Local Structure: Ultrasound Studies Dmitry Yu. Nechipurenko, Mikhail V. Golovkin, Sergej L. Grokhovsky, Irina А. Il'icheva,
Отчетность средствами Reporting Services 2008
Presentation transcript:

Решение дифф. уравнений на CUDA на примере задач аэро-гидродинамики. zЛектор: yСахарных Н.А. (ВМиК МГУ, NVidia)Сахарных Н.А. (ВМиК МГУ, NVidia)

План zВведение и постановка задачи zОсновные уравнения zЧисленный метод расщепления zОсобенности реализации zРезультаты и выводы

Введение zВычислительные задачи аэро- гидродинамики yМоделирование турбулентных течений zВМиК МГУ, кафедра мат. физики yПасконов В.М., Березин С.Б.

Турбулентность Моделирование турбулентности Прямое численное моделирование (DNS) Моделирование крупномасштабных вихрей (LES) Осредненные уравнения Навье-Стокса (RANS) все масштабы турбулентности очень затратный

Постановка задачи zТечение вязкой несжимаемой жидкости в 3D канале yКанал заполнен и находится в однородной среде yПроизвольные начальные и граничные условия yНеизвестные величины – скорость и температура

Основные уравнения zПолная система уравнений Навье- Стокса в безразмерных величинах yУравнение неразрывности yУравнения движения (Навье-Стокса) yУравнение энергии

Обозначения Плотность Скорость Температура Давление zУравнение состояния – газовая постоянная

Уравнение неразрывности zИспользуется при выводе остальных уравнений (движения и энергии) zПроверка точности текущего решения

Уравнения Навье-Стокса zВторой закон Ньютона: Вязкая жидкость: f – массовые силы (сила тяжести) – тензор вязких напряжений p – давление Невязкая жидкость:

Безразмерные уравнения zПараметры подобия yЧисло Рейнольдса yЧисло Прандтля zУравнение состояния для идеального газа/жидкости: – характерная скорость, размер – динамическая вязкость среды – коэффициент теплопроводности – удельная теплоемкость

Уравнения движения zБезразмерная форма: yНе рассматриваем массовые силы yУравнение состояния

Уравнение энергии zПервый закон термодинамики для объема V: zДиссипативная функция:

Финальные уравнения z4 нелинейных уравнения z4 неизвестные величины: yКомпоненты скорости: u, v, w yТемпература: T

Численный метод zРасщепление по координатам XYZ

Уравнение диффузии z3 дробных шага – X, Y, Z zНеявная конечно-разностная схема

Уравнения Навье-Стокса zУравнение для X-компоненты скорости y+ итерации по нелинейности X Y Z

Шаг по времени (n-1) time step Splitting by X Splitting by Y Splitting by Z Updating non-linear parameters Global iterations (n) time step (n+1) time step

Дробный шаг zЛинейное PDEs N time layer u: x-velocityv: y-velocityw: z-velocityT: temperature N + 1 time layer Sweep Solves many tridiagonal systems independently Next layer Previous layer

Дробный шаг zНелинейное PDEs N time layer u: x-velocityv: y-velocityw: z-velocityT: temperature N + ½ time layer N + 1 time layer Update Copy Sweep Solves many tridiagonal systems independently Local iterations Next layer Previous layer

Стадии алгоритма zРешение большого количества трехдиагональных СЛАУ zВычисление диссипации в каждой ячейке сетки zОбновление нелинейных параметров

Особенности метода zБольшой объем обрабатываемых данных zВысокая арифметическая интенсивность zЛегко параллелится

Реализация на CUDA zВсе данные хранятся в памяти GPU y4 скалярных 3D массива для каждой переменной (u, v, w, T) y3 дополнительных 3D массива z~1GB для сетки 192^3 в double

Решение трехдиагональных СЛАУ zКаждая нить решает ровно одну трехдиагональную СЛАУ yНа каждом шаге N^2 независимых систем Расщепление XРасщепление YРасщепление Z

Метод прогонки zНеобходимо 2 дополнительных массива yхранение: локальная память zПрямой ход yвычисление a[i], b[i] zОбратный ход yx[i] = a[i+1] * x[i+1] + b[i+1]

Проблемы реализации zКаждая нить последовательно читает и пишет столбец 3D массива yКоэффициенты и правая часть zY, Z – прогонки coalesced zX – прогонка uncoalesced!

Оптимизация прогонки zX – прогонка yТранспонируем входные массивы и запускаем Y-прогонку общая производительность всех прогонок

Расчет диссипации zРасчет частных производных по трем направлениям yЛокальный доступ к памяти zКаждая нить обрабатывает столбец данных yПереиспользование расчитанных производных zИспользование разделяемой памяти (?)

Оптимизация диссипации zРефакторинг кода yПредварительный расчет некоторых констант, избавление от лишних if z C++ шаблоны для X, Y, Z-диссипации yУменьшение числа регистров, нет лишних обращений к памяти

Нелинейные итерации zНеобходимо посчитать полусумму двух 3D массивов zКаждая нить считает сразу для столбца данных – N^2 нитей yВсе чтения/записи coalesced zОптимальный выбор размера блока z80% от пиковой пропускной способности на Tesla C1060

Пример кода // boundary conditions switch (dir) { case X: case X_as_Y: bc_x0(…); break; case Y: bc_y0(…); break; case Z: bc_z0(…); break; } a[1] = - c1 / c2; u_next[base_idx] = f_i / c2; // forward trace of sweep int idx = base_idx; int idx_prev; for (int k = 1; k < n; k++) { idx_prev = idx; idx += p.stride; double c = v_temp[idx]; c1 = p.m_c13 * c - p.h; c2 = p.m_c2; c3 = - p.m_c13 * c - p.h; double q = (c3 * a[k] + c2); double t = 1 / q; a[k+1] = - c1 * t; u_next[idx] = (f[idx] - c3 * u_next[idx_prev]) * t; }

Тест производительности zТестовые данные yСетка 128^3, 192^3 y8 нелинейных итераций zСравнение CPU и GPU yАбсолютное время работы

Тест – float time steps/sec 20x 7x 9x

Тест – double time steps/sec 10x 4x 5x

Тест – float time steps/sec 28x 8x 11x

Тест – double time steps/sec 13x 4x 5x

Визуализация Векторное поле скоростей uv w T Срез вдоль Х

Выводы zВысокая эффективность Tesla в задачах аэро-гидродинамики zПрограммная модель CUDA – удобное средство утилизации ресурсов GPU zПрименение GPU открывает новые возможности для исследования

Вопросы