Главная » Учебные материалы » Дипломы и ВКР » Выпускные квалификационные работы (ВКР) » МГУ им. Ломоносова » 12 семестр (4 семестр магистратуры) » Диалог с программистом в системе автоматизации распараллеливания Фортран-программ
Для студентов МГУ им. Ломоносова по предмету Дипломы и ВКРДиалог с программистом в системе автоматизации распараллеливания Фортран-программДиалог с программистом в системе автоматизации распараллеливания Фортран-программ
2021-09-03СтудИзба

ВКР: Диалог с программистом в системе автоматизации распараллеливания Фортран-программ

Описание

Московский государственный университет имени М.В.Ломоносова, факультет Вычислительной математики и кибернетики,

кафедра системного программирования


ДИПЛОМНАЯ РАБОТА

Тема: “ Диалог с программистом в системе автоматизации распараллеливания Фортран-программ ”

Содержание
Аннотация. 3
1. Введение. 4
1.1 Место и важность параллельных программ в программировании. 4
1.2 Автоматическое распараллеливание. 5
1.3 Устройство САПФОР. 6
1.4 Необходимость диалоговой оболочки. 9
1.5 Цели диалоговой оболочки. 9
2. Постановка задачи. 11
3. Обзор существующих решений рассматриваемой задачи. 12
3.1 Инструментарий для работы с OpenMP. 12
3.2 Parawise. 13
3.3 BERT77. 14
3.4 ДВОР. 14
4. Исследование и построение решения задачи. 15
4.1 Реализация кроссплатформенности. 15
4.2 Структура базы данных САПФОР. 16
4.3 Доступ к базе данных. 19
4.4 Сценарии работы с диалоговой оболочкой. 20
4.5 Устройство интерфейса диалоговой оболочки. 21
5. Описание практической части. 23
6. Заключение. 35
7. Список цитируемой литературы.. 36
Приложение А. Комбинации быстрого доступа 37

Аннотация

Для эффективного исполнения программ на вычислительной системе параллельной архитектуры применяется процесс распараллеливания.

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

Для осуществления удобного взаимодействия с системой автоматизированного распараллеливания фортран программ (САПФОР) необходима диалоговая оболочка.

В данной работе представлены требования к диалоговой оболочке, исследование возможностей оболочки и её реализация с использованием кросплатформенной библиотеки Qt.

Ключевое значение придается повышению эффективности распараллеливания программы с помощью управления распределением размерностей массивов.

1. Введение

1.1 Место и важность параллельных программ в программировании.

В настоящее время частота отдельного процессора практически достигла своего максимума. Размеры функциональных элементов кристалла близки к своему физическому пределу. Теперь для решения сложных задач используются высокопроизводительные вычислительные комплексы, состоящие из нескольких сотен или тысяч процессоров. А в каждом процессоре может быть несколько ядер. Для того чтобы запустить программу на вычисление на таком комплексе, необходимо четко распределить операции этой программы по процессорам, т.е. написать параллельную программу. Существует возможность написания параллельных программ, с помощью разных технологий, например, MPI(Message Passing Interface), DVM(Distributed Virtual Machine или Distributed Virtual Memory)[1] и OpenMP. Использование параллельных программ особенно важно на задачах, требующих длительного времени выполнения.

При написании параллельной программы сложность программирования резко возрастает, по сравнению с написанием последовательной программы. Распределение операций по процессорам порождает необходимость организовать распределение данных или синхронизацию доступа к общим данным.

Отладка параллельной программы значительно сложнее. Кроме ошибок, которые могли быть в последовательной программе, появляются еще специфические ошибки. Например, тупики. Эти ошибки сложны для обнаружения и вызывают недетерминированное поведение программы. Повторное использование исходного кода старой программы в новых программах тоже затруднительно.

Не всегда представляется возможным отлаживать эффективность параллельной программы, так как не всегда можно понять, сколько времени будет выполняться программа. Иногда можно получить разные результаты при разных запусках программы. Часто для написания эффективной параллельной программы необходимо учесть все особенности вычислительного комплекса так, чтобы минимизировать временные затраты на доступ к данным.

Писать и отлаживать последовательную программу на порядок проще, чем её параллельный аналог. Отсюда вытекает задача распараллеливания последовательных программ, как уже написанных, так и новых.

Существует множество вычислительных последовательных программ, которые написаны на языках C и Fortran. Существует возможность написания параллельных программ на этих языках с использованием библиотек передачи сообщений. Но при использовании такого подхода как раз и возникают перечисленные трудности.

Распараллеливание последовательных программ возможно с применением таких технологий, как DVM и OpenMP. Достаточно вставить в нужные места последовательной программы специальные указания компилятору – директивы и, в некоторых случаях, для повышения эффективности следует изменить исходный код в соответствии с некоторыми требованиями. Процесс вставки директив можно производить в автоматическом режиме. Это ещё больше упрощает работу программиста.

DVM поддерживает директивы для языков C и Fortran. При добавлении DVM-директив программу можно компилировать двумя способами: как параллельную или как последовательную.

1.2 Автоматическое распараллеливание.

В настоящее время имеется несколько систем автоматизированного распараллеливания для кластеров – Parawise[2], Bert77[4] и др. Также заслуживает внимания набор инструментов для работы с OpenMP[3] программами(VivaMP, Intel Threading Tools).

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

Главный недостаток – программист должен сам принимать ответственное решение о том, какие массивы и каким образом требуется распределить между процессорами. А система помогает ему дораспределить другие массивы. Основное отличие DVM от Parawise именно в этом. Система DVM распределяет данные сама.

Помимо ручного и автоматического распараллеливания, существует полуавтоматический подход к распараллеливанию программ:

При полуавтоматическом подходе следует требовать от программиста не решения о распараллеливании, а свойства его программы (влияющие на ее распараллеливание). Такая автоматизированная система не должна полностью автоматически и эффективно распараллеливать любые существующие последовательные программы. Существуют правила написания последовательного кода программы, который может быть автоматически преобразован в эффективную параллельную программу.

Примером такой полуавтоматической системы является САПФОР.

1.3 Устройство САПФОР.

САПФОР – система автоматизированного распараллеливания Фортран-программ. САПФОР является частью системы DVM. Сапфор включает в себя анализаторы, генераторы кода, базу данных, эксперты и диалоговую оболочку.

Файлы условия, демо

1.JPG
2.JPG
3.JPG
4.JPG

Характеристики ВКР

Учебное заведение
Просмотров
1
Покупок
0
Размер
500,75 Kb

Список файлов

  • Диалог с программистом в системе автоматизации распараллеливания Фортран-программ .doc 686 Kb
Картинка-подпись
Ваше удовлетворение является нашим приоритетом, если вы удовлетворены нами, пожалуйста, оставьте нам 5 ЗВЕЗД и позитивных комментариев. Спасибо большое!

Комментарии

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