Уровень задачи

Умножение плотных матриц: различия между версиями

Материал из Алговики
Перейти к навигации Перейти к поиску
[непроверенная версия][досмотренная версия]
Новая страница: «== Описание свойств и структуры алгоритма == === Общее описание алгоритма === === Математическ…»
 
Нет описания правки
 
(не показано 15 промежуточных версий 3 участников)
Строка 1: Строка 1:
== Описание свойств и структуры алгоритма ==
{{level-p}}
=== Общее описание алгоритма ===
 
=== Математическое описание ===
'''Перемножение матриц''' - одна из базовых задач в алгоритмах линейной алгебры, широко применяется в большом количестве разных методов.
=== Вычислительное ядро алгоритма ===
Здесь мы рассмотрим умножение <math>C = AB</math>&nbsp; плотных неособенных матриц, то есть тот вариант, где никак не может использоваться специальный вид матрицы<ref>В.В.Воеводин, Ю.А.Кузнецов. Матрицы и вычисления. М.: Наука, 1984.</ref>.
=== Макроструктура алгоритма ===
 
=== Описание схемы реализации последовательного алгоритма ===
:<math>
=== Последовательная сложность алгоритма ===
\begin{align}
=== Информационный граф ===
c_{ij} = \sum_{k = 1}^{n} a_{ik} b_{kj}, \quad i \in [1, m], \quad j \in [1, l].
=== Описание ресурса параллелизма алгоритма ===
\end{align}
=== Описание входных и выходных данных ===
</math>
=== Свойства алгоритма ===
 
== Программная реализация ==
Классический алгоритм - [[Перемножение_плотных_неособенных_матриц_(последовательный_вещественный_вариант)]]. Для больших размеров существуют и более быстрые алгоритмы (метод Штрассена и т.д.).
=== Особенности реализации последовательного алгоритма ===
 
=== Описание локальности данных и вычислений ===
= Литература =
==== Описание локальности алгоритма ====
 
==== Описание локальности реализации алгоритма ====
[[Категория:Статьи в работе]]
===== Описание структуры обращений в память и качественная оценка локальности =====
 
===== Количественная оценка локальности =====
[[en:Dense matrix multiplication]]
=== Возможные способы и особенности реализации параллельного алгоритма ===
=== Масштабируемость алгоритма и его реализации ===
==== Описание масштабируемости алгоритма ====
==== Описание масштабируемости реализации алгоритма ====
=== Динамические характеристики и эффективность реализации алгоритма ===
=== Выводы для классов архитектур ===
=== Существующие реализации алгоритма ===

Текущая версия от 11:28, 14 марта 2018


Перемножение матриц - одна из базовых задач в алгоритмах линейной алгебры, широко применяется в большом количестве разных методов. Здесь мы рассмотрим умножение [math]\displaystyle{ C = AB }[/math]  плотных неособенных матриц, то есть тот вариант, где никак не может использоваться специальный вид матрицы[1].

[math]\displaystyle{ \begin{align} c_{ij} = \sum_{k = 1}^{n} a_{ik} b_{kj}, \quad i \in [1, m], \quad j \in [1, l]. \end{align} }[/math]

Классический алгоритм - Перемножение_плотных_неособенных_матриц_(последовательный_вещественный_вариант). Для больших размеров существуют и более быстрые алгоритмы (метод Штрассена и т.д.).

Литература

  1. ↑ В.В.Воеводин, Ю.А.Кузнецов. Матрицы и вычисления. М.: Наука, 1984.