ВУЗ:
Рубрика:
84
организации умножения матриц, причем с ростом размерности за-
дачи это преимущество становится значительным.
Таблица 5.1 Время умножения матриц размером 1000х1000, 2000х2000, 4000х4000, с
ijk ikj jik jki kij kji
1000 5,5
11,4
6,5 2,3 12,5 3,8
2000 53,1 110,2 63,4 19,7 123,1 33,1
4000 582,5 1281,5 650,8 163,2 1382,9 260,1
Другим подходом повышения быстродействия умножения мат-
риц является использование блочного представления матриц.
11 1 11 1 11 1
1 1 1
... ... ...
... ... ... ... ... ... ... ... ...
... ... ...
N N N
N NN N NN N NN
C C A A B B
C AB
C C A A B B
,
1
N
ij ik kj
k
C A B
, (5.2)
где
, ,
ik kj ij
A B C
– матрицы размером
( / ) ( / )
n N n N
,
N
– количест-
во блоков по строкам или столбцам.
Чтобы понять, как достигается ускорение, необходимо иметь
представление, на что тратится машинное время при выполнении
программы и как функционирует память компьютера. Память ком-
пьютера имеет иерархическую структуру и состоит из различных
видов памяти с очень быстрой, дорогой и поэтому малого объема
памятью на вершине иерархии и медленной, дешевой и большого
объема памятью в ее нижней части (рис. 5.2).
Арифметические и логические операции выполняются только с
данными, размещенными в регистрах. С одного уровня иерархиче-
ской памяти данные могут перемещаться вверх или вниз на сосед-
ние уровни, причем скорость передачи данных снижается к нижне-
му уровню памяти. Скорость обмена данными на нижних уровнях
иерархической памяти на порядки может быть ниже скорости, с ко-
торой выполняются арифметические и логические операции. По-
этому эффективность и производительность вычислений в значи-
тельной степени зависят от того, как будет организована передача
Страницы
- « первая
- ‹ предыдущая
- …
- 82
- 83
- 84
- 85
- 86
- …
- следующая ›
- последняя »
