Без темы
<<  Параллельная реализация расчета задач аэроакустики на неструктурированных сетках Параллельное проектирование и его свойства  >>
Параллельное Автоматическое Дифференцирование
Параллельное Автоматическое Дифференцирование
Цель
Цель
Модель Блэка-Шоулза
Модель Блэка-Шоулза
Граничные условия
Граничные условия
Построение разностной схемы
Построение разностной схемы
Построение разностной схемы
Построение разностной схемы
Полученные результаты
Полученные результаты
Автоматическое дифференцирование
Автоматическое дифференцирование
Автоматическое дифференцирование
Автоматическое дифференцирование
CUDA
CUDA
CUDA
CUDA
CUDA
CUDA
CUDA
CUDA
CUDA
CUDA
Приминение в реальной жизни
Приминение в реальной жизни
Список литературы
Список литературы

Презентация: «Параллельное Автоматическое Дифференцирование». Автор: incube. Файл: «Параллельное Автоматическое Дифференцирование.pptx». Размер zip-архива: 70 КБ.

Параллельное Автоматическое Дифференцирование

содержание презентации «Параллельное Автоматическое Дифференцирование.pptx»
СлайдТекст
1 Параллельное Автоматическое Дифференцирование

Параллельное Автоматическое Дифференцирование

Дипломная работа Преснова И.М Научный руководитель Демьянович Ю. К. 2011

2 Цель

Цель

Основная цель –решение уравнение Блэка-Шоулза разностными методами, имплементация на языке С++, распараллеливание решения с помощью технологии CUDA, применение к решению методов автоматического дифференцирования. Ожидаемый результат: Ускорение процесса без потери точности по сравнению с уже существующими решениями

3 Модель Блэка-Шоулза

Модель Блэка-Шоулза

Модель Блэка-Шоулза: Mu=0.5 s2 ?2 uss + r s us – ru + ut (1) Уравнение: Mu=0; u(s,t) – искомая функция. Ответом будут являться значения u при t=0; Входные параметры: r –константа из [0,1) ? – функция от s и t s ? [b,8b], t ? [0,T] к, b, T – положительные константы: к<b

4 Граничные условия

Граничные условия

u(b,t)=0, ? t ? [0,T) u(S,T)= S – K , uss (8b,t) = 0 , ? t ? [0,T)

5 Построение разностной схемы

Построение разностной схемы

Для решения была использована явно-неявная схема Кранка-Николсона, поскольку она имеет наибольшую точность решения и устойчива для любых шагов по t и s( в силу своей неявности).

6 Построение разностной схемы

Построение разностной схемы

Разбиения по осям: По S : наиболее важным является изменение функции в окрестностях b, поскольку там находится «тяжело усваиваемое» условие, поэтому по S берется экспоненциальное распределение со сгущением уb. По t : равномерное разбиение

7 Полученные результаты

Полученные результаты

При сравнении с уже существующими аналитическими решениями* данной модели отличия в решениях были следующие: При минимальных размерах сетки: При S>>B: погрешность порядка 0.01 % При S близких к B (у нижнего граничного условия): погрешность порядка 1 % При увеличении сетки погрешность уменьшается. * - реализация модели Эрикса Персона.

8 Автоматическое дифференцирование

Автоматическое дифференцирование

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

9 Автоматическое дифференцирование

Автоматическое дифференцирование

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

10 CUDA

CUDA

Для распараллеливания модели применялась видео карта Nvidia Quadro 600 и библиотека для работы с ГПУ «CUDA Nvidia toolkit 3.2» Для сравнения, НЕ-параллельная модель запускалась на машине со следующими данными: CPU(s): 1 x Quad core Intel Core i7 920 2.67 GHz RAM: 6 Gb HDD(s): 750 GB SATA OS: CentOS 5.5 x86_64

11 CUDA

CUDA

В решении данной модели будет использовано распараллеливание задачи. Это очень удобно, поскольку так достигается наибольшая эффективность ГПУ, чем при распараллеливании по данным. Так же распараллеливание по данным проблематично, поскольку память на ГПУ сильно ограничена.

12 CUDA

CUDA

Применение к разностным методам. Алгоритм решения задачи Блэка-Шоулза с помощью разностных методов сводится к следующему алгоритму: Построение СЛАУ , Решение СЛАУ, Вычисление производных из полученных значений, Переход к следующему шагу.

13 CUDA

CUDA

На ГПУ i-ый процесс работает со значениями, имеющими i-ый индекс, таким образом при вычислении СЛАУ– вычисляет только свое уравнение. При нехватке доступных процессов, каждый процесс может оперировать за несколько индексов.

14 CUDA

CUDA

Для решения СЛАУ на ЦПУ применялся метод прогонки. Для ГПУ был выбран другой алгоритм решения СЛАУ: cyclic reduction. На ЦПУ этот алгоритм работает за 75% времени работы обычного алгоритма прогонки. При переносе на ГПУ – ускорение между разностной схемой на ЦПУ и на ГПУ составило 2-2.5 раза (в пользу ГПУ,).

15 Приминение в реальной жизни

Приминение в реальной жизни

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

16 Список литературы

Список литературы

Эрикс Персон «turbo warrants pricing» Wikipedia.org Nvidia “Cuda programming guide” W. Tucker “Autovalidating numerical methods” D. Eglof “High performance finite difference PDE solvers on GPU”

«Параллельное Автоматическое Дифференцирование»
http://900igr.net/prezentacija/geometrija/parallelnoe-avtomaticheskoe-differentsirovanie-228839.html
cсылка на страницу
Урок

Геометрия

40 тем
Слайды
900igr.net > Презентации по геометрии > Без темы > Параллельное Автоматическое Дифференцирование