Диссертация (786409), страница 2
Текст из файла (страница 2)
В вычислительных задачах в основном используются 0РО производства ИУ101А в виду того, что компания выпустила удобное средство разработки СОВА (Сошрп1е Оп111ей Везучее АгсЫ1есШге), которое представляет новую программную высокоуровневую модель. Чтобы алгоритм эффективно выполнялся на видеокарте, необходимо его представить в виде параллельных операций над тысячами блоками данных.
В СНА потоки объединяются в блоки одинакового размера. Программист выбирает необходимое или оптимальное количество блоков, которое запускается на устройстве. Эффективное выполнение блоков требует понимания вычислительной конфигурации аппаратного устройства. Например, видеокарта 480ОТХ содержит 480 потоковых процессоров. Каждый мультипроцессор выполняет 32 потока одновременно, что составляет мультипоток (иахр). Например, при организации 3 блоков по 128 потоков необходимо задействовать 12 мультипотоков. Минимальное количество потоков выполнения равно размеру мультипотока. Все 32 потока в мультипотоке выполняют одну инструкцию.
Важным является вопрос специфичного доступа к памяти. Большие объемы данных хранятся в глобальной памяти, данные неободимые вычислительным потокам в блоке для скоростного обмена загружаются в разделяемую память. Повышает скорость запросов к памяти специфичная текстурную память, которая имеет механизмы кеширования, предотвращает ошибки выхода за пределы памяти, а также обеспечиваетлинейную интерполяцию. Память ОРО имеет большую пропускную способность и большую задержку при обращении по заданному адресу. Во время обращения к памяти может формироваться множество запросов.
Если потоки из вычислительного блока обращаются к близким адресам памяти, то несколько запросов могут быть сгруппированы в один и исполнены параллельно. Это свойство используется для повышения скопрости доступа. Интенсивный рост производительности вычислительной техники и, прежде всего, многопроцессорных вычислительных систем делает возможным в настоящее время эффективно моделировать структуры, состоящие из сотен миллионов структурных элементов. Особенности молекулярно-динамического моделирования наносистем на графических процессорах обсуждаются в статье [1051.
В таких задачах расчет действующих на атомы сил требует значительных вычислительных затрат. В больших системах обычно используется модель короткодействия, когда область влияния одного атома ограничивается радиусом усечения. На графических процессорах эффективно разбивать область моделирования на ячейки. Такая модель уменьшает количество вычислений для Ж, атомов с О(М~) до 0(Ф,) и допускает независимые параллельные расчеты.
Подобные вычисления каждого шага моделирования выполнялись в работе [161 полностью на ОР1). Оценивалась производительность двух подходов; построения списка соседей и ячеистой модели движения [91, достигалась производительность в 160 шагов вычислений за секунду. В настоящее время известен целый ряд эффективных реализаций для сравнительно простых потенциалов межчастичного взаимодействия. В этой связи отметим такие программные комплексы, как НООМ1> [91, АМВЕК [171, ?.АММРЯ [18- 201, ОКОМАСЯ [21], МАМ1> [22-231, СНАКММ [241, АСЕМР [251, Эезшопс1 [261, Езргеззо [271, Го1йп8®Ноше [241. Все они используют ОР1> для ускорения молекулярно-динамических расчетов.
В ранних работах по распараллеливанию молекулярно-динамических расчетов на ОР1) [281 не учитывается многочастичный характер потенциала и наличие ограничивающих функций. Повышенный интерес в настоящее время вызывает реализация многочастичных потенциалов, таких, например, как потенциал Бреннера, на графических процессорах [291. Это требует разработки специальных параллельных алгоритмов и программной реализации на ОРУ, которые адаптированы к специфике таких потенциалов. Разработка и применение методов, позволяющих снизить вычислительную сложность до 0(Ф) позволяют увеличить количество моделируемых элементов на порядок.
Еще более важной задачей является перенос алгоритмов, имеющих сложность 0(У), на параллельные вычислители так, чтобы они выполнялись параллельно и давали Ф вычислительную сложность О( — ) . Деление на Р обеспечивается выделением памяти, Р поэтому актуальной является не только алгоритмическая достижимость параллельных вычислений, но и практическая реализация на заданном аппаратном обеспечении. Исходя из вышесказанного можно сформулировать цели, задачи и основные положения диссертационной работы. Актуальность темы. В последнее время все больший интерес вызывает проведение массивных вычислений с использованием графических процессоров (СхРБ).
Известны варианты применения графических ускорителей к задачам линейной алгебры, математической физики, вычислительной аэрогидродинамики и т.д. В отличие от универсальных процессоров (СРО) видеочипы предназначены, в первую очередь, для параллельных вычислений с большим количеством арифметических операций. Упрощение инструкций одного ядра, уменьшение потребления энергии и увеличение общего количества потоковых процессоров обуславливают преимущество графических ускорителей над традиционными высокопроизводительными вычислительными комплексами.
Немаловажным является и существенное снижение требований к инфраструктуре вычислительных систем, для проведения массивных параллельных расчетов достаточно оснащение персонального компьютера соответствующей видеокартой. Одной из перспективных областей применения графических процессоров является молекулярно-динамическое моделирование. Внутренне присущий этому направлению параллелизм вычислительного процесса находит адекватное отражение в архитектуре видеокарт. В настоящее время существует целый ряд эффективных реализаций ускорения вычислений для сравнительно простых потенциалов межчастично го взаимодействия. В этой связи можно отметить известные программные комплексы молекулярно-динамического моделирования НООМР, АМВЕК, ЬАММРБ, ОКОМАСБ, МАМ1), СНАКММ, АСЕМО, Оезшопс1, Езргеззо, Го1йпд®Ноше. Все они оснащены средствами, позволяющими использовать ОРУ для ускорения расчетов.
Однако предсказательной возможности простых потенциалов зачастую недостаточно для адекватного воспроизведения широкого спектра свойств наносистем. Необходимо использовать многочастичные потенциалы, отражающие реальные свойства межчастичных связей. Это обусловливает актуальность разработки специальных подходов к программной реализации параллельных алгоритмов на ОРУ, адаптированных к специфике таких потенциалов. При этом большое значение имеет технологичность разработки и модификации программ данного класса, возможность интеграции с имеющимися программными комплексами, визуализация результатов вычислительного эксперимента в реальном времени. Данным вопросам посвящена диссертационная работа. Целью работы является разработка технологии программирования алгоритмов молекулярно-динамического моделирования наноструктур со сложными потенциалами межчастичного взаимодействия на графических процессорах.
Для этого необходимо решение следующей группы задач. Анализ существующих алгоритмов молекулярно-динамического моделирования с позиций поиска оптимального отображения вычислительных процессов на архитектуру графических процессоров. Выработка подходов к размещению данных в памяти видеокарты с целью минимизации количества перекрестных запросов при параллельных вычислениях. Разработка методов наследования классов в технологии СШ)А, обеспечивающих возможность оснащения программы новыми потенциалами межчастичного взаимодействия без модификации основного кода.
Разработка методов интеграции программного обеспечения с имеющимися программными комплексами молекулярно-динамического моделирования. Разработка методов и средств визуализации результатов вычислительного процесса в реальном времени. Применение разработанной технологии программирования для создания авторского комплекса программ молекулярно-динамического моделирования наносистем. Проведение вычислительных экспериментов, направленных на анализ эффективности вычислительного процесса. Разработка подходов к моделированию теплопроводности наноструктур с использованием созданного программного обеспечения.
Проведение вычислительных экспериментов по моделированию процессов теплопереноса в наноструктурах. Выявление режимов аномальной теплопроводности. Разработка методов согласования молекулярно-динамического моделирования и макромасштабного описания процессов аномальной теплопроводности с использованием дробно-дифференциальных уравнений. Научная новизна. Разработаны методы построения программного обеспечения для молекулярно- динамического моделирования наносистем на графических процессорах, включающие методы отображения вычислительных процессов на архитектуру видеокарт, методы размещения данных в памяти видеокарты, методы наследования классов в технологии С1Л)А, обеспечивающие возможность оснащения программ новыми потенциалами межчастичного взаимодействия без модификации основного кода. Предложены подходы к повышению эффективности параллельных вычислений на графических процессорах, включающие использование гибридной модели поиска ближних частиц, составление и обновление списка соседних атомов с целью минимизации коллизий памяти, оптимальное распределение операций по вычислительным потокам, выделение дополнительной памяти для создания копий координат взаимодействующих атомов.
С использованием созданного по разработанной технологии программного обеспечения исследованы вопросы моделирования теплопроводности углеродных наносистем. Для описания аномальных режимов теплопроводности разработан подход, основанный на сочетании методов молекулярной динамики и дробно- 10 дифференциального исчисления. Предложен алгоритм определения параметров макроскопической модели по данным молекулярно-динамического моделирования.
Таким образом, установлена связь между различными масштабами в описании аномальной теплопроводности. Достоверность и обоснованность результатов, полученных в ходе диссертационного исследования, обеспечивается согласованностью результатов проведенных вычислительных экспериментов с лабораторными измерениями, а также результатами моделирования с использованием других программных комплексов, полученными независимыми друг от друга способами.