Главная » Просмотр файлов » Диссертация

Диссертация (786409), страница 11

Файл №786409 Диссертация (Технология программирования алгоритмов молекулярно-динамического моделирования наносистем на графических процессорах) 11 страницаДиссертация (786409) страница 112019-03-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 11)

Использование значительного объема дополнительной памяти, характеризующейся степенной зависимостью от количества атомов приведет к пропорциональному замедлению. Количество использованной памяти показано на рисунке 2.12. Рисунок 2.12. Количество использованной памяти на одном шаге МД Из рисунка 2.11 и 2.12 видно, что, например, 2 и 4 этапы имееют одинаковое количество потоков вычисленией и имеют сравнимое количество математических 67 операций, но 5-ый этап будет выполняться в несколько раз дольше, так как потребуются обращения к большему количеству данных.

2.2 Сложность вычислений и затраты памяти Схема скоростей Верле разбивается на две части: выполнение операций обновления координат и скоростей и вычисление сил, действующих на атомы, и результирующих ускорений. Доступ к памяти улучшается за счет сортировки элементов. Вычислительные потоки записывают результаты в один массив одновременно, при следующем обращении к памяти они используют весь массив необходимых значений. Вычисление сил разбивается на два этапа: вычисление сложных коэффициентов потенциала межатомного взаимодействия с их сохранением в дополнительную память и использование готовых коэффициентов для суммирования сил со стороны всех атомов. Такой подход позволяет избежать блокирования доступа к памяти для параллельных потоков вычислений. Основной задачей разработки алгоритма вычисления потенциала Бреннера на ОРУ является обеспечение наиболее эффективного доступа к памяти.

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

Можно сформулировать следующее утверждение. у ЕдддЕН~. А р~д~ р гг * дд С д д дд О «М памяти для хранения списка взаимодействующих атомов имеет вычислительную Ж сложность О( — ), где Р— количество ядер графического процессора. Р оказательство. Согласно предлагаемому алгоритму количество потоков устанавливается равным количеству элементов И. При вычислениях на ОР11 имеет место пропорциональная зависимость затрат времени от загруженности памяти. Использование ограничивающей функции фиксирует объем памяти в зависимости от з — числа ковалентных связей, и не зависящее от количества атомов в системе. Учитывая введение дополнительной памяти в количестве и ячеек, вычисления по формуле (1 18) с известными значениями Ь„потребуют я*и*У условных единиц времени.

Вычисления по формуле (1.20) за счет функции ограничения потребуют л' *Ф тактов. Общее число условных единиц времени составит ю' Ф+ ~.т Ф. За счет реализованных методов у каждого потока вычислений есть набор данных и инструкций, одному потоку вычислений нет необходимости ожидать, пока другой поток подготовит данные для расчета (рис.2.13). У потоков выполняются на Р процессорах, что дает сложность (л + ют) — условных единиц времени.

У Р ( ь — + ь — ) + г лс + ь он 1 с 2 с л с с в -столбцов 69 Рисуиок 2.13. Оргаиизация оескоифливтиьп запросов памяти при вычислении потенциала Бреннера В качестве примера, позволяющего продемонстрировать методы работы с памятью, рассмотрим моделирование фуллерена (рис. 2.14). В фуллерене каждый атом имеет три соседних, таким образом, задействованы все параметры потенциала: угловая функция, двугранные углы, корректирующие значения связности.

В отличие от пространственно вытянутого листа графена такая структура имеет компактное расположение атомов. ад~ ~ 1 В ы ~ча~р:, ввв~ - чая Рисунок 2.14. Моделирование фуллереиа Применение хеш-функции и сортировки при условии использования 16 вычислительных потоков в блоке и 64 ячейках памяти позволило уменьшить количество перекрестных запросов к памяти на 13о4. 2.3 Методы анализа ускорения вычислений Изменяя количество процессоров и замеряя время выполнения программы, можно вычислить ускорение. В общем виде ускорение можно записать как: Т(1) Т(р) (2.5) где Т(1) — время решения задачи на 1 процессоре (собственное время), Т(р) — время решения задачи на р процессорах.

Достижимое ускорение расчетов дает закон Амдала [55): Я= (2.6) /'+ Р где à — доля последовательных вычислений, р — количество процессоров. Для отдельных этапов вычислений на графических процессорах7"равно или близко к О. 70 Время выполнения программы нар процессорах: Т 7(р) =т+ —, (2.7) Р где Т, — время выполнения последовательного кода, 7' — время выполнения Т,. параллельного кода„и сумма т, + т, = Т(1), а 7" = — ' — доля последовательных т(1) вычислений.

Если выразить из формулы (2.6) долю последовательных вычислений 1 1 1 1 — 7 1 1 ~ ю р - = ~+ ~ — — — = 7 — '=-> 7А,. = (2.8) 1 —— р где й;г — метрика Карпа-Флэтта 1561, показывающая экспериментальное значение распараллеливания кода. Чем меньше значение ~кг, тем лучше может быть распараллелена программа. Решая на вычислительной системе из 1024 процессоров три больших задачи, для которых доля последовательного кода г" лежала в пределах от 0,4 до 0,8'.4, Густафсон 1571 получил значения ускорения по сравнению с однопроцессорным вариантом равные соответственно 1021, 1020 и 1016.

Согласно закону Амдала для данного числа процессоров и диапазона ~ ускорение не должно было превысить величины порядка 201. Чтобы оценить степень ускорения вычислений, когда объем последних увеличивается с ростом количества процессоров в системе (при постоянстве общего времени вычислений), Густафсон рекомендует использовать выражение, предложенное Е. Барсисом (Ей Вагз1з): =1+(1-й р= р+(1-р) 1. (2.9) В формулах ускорения входит количество процессоров, при увеличении количества процессоров время расчетов уменьшается.

Для определения того, насколько время уменьшается, введена метрика эффективности 158]: Т(1) (2.10) р т(р) В практических измерениях ускорений не всегда возможно получить время выполнения программы на одном процессоре, так как мощность вычислений 71 достигает миллиардов элементов.

Еще сложнее получить время выполнения, если для расчетов используются графические процессоры, их архитектура не позволяет задать одно ядро, а в общем случае, когда объем задачи превосходит количество ядер, то нет возможности задать какое-либо количество ядер отличное от максимально доступного на графической плате. Для таких случаев введена метрика скорости 1591: 1 процессоре„Т(п,р) — время решения задачи из и элементов на р процессорах. В таком случае ускорение: у(п,р) = = — А(п,р).

Т(п) Т(п) Т(п, р) р (2.12) 2.4 Наследование в технологии СТЛЭА Программный комплекс конструируется из классов. Основной класс описывает систему частиц: Воаузу'.'ев ава гас« Оаа с1ааа 1евр1а1е <1урепаве Т> с1ааа Водузуа1ев рио11с: ЕЕ весП005 Воаузуа1ев(тпС пивВод1еа) () ч1г1иа1 -Водузуа1ев() () ч1г1иа1 чоИ ироа1е(Т ое11аТ1ве) = 9; ч1г1иа1 Т *яе1Аггау(вобуАггау аггау) = 9; ч1г1иа1 чоИ ае1Аггау(вооуАггау аггау, сопас Т *дата) ч1г1иа1 ипа1япео 1п1 яессиггеп1яеадаиеФегО сопа1 = 9; ч1г1иа1 ипазяпед 1пС яе1йивВо01еа() сопа1 = 9; ч1г1иа1 чоИ аупсогоп1аетьгеадаО сопа1 Ц; рго1ес1ео: ЕЕ весгопа Вояузуа1ев() () ЕЕ Оераи1'с соса";гис"ог чтгСиа1 чоИ 1п1с1а11ае(1п1 пиваоО1еа) ч1г1иа1 чоИ Ипа11ае() = 9; От него наследуются классы, которые реализованы на СР(): ЕЕ спи Вооу 5уасев 72 )с(п) = (2.1 1) Т(п, р) где и — количество элементов в задаче, Т(п) — время решения задачи из и элементов на сеар1аге <сурепаае Т> <1ааь Вобу5уасеаСР0: риЫ1с Воду5уьгев<Т> ( риЫ1с: Воду5уагевСР0(1пг пиаВод1еь); н1ггиа1 -Воду5у>1еаСР0(); ч1ггиа1 чо1д ирбаге(Т бе11аТ1ае); чгггиа1 ип>1Впеб 1пй Весйиваод1еа() сопзг гесигп в пиаВод(еа; рго1е<1ед: /у ае.'Ьада Воду5уагевСР0() () П деааи11 соп<ггис'.о~ ч1ггиа1 чо1д 1п111а11ге(1пс пиаВоб1еь); ч(ггиа1 чо1б Р1па11ге(); чо1б 1псеВгасейаоду5уасеа(Т бе11аТгве); ргогессеб: уу бага 1пг в пиааод1еь; Ьоо1 а Ып111а11гед; Т еа ро5) Т *а че1; Т *а 1огсе; Ц С00А Вобу5уагеа; гипа оп .'Пе СР0 Севр1асе <сурепаае "> <1ааа ':.:::,.':,-, .'.: "':: риЫ1< <::: ':: °: .':<1> риЫ1с: Вобу5у>1еаС00А(ипь1Впед 1пг пивВод1еа, ипя(мопед 1п1 пивреч1<еа, ипя1Впед 1пс Ыо<К51ге, Ьоо1 иаеРВО, Ьоо1 иае5уайев = Ра1ье)1 ч1ггиа1 -Вобу5уасеаС00А(); ч1ггиа1 чо1б ирбаге( де1<аТ1ае); аггау); аггау, сопаг :, *дага); ч1ггиа1 <ВегАггау(...

ч(ггиа1 чо1б аегАггау(<:.: ч(гсиа1 ипа1Впеб 1пс Ве1СиггепсйеабВиР1ег() сопь1 ( гесигп в рЬо(а сиггепгйеад]; ) 73 ч1ггиа1 Т *Ве<Аггау(ВодуАггау аггау); ч1гсиа1 чо1б ае<Аггау(ВодуАггау аггау, сопаг Т *дага); Пусть ставится задача добавить новый потенциал в программу. Требуется написать только новый класс, реализующий новый потенциал, и не затрагивать остальной основной код. Тогда основной класс можно представить следующим образом: Наследуется класс, вычисляющий потенциала Бреннера, от Ра1г для СРП реализации: на ОРУ: с1ааа Ра1гКЕВОСида: риЫ1с Ра1гВЕВО ( риЫ1с: Потенциал Леннарда-Джонса имеет простую структуру, по сравнению с понтенцилом Бреннером, а наследуется таким же способом на СРБ: и ОРБ: Функция вычисления сил объявляется в основном классе и затем переопределяется в каждом классе-наследнике. Запуск производится на костовой части: ге1е Ра1гКЕВОСаВа:: саара1е() ( Ратг КЕВО Кегае1 «< ягЫ, сЬгеаеа»> Новый потенциал добавляется подобным образом, СРБ реализация выглядит следующим образом: с1ааа Ра1гйеи: реЫ1с Ра1г ( риЫ1с; Ра1гйей(); а1гСеа1 -Ра1гйей(); чтг1ца1 иота соари~е~тп1„тп1)) и на ОРУ: В потенциалах вызывается класс, который подготавливает список соседей.

Характеристики

Список файлов диссертации

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6489
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее