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

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

Материал из Алговики
Перейти к навигации Перейти к поиску
[непроверенная версия][выверенная версия]
(Новая страница: «== Описание свойств и структуры алгоритма == === Общее описание алгоритма === === Математическ…»)
 
 
(не показано 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]]
=== Возможные способы и особенности реализации параллельного алгоритма ===
 
=== Масштабируемость алгоритма и его реализации ===
 
==== Описание масштабируемости алгоритма ====
 
==== Описание масштабируемости реализации алгоритма ====
 
=== Динамические характеристики и эффективность реализации алгоритма ===
 
=== Выводы для классов архитектур ===
 
=== Существующие реализации алгоритма ===
 

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


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

[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]

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

Литература

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