Структура описания свойств алгоритмов
Данный документ содержит описание схемы, по которой предлагается описывать свойства и структуру каждого алгоритма. Описание состоит из двух частей. В первой части описываются собственно алгоритмы и их свойства, а вторая посвящена описанию особенностей их программной реализации с учетом конкретных программно-аппаратных платформ. Такое деление на части сделано для того, чтобы машинно-независимые свойства алгоритмов, которые определяют качество их реализации на параллельных вычислительных системах, были бы выделены и описаны отдельно от множества вопросов, связанных с последующими этапами программирования алгоритмов и исполнения результирующих программ.
Общая схема описания алгоритмов имеет следующий вид:
ЧАСТЬ I. Описание свойств и структуры алгоритмов: общая часть
1.1. Словесное описание алгоритма
1.2. Математическое описание
1.3. Вычислительное ядро алгоритма
1.4. Макроструктура алгоритма
1.5. Описание схемы реализации последовательного алгоритма
1.6. Последовательная сложность алгоритма
1.7. Информационный граф
1.8. Описание ресурса параллелизма алгоритма
1.9. Описание входных и выходных данных
1.10. Свойства алгоритма
ЧАСТЬ II. Описание свойств и структуры алгоритмов: программная реализация
2.1. Особенности реализации последовательного алгоритма
2.2. Описание локальности данных и вычислений
2.3. Возможные способы и особенности реализации параллельного алгоритма
2.4. Масштабируемость алгоритма и его реализации
2.5. Динамические характеристики и эффективность реализации алгоритма
2.6. Выводы для классов архитектур
2.7. Существующие реализации алгоритма