77294

ВИЗУАЛЬНАЯ ПОДДЕРЖКА РАСПАРАЛЛЕЛИВАНИЯ ПОСЛЕДОВАТЕЛЬНОГО КОДА

Научная статья

Информатика, кибернетика и программирование

Представляется что создание вспомогательных визуальных сред поддержки распараллеливания программ сможет облегчить работу специалистов и увеличить эффективность и надежность распараллеливания. Нами разработан макет средств визуальной поддержки распараллеливания в двух вариантах параллелизма на основе общей памяти и параллелизма на основе передачи сообщений с использованием библиотек OpenMP и MPI соответственно. Предполагается что пользователь по ходу анализа и обработки текста вносит изменения в текст последовательной программы для ее...

Русский

2015-02-02

26.5 KB

2 чел.

ВИЗУАЛЬНАЯ ПОДДЕРЖКА РАСПАРАЛЛЕЛИВАНИЯ ПОСЛЕДОВАТЕЛЬНОГО КОДА

В.Л. Авербух, А.Ю. Кулаков, Р.О. Судариков

ИММ УрО РАН, УрГУ, Екатеринбург

Несмотря на большие усилия, которые программистское сообщество предприняло в предшествующие годы для создания универсальных систем визуального программирования параллельных вычислений, решающего успеха в данной области так и не достигнуто. В крупных исследовательских центрах, накопивших за десятилетия огромный объем разнообразных программ для последовательных ЭВМ, в связи с переходом на суперкомпьютерные вычисления возникла задача их переноса на параллельные архитектуры. В каких-то случаях эта задача решается за счет компиляторов, осуществляющих автоматическое распараллеливание программ. В каких-то – можно найти соответствующие “параллельные” библиотеки и пакеты, могущие решить необходимые задачи, да еще и повысить эффективность счета. Однако часто необходимо распараллеливать “старые” последовательные коды, реализующие сложные модели, так что без “ручного” вмешательства специалиста обойтись нельзя. Для выполнения этих задач необходимы квалифицированные специалисты, хорошо знающие и суть решаемой задачи, и структуру последовательной программы и владеющие непростыми навыками параллельного программирования. Представляется, что создание вспомогательных визуальных сред поддержки распараллеливания программ сможет облегчить работу специалистов и увеличить эффективность и надежность распараллеливания.

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

В случае MPI в соседнем (левом) окне строится картинка-подсказка, показывающая результат работы пользователя, например, распараллеливание кода на заданное количество процессов. В правом окне выводится анимация работы введенных фрагментов программы, содержащих, например, такие функции, как MPI_Bcast и MPI_Reduce.

В случае OpenMP в окне рядом с текстом выводится граф, показывающий порождение исполняющих нитей (потоков). Анимация в данном макете показывает потенциальную конкуренцию потоков за использованные одновременно участки памяти, что позволяет выявить возможные опасные места в программе.

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

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


 

А также другие работы, которые могут Вас заинтересовать

12884. Здоровье и моя будущая профессия 41 KB
  Здоровьесберегающие технологии в воспитании и развитии детей. Круглый стол Здоровье и моя будущая профессия Программное содержание. Учить детей снимать эмоциональное и физическое напряжение преодолевать чувство тревоги связанное с межличностным общением. Форм...
12885. Сценарий психологической игры: «Кораблекрушение» 69.5 KB
  Сценарий психологической игры: Кораблекрушение для учеников 11го класса В период ранней юности 1517 лет человек переживает кризис идентичности. Этот возраст сопровождается активным поиском самого себя в социуме сверстников и взрослых. Конфликты как эмоционально...
12886. Игра в работе педагогапсихолога. МЫ ЕДЕМ, ЕДЕМ, ЕДЕМ 105.5 KB
  Игра в работе педагогапсихолога: Мы едем едем едем Человек есть человек играющий homo ludens. Хейзенга. Игра: МЫ ЕДЕМ ЕДЕМ ЕДЕМ Время игры: 1 час 1 час 20 минут Возможности игры: игра разработана для детей в возрасте 10 14 лет. Цель: мотивация учащихся на и
12887. ПРОБУЖДЕНИЕ АКТИВНОСТИ 46.5 KB
  ПРОБУЖДЕНИЕ АКТИВНОСТИ Сценарий классного часа Вам приходилось слышать от взрослых в школе высказывания о том что современные дети ничего не хотят что растет поколение потребителей И действительно мы можем найти этому массу подтверждений. Чем лучше школа тем боль
12888. Развитие творческих способностей учащихся подросткового возраста 51.5 KB
  Классный час Развитие творческих способностей учащихся подросткового возраста Цель: познание и раскрытие учениками своих потенциальных способностей к творчеству. Задачи: развитие познавательных психологических процессов: памяти внимания мышления; разви
12889. Психологическое здоровье. Мое настроение 42 KB
  Психологическое здоровье. Мое настроение. Классный час для 7го класса Цель: формирование убеждения о значении настроения в психическом здоровье человека необходимости уметь произвольно контролировать и регулировать свое настроение. Задачи: пробудить стремле
12890. Классный час Мой жизненный путь 32 KB
  Классный час Мой жизненный путь Цель: отработка практически полезного навыка в построении перспективного плана. Образовательный аспект: расширить понятийный аппарат учащихся что позволит им более четко определить ценности на которых строиться жизнь. Воспитатель...
12891. Урок. Кто есть кто в Камелоте 36 KB
  Кто есть кто в Камелоте Рыцарь не прилагает стараний к тому чтобы казаться. Он есть П. Коэльо Ведущий кратко рассказывает легенду о короле Артуре и рыцарях круглого стола затем предлагает отправиться в путешествие в то время. Разогрев Рыцарские скачки...
12892. Методические основы лагеря Лидерство 81 KB
  Методические основы лагеря Лидерство Лагерь Лидерство это тренинг коммуникативной компетенции. Тренинг который проводят любители по всем классификациям психологов тренинги бывают профессиональные и любительские. В качестве тренеров выступает команда стар