ВУЗ:
Составители:
Рубрика:
- 109 -
Преимущества Т-системы заключается в практически полном освобожде-
нии программиста от обдумывания деталей описания распараллеливания, не-
достатки – в требовании описания алгоритма в функциональном стиле (фор-
мально необходимо составить программу в виде набора чистых Т-функций,
что непривычно). Вычислительная сложность Т-функций (она задает размер
гранулы параллелизма) также должна определяться программистом (излишне
малая приведет к чрезмерным накладным расходам по обмену данными ме-
жду процессорами, слишком большая – к неравномерной загрузке вычисли-
тельных узлов).
4.3.3 Непроцедурный декларативный язык НОРМА
Свободно распространяемым инструментом автоматизации создания па-
раллельных MPI-программ является система HOPМА
(h
ttp://www.keldysh.ru/pages/norma
), позволяющая (на основе специализирован-
ного декларативного языка) синтезировать исходный Fortran/С - текст с вы-
зовами MPI [9]. Непроцедурный язык НОРМА является проблемно-
ориентированным и предназначен для автоматизации решения сеточных
задач на вычислительных системах с параллельной архитектурой. Этот язык
позволяет исключить фазу параллельного программирования, которая необ-
ходима при переходе от расчетных формул, заданных прикладным
специали-
стом, к программе.
Концепция непроцедурного языка НОРМА (Непроцедурное Описание Раз-
ностных Моделей Алгоритмов или НОРМАльный уровень общения приклад-
ного математика с компьютером,
http://www.keldysh.ru/pages/norma
) предло-
женная еще в 60-х г.г. в ИПМ им.М.В.Келдыша РАН.
Язык НОРМА называют декларативным вследствие упора именно на
описание правил вычисления значений, а не на исчерпывающе подробную
конкретизацию алгоритма. Разработчик прикладных программ абстрагиру-
ется от особенностей конкретных ЭВМ и мыслит в привычных терминах
своей
предметной области (сеточные методы математической физики, в ос-
новном метод конечных разностей - МКР). Система НОРМА включает синте-
затор, назначением которого является преобразование НОРМА-текста в
(один из привычных) языковых стандартов параллельного или последова-
тельного программирования (в настоящее время существует возможность
получения Fortran’MPI, Fortran’PVM, Fortran’77 или соответствующих C-
текстов). Именно синтезатор учитывает архитектуру конкретной
ЭВМ, в са-
мом языке НОРМА не предусмотрено никаких указаний на параллелизм или
описания структуры целевого компьютера (см. Приложение 4).
Эффективный автоматический синтез параллельного кода на основе НОР-
МА-программы достигается определенными ограничениями языка, важное из
которых – отсутствие многократного присваивания (при этом несущественна
- 109 - Преимущества Т-системы заключается в практически полном освобожде- нии программиста от обдумывания деталей описания распараллеливания, не- достатки – в требовании описания алгоритма в функциональном стиле (фор- мально необходимо составить программу в виде набора чистых Т-функций, что непривычно). Вычислительная сложность Т-функций (она задает размер гранулы параллелизма) также должна определяться программистом (излишне малая приведет к чрезмерным накладным расходам по обмену данными ме- жду процессорами, слишком большая – к неравномерной загрузке вычисли- тельных узлов). 4.3.3 Непроцедурный декларативный язык НОРМА Свободно распространяемым инструментом автоматизации создания па- раллельных MPI-программ является система HOPМА (http://www.keldysh.ru/pages/norma), позволяющая (на основе специализирован- ного декларативного языка) синтезировать исходный Fortran/С - текст с вы- зовами MPI [9]. Непроцедурный язык НОРМА является проблемно- ориентированным и предназначен для автоматизации решения сеточных задач на вычислительных системах с параллельной архитектурой. Этот язык позволяет исключить фазу параллельного программирования, которая необ- ходима при переходе от расчетных формул, заданных прикладным специали- стом, к программе. Концепция непроцедурного языка НОРМА (Непроцедурное Описание Раз- ностных Моделей Алгоритмов или НОРМАльный уровень общения приклад- ного математика с компьютером, http://www.keldysh.ru/pages/norma) предло- женная еще в 60-х г.г. в ИПМ им.М.В.Келдыша РАН. Язык НОРМА называют декларативным вследствие упора именно на описание правил вычисления значений, а не на исчерпывающе подробную конкретизацию алгоритма. Разработчик прикладных программ абстрагиру- ется от особенностей конкретных ЭВМ и мыслит в привычных терминах своей предметной области (сеточные методы математической физики, в ос- новном метод конечных разностей - МКР). Система НОРМА включает синте- затор, назначением которого является преобразование НОРМА-текста в (один из привычных) языковых стандартов параллельного или последова- тельного программирования (в настоящее время существует возможность получения Fortran’MPI, Fortran’PVM, Fortran’77 или соответствующих C- текстов). Именно синтезатор учитывает архитектуру конкретной ЭВМ, в са- мом языке НОРМА не предусмотрено никаких указаний на параллелизм или описания структуры целевого компьютера (см. Приложение 4). Эффективный автоматический синтез параллельного кода на основе НОР- МА-программы достигается определенными ограничениями языка, важное из которых – отсутствие многократного присваивания (при этом несущественна
Страницы
- « первая
- ‹ предыдущая
- …
- 107
- 108
- 109
- 110
- 111
- …
- следующая ›
- последняя »