Аннотация:
Фундаментальная проблема высокопроизводительных вычислений - это необходимость аккуратного согласования структуры алгоритмов и программ с особенностями архитектуры компьютеров. Возможности современных компьютеров велики, но если хотя бы на одном из этапов процесса решения задачи согласования не будет, то и эффективность работы компьютера будет близка к нулю. Основная идея данного проекта состоит в том, что свойства самих алгоритмов никак не зависят от вычислительных систем, существующих сейчас или будущих. Иными словами, детальное описание машинно-независимых свойств алгоритма нужно сделать лишь один раз, после чего оно может быть многократно использовано при реализации данного алгоритма в различных программно-аппаратных средах. Не менее важна и вторая, машинно-зависимая часть данного исследования, которая посвящена описанию особенностей программной реализации алгоритмов с учетом конкретных программно-аппаратных компьютерных платформ. Результатом проекта, которому посвящена данная статья, является открытая энциклопедия AlgoWiki по свойствам алгоритмов и особенностям их реализации для различных компьютерных систем. Умение эффективно работать со свойствами алгоритмов (выделять, описывать, анализировать, интерпретировать) станет широко востребованным уже через несколько лет, что будет верно как для экзафлопсных суперкомпьютерных систем высшего диапазона производительности, так и для всех других компьютерных платформ: от серверных до мобильных.
Ключевые слова:параллельные вычисления, структура алгоритмов, последовательные свойства алгоритмов, параллельные свойства алгоритмов, суперкомпьютеры, компьютерные платформы, эффективная реализация алгоритмов, масштабируемость, локальность данных, энциклопедия алгоритмов.