Введение к работе
Актуальность темы. Работа посвящена проблеме согласования структур численных алгоритмов и вычислительных систем, являющейся в настоящее время исключительно. важной для современных параллельных вычислительных систем.
Для достижения высокой эффективности выполнения программы необходимо обеспечивать во время ее реализации загруженность большинства исполнительных устройств, что влечет за собой необходимость учета . структурных особенностей используемых вычислительных средств. Это требование, в свою очередь, порождает ряд новых проблем. Одна из них связана с тем, что подавляющая часть существующих алгоритмов разработана для последовательных ЭВМ. Поэтому необходимо заново переписывать их для каждого типа параллельных ЭВМ с учетом их особенностей или разрабатывать новые алгоритмы. На первый план здесь выходит проблема автоматизированного переноса программ с одного типа параллельных машин на другой. Прямой перенос без потери эффективности в большинстве случаев невозможен, потому что, как' правило, необходимо осуществлять глубокую переработку программ и алгоритмов.
Согласование структур алгоритма и ЭВМ частично выполняет оптимизирующий компилятор, но большую часть такой работы пользователь вынужден осуществлять вручную. Для этого он должен хорошо понимать как структуру алгоритма, так и организацию работы ЭВМ. Учитывая накопленный алгоритмический багаж, можно сказать, что выполнение этой работы вручную требует больших затрат. Именно поэтому проблема автоматизации процесса согласования структуры алгоритмов со структурам вычислительных систем является актуальной.
Одним из путей решения этой проблемы является совместное исследование вычислительных систем и алгоритмов. Для этого в первую очередь необходимо выбрать взаимосвязанные средства их описання -язык описания структуры алгоритма и язык описания структуры вычислительной системы. Они должны предоставлять возможность задавать и распознавать различные свойства объектов, сравнивать и преобразовывать их описания. При удачном подборе таких средств можно было бы на уровне описаний алгоритмов и вычислителышх систем проводить их согласовашіе, возложив всю эту работу на ЭВМ. На первом
этапе исследований можно ограничиться созданием языков описания и-на их основе разработать инструментальные средства анализа алгоритмов, программ и вычислительных систем. Такие инструментальные средства окажут помощь как программистам, которые намерены составлять высокоэффективные программы для разных типов супер-ЭВМ, так и тем специалистам, которые занимаются проблемой согласования структур алгоритмов и вычислительных систем.
В настоящее время достигнуты определенные успехи в области исследования алгоритмов. Разработаны инструментальные программные средства для изучения свойств алгоритмов. Они нацелены на построение графа алгоритма, анализ его структуры, распараллеливание последовательных программ и др. Настоящая диссертационная работа посвящена другой стороне проблемы - исследованию в области построения инструментальных средств для описания структуры вычислительной системы с перспективой разработки на их основе методов согласования структур алгоритмов и вычислительных систем.
Цель работы
1. Разработать язык описания структуры (ЯОС) вычислительной
системы. Язык должен давать возможность идентифицировать основные
конструктивы ЭВМ (функциональные устройства, процессоры, регистры,
каналы и др.), описывать каналы передачи данных и указывать
некоторые технические характеристики. Количество и тип этих
характеристик определяются требованиями процесса согласования.
-
Разработать информационную систему по структурам вычислительных систем. Входными данными для нее должны быть описания семейств вычислительных систем на ЯОС. Система должна с помощью изображений на экране монитора показывать структуру вычислительной системы и ее составных частей, выдавать их технические характеристики, пояснения и другую вспомогательную информацию.
-
Разработать необходимую программную поддержку для использования информационной системы в учебных целях.
Научная новизна. Полученные результаты, а именно: математические модели представления структуры вычислительной системы, язык описания структуры вычислительной системы и информационная система по структурам вычислительных систем -являются новыми.
Практическая ценность. Результаты исследований имеют как теоретическое, так и практическое значение. Разработанная
информационная система содержит все необходимые сведешія для математиков-программистов, которые занимаются вопросами распараллеливания программ. Система, , совместно со средствами, которые позволяют анализировать и преобразовывать программы, применима в целях адаптации программ для их эффективной реализации на векторных и многопроцессорных ЭВМ с распределенной памятью. Выбранная структура системы позволяет эффективно использовать ее в области обучения. Практическое значение исследований состоит также в том, что их результаты (модели представления структуры вычислительной системы, язык описания структуры вычислительной системы) могут быть использованы в дальнейших исследованиях с целью автоматизации процесса согласования структуры алгоритма и вычислительной системы.
Результаты исследований внедрены и используются при реализации проекта "Разработка математических методов и программных средств для визуального анализа параллельной структуры программ и алгоритмов", выполняемого НИВЦ МГУ в рамках научно-исследовательской программы Министерства науки, высшей школы и технической политики РФ "Научная программа по направлению применения перспективных информационных технологий в науке и технике".
Апробация работы. Результаты исследований докладывались на научно-исследовательских семинарах отдела численного анализа НИВЦ МГУ, Института вычислительной математики РАИ и Института проблем кибернетики РАН.
Публикации. По теме диссертации опубликованы 3 статьи.
Структура и объем работы. Диссертация состоит из введения, трех глав и приложения. Общий объем 130 страниц, включая 19 рисунков. В списке литературы 96 наименований.