77294

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

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

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

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

Русский

2015-02-02

26.5 KB

1 чел.

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

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

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

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

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

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

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

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

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


 

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

18999. Вырожденный бозе-газ 309 KB
  Лекция XII 1. Вырожденный бозегаз. Химический потенциал бозегаза определяется из уравнения X.2.5 XII.1.1 При заданной концентрации будем понижать температуру газа. Поскольку по условию левая часть уравнения XII.1.1 не м
19000. Черное излучение 238.5 KB
  Лекция XIII 1. Черное излучение. Черным излучением называется электромагнитное излучение находящееся в равновесии с веществом. Поскольку электромагнитное излучение состоит из фотонов то черное излучение это равновесный идеальный бозегаз: фотоны практически не взаи...
19001. Химическое равновесие 281 KB
  Лекция XIV 1. Химическое равновесие. Уравнение химической реакции общего вида можно представить в форме XIV.1.1 где химические символы реагирующих веществ целые числа отвечающие данной реакции. Например в случае превращения гремучего газа в воду имеем XIV.1.2...
19002. Флуктуации. Теорема Найквиста 329.5 KB
  Лекция XV 1. Флуктуации. До сих пор основное внимание за редкими исключениями было уделено вычислению средних значений различных физических величин. Однако статистическая теория позволяет вычислить и их флуктуации отклонение от средних связанные с самопроизвольны
19003. Описание движения системы материальных точек в нерелятивистской механике. Общая схема механики Ньютона. Основные определения 273 KB
  Лекция 1. Описание движения системы материальных точек в нерелятивистской механике. Общая схема механики Ньютона. Основные определения Основная задача механики нахождение положения тел в любые моменты времени при условии что известны начальные положения и скорос
19004. Принцип наименьшего действия (принцип Гамильтона). Уравнения Лагранжа 1.15 MB
  Лекция 2. Принцип наименьшего действия принцип Гамильтона. Уравнения Лагранжа Самая общая формулировка закона движения системы с степенями свободы дается принципом наименьшего действия или принципом Гамильтона. Согласно этому принципу каждая механическая сист
19005. Принцип относительности Галилея. Функция Лагранжа свободной материальной точки. Функция Лагранжа системы взаимодействующих частиц. Функция Лагранжа в декартовых и обобщённых координатах 275 KB
  Лекция 3. Принцип относительности Галилея. Функция Лагранжа свободной материальной точки. Функция Лагранжа системы взаимодействующих частиц. Функция Лагранжа в декартовых и обобщённых координатах Установим вид функции Лагранжа простейших механических систем и уста...
19006. Примеры нахождения функции Лагранжа, составления уравнений Лагранжа и их использования для описания движения простейших механических систем 1.35 MB
  Лекция 4. Примеры нахождения функции Лагранжа составления уравнений Лагранжа и их использования для описания движения простейших механических систем Рассмотрим применение метода Лагранжа к описанию движения простейших систем. Но сначала повторим основные идеи и р
19007. Интегралы движения. Однородность времени и закон сохранения энергии. Однородность пространства и закон сохранения импульса 328.5 KB
  Лекция 5. Интегралы движения. Однородность времени и закон сохранения энергии. Однородность пространства и закон сохранения импульса. Изотропность пространства и закон сохранения момента импульса Величины и меняются со временем. Однако существуют такие их комбина