77294

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

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

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

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

Русский

2015-02-02

26.5 KB

1 чел.

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

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

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

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

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

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

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

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

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


 

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

79860. Организация платежного оборота 6.73 MB
  Безналичные расчеты это денежные расчеты путем записей по счетам в банках когда деньги списываются со счета плательщика и зачисляются на счет получателя. и базируются на следующих принципах: 1 Безналичные расчеты осуществляются по банковским счетам которые открываются клиентам юридическим и физическим лицам для хранения и перевода средств. Каждое предприятие организация могут иметь в банке только один основной счет расчетный или текущий. Для открытия расчетного счета в банк представляются следующие документы: заявление об открытии...
79861. Ликвидность коммерческих банков 160.5 KB
  Управление ликвидностью коммерческого банка. Ликвидность коммерческого банка Ликвидность коммерческого банка означает возможность банка своевременно и полно обеспечивать выполнение своих долговых и финансовых обязательств перед всеми контрагентами что определяется наличием достаточного собственного капитала банка оптимальным размещением и величиной средств по статьям актива и пассива баланса с учетом соответствующих сроков. Таким образом ликвидность коммерческого банка базируется на постоянном поддержании объективно необходимого...
79862. Организация кредитования. Субъекты кредитных отношений. Классификация банковских кредитов. Принципы банковского кредитования 483 KB
  Субъекты кредитных отношений В рыночных условиях хозяйствования основной формой кредита является банковский кредит. Субъектами кредитных отношений в области банковского кредита являются хозорганы население государство и сами банки. Что касается банковского кредита то субъекты кредитных сделок здесь обязательно выступают в двух лицах т. Как правило кредиты формирующие оборотные фонды являются краткосрочными а ссуды участвующие в расширенном воспроизводстве основных фондов относятся к средне и долгосрочным кредитам.
79863. Законодательное регулирование валютных операций в РФ. Лицензирование операций с иностранной валютой в коммерческих банках. Валютные счета, порядок их открытия клиентам банка и ведения операций 1.32 MB
  Лицензирование операций с иностранной валютой в коммерческих банках. Валютные счета порядок их открытия клиентам банка и ведения операций. Кредитование внешнеэкономической деятельности Внешнеэкономическая деятельность коммерческих банков связана с осуществлением банковских операций в рублях и иностранной валюте при экспортеимпорте товаров и услуг их реализации за иностранную валюту на территории РФ сделках неторгового характера хозяйствовании нерезидентов внутри страны. Наиболее полным нормативным документом ЦБР является письмо Госбанка...
79864. Сущность и экономические основы деятельности коммерческого банка 113 KB
  Понятие коммерческого банка и его организационное устройство Банк это организация созданная для привлечения денежных средств и размещения их от своего имени на условиях возвратности платности и срочности. Основное назначение банка посредничество в перемещении денежных средств от кредиторов к заемщикам и от продавцов к покупателям. Наряду с банками перемещение денежных средств на рынках осуществляют и другие финансовые и кредитнофинансовые учреждения: инвестиционные фонды страховые компании брокерские дилерские фирмы и т.
79865. Банковские ресурсы. Собственные средства коммерческого банка. Формирование капитала банка 211 KB
  Формирование капитала банка. Собственные средства коммерческого банка К банковским ресурсам относятся собственные средства банков заемные и привлеченные. Банковские ресурсы образуются в результате проведения банками пассивных операций и отражаются в пассиве баланса банка.