Александр Новоселов (ИТПМ МГУ) Олег Павловский (ИТПМ...

Post on 04-Jan-2016

83 views 2 download

description

Применение суперкомпьютерных технологий и технологии CUDA для PIMC моделирования в физике конденсированного состояния вещества на примере металлического водорода. Александр Новоселов (ИТПМ МГУ) Олег Павловский (ИТПМ МГУ). Что такое PIMC: Path Integral. теоретически. - PowerPoint PPT Presentation

Transcript of Александр Новоселов (ИТПМ МГУ) Олег Павловский (ИТПМ...

Применение суперкомпьютерных технологий и технологии CUDA для PIMCмоделирования в физике конденсированного

состояния вещества на примереметаллического водорода

Александр Новоселов (ИТПМ МГУ)

Олег Павловский (ИТПМ МГУ)

Что такое PIMC: Path Integral

теоретически

в численном моделировании

Что такое PIMC: Path Integral

среднее значение

наблюдаемой

Что такое PIMC: Monte Carlo

(по всему бесконечному

числу конфигураций) - большое, но конечное число случайных конфигураций с вероятностью

Процессор 1 ... Процессоры ... Процессор Nproc

Генерация Nconf/Nproc случайных конфигураций x с вероятностью P(x)

… Генерация Nconf/Nproc случайных конфигураций x с вероятностью P(x)

Вычисление и усреднение наблюдаемой A по этим конфигурациям

… Вычисление и усреднение наблюдаемой A по этим конфигурациям

Усреднение данных по процессорам (среднее арифметическое Nproc чисел)

PIMC: распараллеливание 1

PIMC: генерация конфигурацийЛюбая начальнаяконфигурация x0

Марковски

й проц

есс

Условие детального баланса

Предельное распределение

«нетермализованные»конфигурации

«термализованные»конфигурации

PIMC: распараллеливание 2Процессор 1 ... Процессоры ... Процессор Nproc

Начальная конфигурация

Генерация нетермализованных конфигурации до достижения предельного распределения

«первая термализованная» конфигурация

Генерация Nconf/Nproc случайных конфигураций x с вероятностью P(x)

… Генерация Nconf/Nproc случайных конфигураций x с вероятностью P(x)

Вычисление и усреднение наблюдаемой A по этим конфигурациям

… Вычисление и усреднение наблюдаемой A по этим конфигурациям

Усреднение данных по процессорам (среднее арифметическое Nproc чисел)

Алгоритм: проблема автокорреляций

Алгоритм: многоуровневый

Алгоритм: многоуровневыйвыбор действия уровня

Алгоритм: многоуровневыйCUDA-распараллеливание

Блок 1

Блок 2

Блок Nblocks

Координаты разных слоёв не связаны

У блоков нет общего кэша

Координаты разных частиц одного слоя связаны

У нитей в блоке есть общий кэш

Нить 1

Нить 2

Нить Nthreads

Металлический водород: на Земле

Ячейки с алмазными наковальнями

–Diamond Anvil Cells

Eremets M.I., Troyan I.A.Conductive dense hydrogen // Nature Materials. — 2011.

Металлический водород: в космосе

Металлический водород:модель

Вигнеровский кристалл протонов

Металлический водород:постановка задачи

• Энергия– Потенциальная– Кинетическая– Полная внутренняя

• Давление• Отношение Линдеманна• Конфигурации

• Уравнения состояния• Фазовый переход

Результаты: потенциальная энергия

rs=200 (ρ=2,1*10^6 кг/м^3)

Результаты: кинетическая энергия

rs=200 (ρ=2,1*10^6 кг/м^3)

Результаты: давление

rs=200 (ρ=2,1*10^6 кг/м^3)

Результаты: отношение Линдеманна

Результаты:конфигурации

rs=200 (ρ=2,1*10^6 кг/м^3)

T=14*10^3 К

Результаты:конфигурации

rs=200 (ρ=2,1*10^6 кг/м^3)

T=13*10^3 К

Объёмно-центрированная кубическая (bcc) решётка

Фазовый переход

Фазовый переход:проблема термализации

«метастабильное состояние»

Один процессор успел дотермализоваться

Фазовый переход:распараллеливание термализации

Процессор 1

Процессор 2

Процессор 3

Полная термализация

Полная термализация

Полная термализация

Процессор 1

Процессор 2

Процессор 3

Полная термализация

Раздача термализованной конфигурации

врем

я

Эффективная набранная статистика

Выводы: физика

• Получены уравнения состоянияи

– полное термодинамическое описание

• Обнаружен и исследован фазовый переход жидкость – bcc кристалл

Выводы: вычислительные технологии• Реализованы высокопроизводительные

алгоритмы, применимые и в других моделях

• Использование суперкомпьютера – почти идеальное mpi-распараллеливание

• Использование технологии CUDA, распараллеливание на GPU – ускорение в ≈2*30 раз (на процессор)

• Полный объём использованных вычислительных ресурсов≈10 000 процессоро-часов