77359

Средства визуальной поддержки процесса распараллеливания последовательных программ

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

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

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

Русский

2015-02-02

187 KB

0 чел.

Средства визуальной поддержки процесса

распараллеливания последовательных программ

В.Л. Авербух1, Р.О. Судариков2

ИММ УрО РАН1, Уральский Государственный Университетет2

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

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

Цель нашей работы – создание визуального инструментария, помогающего в процессе распараллеливания. Рассматривается код, написанный на языке программирования С. Потенциальный пользователь – прикладной программист, понимающий суть работающей программы и свободно ориентирующийся в параллельном программировании. Он не разрабатывает новую программу, а переводит последовательный код на систему параллельных вычислений. Для начала мы выявляем набор действий, который пользователь производит во время работы.

Для создания инструментария используется язык C# и компонент WPF. На данном этапе рассматривается парадигма параллелизма на основе библиотеки MPI. В начальном варианте прототипа используется схема «Ферма». В качестве средств поддержки были реализованы подсветка синтаксиса и визуальная подсказка того, как строится программа,

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

Рис. 1. Пример, демонстрирующий работу инструментария

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


 

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

41793. Создание сложных запросов в СУБД MS Access 101.11 KB
  Создать запрос на вычисление скидки 5%, если объём его заказа превысил 49 единиц товара. Вывести номера заказов с максимальной и минимально стоимостью.SELECT Заказы.[Код заказа], Заказы.Количество, [Заказы]![Цена]*[Заказы]![Количество]-([Заказы]![Цена]*[Заказы]![Количество]*0.05) AS [Цена со скидкой]FROM (Заказы INNER JOIN Клиенты ON Заказы.[Код заказа] = Клиенты.[Код заказа]) INNER JOIN Товары ON Заказы.[Код товара] = Товары.[Код товара] WHERE (((Заказы.Количество)>=49))ORDER BY [Заказы]![Цена]*[Заказы]![Количество]-([Заказы]![Цена]*[Заказы]![Количество]*0.05);
41794. Редактирование форм произвольных кривых в Corel Draw. Использование кривой Безье. Создание и редактирование текста 3.37 MB
  1й способ Выберите инструмент Свободная рука на панели графических инструментов и нарисуйте кривую произвольной формы. Выберите инструмент Форма на панели графических инструментов при этом на кривой появятся узлы редактирование удаление добавление перемещение изменение стиля узлов которых приведет к изменению формы кривой. 2й способ Выберите инструмент Кривая Безье на панели графических инструментов и щелкните мышью указав начало кривой. Нарисуйте две кривые используя инструмент Свободная рука.
41795. Система смазки автомобилей ВАЗ-2105, ВАЗ-2107 и Москвич-2140 Москвич-2141 519.17 KB
  В двигателях автомобилей ВАЗ2105 ВАЗ2107 применяют комбинированную систему смазки при которой наиболее нагруженные детали смазываются под давлением а остальные направленным разбрызгиванием масла а также маслом вытекающим из зазоров между сопряженными деталями. Схема системы смазки двигателя автомобиля ВАЗ2105 ВАЗ2107: 1 датчик указателя давления масла; 2 главная масляная магистраль; 3 канал подвода масла к коренному подшипнику; 4 канал подвода масла к шатунному подшипнику; 5 масляный фильтр; 6 маслоизмерительный стержень;...
41796. Введение данных и форматирование таблиц в среде табличного процессора 69.23 KB
  Во всех перечисленных ниже операциях пользуйтесь вкладками диалогового окна Формат ячейки способы его вызова см. Текст не помещается Поступите следующим образом: 1 На вкладке Выравнивание установите для этой ячейки флажок Переносить по словам; 2 Немного расширьте границы столбца B. Выделите ячейки 1:B1. Далее выделите ячейки B2:B6 и с помощью вкладки Границы выберите вид границы .
41797. КИНЕМАТИКА. ФИЗИКА ДВИЖЕНИЯ 222.02 KB
  Траектория материальной точки — линия в пространстве, представляющая собой множество точек, в которых находилась, находится или будет находиться материальная точка при своём перемещении в пространстве относительно выбранной системы отсчёта.
41799. ОПРЕДЕЛЕНИЕ ИНТЕНСИВНОСТЕЙ ОТКАЗОВ УСИЛИТЕЛЯ 41.33 KB
  Для точного расчета безотказности электронного устройства и выбора электрических режимов работы элементов необходимо располагать данными о зависимости интенсивности отказов λ от всех воздействующих факторов определяемых при работе элементов в конкретных схемах устройств. Поэтому для приближенных расчетов надежности в отношении внезапных отказов определяют номинальную интенсивность отказов λн. Для каждого типа элементов получена экспериментальным путем зависимость отношения эксплуатационной интенсивности отказов к...
41801. Архивация данных 650.56 KB
  Запустите архиватор RR.Создайте распределенный архив выделенных файлов.Просмотрите содержимое одного их созданных архивов.