Лекции по параллельным вычислениям. Гергель В.П - 135 стр.

UptoLike

Составители: 

135
ускорение и эффективность при отсутствии потерь на коммуникации составля-
ет соответственно R=s, и p
s
=1,
10.4 Умножение матриц при блочном разделении данных
При таком способе разделения данных исходные матрицы А, В и результи-
рующая матрица С представляются в виде наборов блоков. Для простоты далее
предполагается, что все матрицы являются квадратными размера n×n, количе-
ство блоков по горизонтали и вертикали одинаково и равно q (т.е. размер всех
блоков равен k×k, k=n/q, а n кратно q).
При указанных предположениях матрицу A можно представить в следую-
щем виде:
qqAqAqA
qAAA
A
,...2,1,
..........
,1...2,11,1
где
jiA , — блок матрицы, состоящий из элементов:
jiajiajia
jiajiajia
jiA
kkkk
k
,...,,
..........
,...,,
,
,2,1,
,12,11,1
При таком же представлении матриц B и C блок C
ij
, полученной в результате
перемножения матриц A и B матрицы C, определяется как
q
r
jrri
BAjiC
1
,,
, .
При блочном разбиении данных в качестве подзадач естественно взять со-
вокупности вычислительных операций, выполняемых над матричными блока-
ми. Другими словами, определим подзадачу как процедуру вычисления всех
элементов одного из блоков матрицы С. Для выполнения всех необходимых
вычислений подзадаче должны быть доступны соответствующие наборы строк
матрицы A и столбцов матрицы B.