Новости
-
Конференция "16th International Conference on Parallel Computing Technologies" проходила 13 - 18 Сентября 2021 г. по адресу Russia, Калининград, Балтийский федеральный университет.
Доклады
Additional Parallelization of Existing MPI Programs Using SAPFOR
Additional Parallelization of Existing MPI Programs Using SAPFOR
The SAPFOR and DVM systems were primary designed to simplify the development of parallel programs of scientific-technical calculations. SAPFOR is a software development suite that aims to produce a parallel version of a sequential program in a semi-automatic way. Fully automatic parallelization is also possible if the program is well-formed and satisfies certain requirements. SAPFOR uses the DVMH directive-based programming model to expose parallelism in the code. The DVMH model introduces CDVMH and Fortran-DVMH (FDVMH) programming languages which extend standard C and Fortran languages by parallelism specifications. We present MPI-aware extension of the SAPFOR system that exploits opportunities provided by the new features of the DVMH model to extend existing MPI programs with intra-node parallelism. In that way, our approach reduces the cost of parallel program maintainability and allows the MPI program to utilize accelerators and multi-core processors. SAPFOR extension has been implemented for both Fortran and C programming languages. In this paper, we use the NAS Parallel Benchmarks to evaluate the performance of generated programs.
Докладчик: Н.А. Катаев.
-
DVM-система предназначена для разработки параллельных программ научно-технических расчетов на языках C-DVMH и Fortran-DVMH. Эти языки используют единую модель параллельного программирования (DVMH-модель) и являются расширением стандартных языков Си и Фортран спецификациями параллелизма, оформленными в виде директив компилятору. DVMH-модель позволяет создавать эффективные параллельные программы для гибридных вычислительных кластеров. В статье представлены новые возможности DVM-системы, которые позволяют отображать существующие MPI-программы на кластеры, в узлах которых в качестве вычислительных устройств наряду с универсальными многоядерными процессорами могут использоваться графические ускорители.
-
Настоящая диссертационная работа посвящена дальнейшему развитию системы автоматизации распараллеливания Фортран-программ (САПФОР) в следующих направлениях:
— автоматизация выполнения преобразования исходных последовательных программ, что позволит облегчить и ускорить эффективное распараллеливание программ для гибридных кластеров;
— обеспечение поэтапного (инкрементального) распараллеливания больших программ и программных комплексов, что позволит серьезно расширить класс программ, для которых можно успешно применять систему;
— повышение эффективности выполнения параллельных программ за счет развития алгоритмов распределения данных, распределения вычислений, организации доступа к удаленным данным, а также выделения фрагментов кода, которые могут быть выполнены на графических процессорах.Для достижения поставленной цели в работе решаются следующие основные задачи:
— анализ существующих решений в области автоматизированного и автоматического распараллеливания программ на кластер, выявление их достоинств и недостатков;
— исследование, разработка и реализация алгоритмов автоматически распараллеливающего компилятора — алгоритмов автоматического построения схем распараллеливания (схем отображения последовательной программы на гетерогенный кластер) и выполнения необходимых преобразований;
— разработка, проектирование и реализация механизма, который позволяет проводить поэтапное (инкрементальное) распараллеливание последовательных Фортран-программ для гетерогенных кластеров;
— разработка и проектирование новой системы SAPFOR 2 и исследование полученной системы на тестовых и реальных прикладных программах. -
Одна из основных сложностей разработки параллельной программы для кластера — необходимость принятия глобальных решений по распределению данных и вычислений с учетом свойств всей программы, а затем выполнения кропотливой работы по модификации программы и ее отладки. Большой объем программного кода, а также многомодульность, многовариантность и многоязыковость, затрудняют принятие решений по согласованному распределению данных и вычислений. Опыт использования предыдущей системы САПФОР показал, что при распараллеливании на кластер больших программ и программных комплексов необходимо уметь распараллеливать их постепенно, начиная с наиболее времяемких фрагментов и постепенно добавляя новые фрагменты, пока не достигнем желаемого уровня эффективности параллель-ной программы. С этой целью предыдущая система была полностью переработана, и на ее основе была создана новая система SAPFOR (System FOR Automated Parallelization). В данной статье будет рассмотрен опыт применения метода частичного распараллеливания, идея которого заключается в том, что распараллеливанию подвергается не вся программа целиком, а ее части (области распараллеливания) — в них заводятся дополнительные экземпляры требуемых данных, производится распределение этих данных и соответствующих им вычислений.
-
Конференция "XXII Всероссийская конференция Научный сервис в сети Интернет 2020" проходила 21 - 25 Сентября 2020 г. по адресу Россия, Новороссийск, онлайн.
Доклады
Автоматизация распараллеливания программ в системе SAPFOR
Автоматизация распараллеливания программ в системе SAPFOR
Система SAPFOR (System FOR Automated Parallelization) объединяет различные подходы, направленные на автоматизацию параллельного программирования. С одной стороны SAPFOR включает средства статического и динамического анализа и опирающийся на них автоматически распараллеливающий компилятор. С другой стороны для получения эффективной параллельной программы автоматически часто требуется выполнять предварительное преобразование исходной последовательной программы, а также указывать дополнительные свойства, которые не удается определить средствами анализа. Для этой цели в системе SAPFOR реализованы различные преобразования, которые могут быть выполнены автоматически по запросу пользователя. Для управления процессом распараллеливания используется интерактивная оболочка, которая позволяет объяснить пользователю решения, принимаемые системой, а также задать дополнительные свойства распараллеливаемой программы. В данной статей рассматривается подход к автоматизированному распараллеливанию С программ для систем с общей памятью, реализованный в SAPFOR. Рассматривается применение
интерактивной оболочки в процессе распараллеливания и особенности связанные с отображением программы на ускорители в модели DVMH. В статье приводится сравнение автоматического распараллеливания некоторых программ из набора NAS Parallel Benchmarks 3.3.1 c ручным распараллеливанием, выполненным с помощью OpenCL.Докладчик: Н.А. Катаев.