Описание и анализ свойств, особенностей и характеристик алгоритмов в Открытой энциклопедии свойств алгоритмов AlgoWiki

Бесплатный доступ

Исследование свойств алгоритмов является важнейшим этапом в процессе их эффективной реализации на высокопроизводительных вычислительных системах. В данной статье рассматриваются свойства, особенности и характеристики алгоритмов, которые могут быть полезны для проведения такого анализа. Рассмотрены необходимые предварительные шаги, которые нужно выполнить для приведения алгоритмов к виду, в котором их можно анализировать и сравнивать между собой. Выделяются аналитические характеристики алгоритмов, то есть те свойства, которые могут быть описаны в числовом или формульном виде, при этом акцент делается на свойствах, связанных с параллелизмом. Многие из рассматриваемых свойств именно для алгоритмов предлагаются впервые, в то же время являясь аналогичными свойствам, которые принято рассматривать для программных реализаций. Все рассматриваемые свойства иллюстрируются несколькими примерами для хорошо известных алгоритмов, таких как суммирование элементов вектора, скалярное произведение двух векторов, перемножение двух плотных квадратных матриц и метод Гивенса (вращений) QR-разложения квадратной матрицы. В дальнейшем на базе исследования рассмотренных свойств предполагается решать задачи суперкомпьютерного кодизайна по совместному анализу свойств алгоритмов, программных реализаций и суперкомпьютерных систем.

алгоритм \ параллелизм \ суперкомпьютер \ кодизайн \ вычислительная сложность \ параллельная сложность \ ресурс параллелизма \ ускорение \ граф информационных зависимостей \ AlgoWiki

Короткий адрес: https://sciup.org/147254947

IDS: 147254947   |   УДК: 004.421, 519.688   |   DOI: 10.14529/cmse260201

Describing and Analyzing Properties, Features and Characteristics of Algorithms in the AlgoWiki Open Encyclopedia of Parallel Algorithmic

Investigating the properties of algorithms is a crucial step in their effective implementation on high-performance computing systems. This paper examines the properties, features, and characteristics of algorithms that can be useful for such analysis. It also discusses the necessary preliminary steps to transform algorithms into a form suitable for analysis and comparison. Analytical characteristics of algorithms – that is, those properties that can be described numerically or formulaically – are highlighted, with an emphasis on properties related to parallelism. Many of the properties discussed are proposed for algorithms for the first time, while at the same time being similar to those commonly considered for software implementations. All of the properties discussed are illustrated with several examples for well-known algorithms, such as summation of vector elements, the scalar product of two vectors, the multiplication of two dense square matrices, and the Givens (rotation) method of the QR factorization of a square matrix. In the future, based on the study of the considered properties, it is proposed to solve problems of supercomputer co-design for the joint analysis of the properties of algorithms, software implementations and supercomputer systems.