
- •I умножение полиномов
- •Цель работы и задание:
- •1.1 Цель работы:
- •1.2 Задание
- •2.1 Краткая информация о работе ячейки:
- •2.2 Краткая информация о работе процессора
- •Ход работы
- •3.2 Изменение содержимого ячеек процессора на каждом такте работы:
- •Аналитическое решение
- •4.1 Рассчитаем коэффициенты результирующего полинома:
- •II умножение матриц
- •Цель работы и задание:
- •1.1 Цель работы:
- •2 Провести экспериментальные исследования работы такого процессора.
- •1.2 Задание
- •2.1 Краткая информация о работе ячейки
- •2.2 Краткая информация о работе процессора
- •Ход работы
- •3.1 Вводим в программу cyst_mm размерность матриц (4х6 и 6х4) и исходные данные:
- •3.2 Изменение содержимого ячеек процессора на каждом такте работы:
- •Аналитическое решение
Ход работы
3.1 Вводим в программу cyst_mm размерность матриц (4х6 и 6х4) и исходные данные:
3.2 Изменение содержимого ячеек процессора на каждом такте работы:
Аналитическое решение
Рассчитаем коэффициенты результирующей матрицы:
c1,1 = a1,1b1,1+a1,2b2,1+a1,3b3,1+a1,4b4,1+a1,5b5,1+ a1,6b6,1
c1,2 = a1,1b1,2+a1,2b2,2+a1,3b3,2+a1,4b4,2+a1,5b5,2+ a1,6b6,2
c1,3 = a1,1b1,3+a1,2b2,3+a1,3b3,3+a1,4b4,3+a1,5b5,3+ a1,6b6,3
c1,4 = a1,1b1,4+a1,2b2,4+a1,3b3,4+a1,4b4,4+a1,5b5,4+ a1,6b6,4
c2,1 = a2,1b1,1+a2,2b2,1+a2,3b3,1+a2,4b4,1+a2,5b5,1+ a2,6b6,1
c2,2 = a2,1b1,2+a2,2b2,2+a2,3b3,2+a2,4b4,2+a2,5b5,2+ a2,6b6,2
c2,3 = a2,1b1,3+a2,2b2,3+a2,3b3,3+a2,4b4,3+a2,5b5,3+ a2,6b6,3
c2,4 = a2,1b1,4+a2,2b2,4+a2,3b3,4+a2,4b4,4+a2,5b5,4+ a2,6b6,4
c3,1 = a3,1b1,1+a3,2b2,1+a3,3b3,1+a3,4b4,1+a3,5b5,1+ a3,6b6,1
c3,2 = a3,1b1,2+a3,2b2,2+a3,3b3,2+a3,4b4,2+a3,5b5,2+ a3,6b6,2
c3,3 = a3,1b1,3+a3,2b2,3+a3,3b3,3+a3,4b4,3+a3,5b5,3+ a3,6b6,3
c3,4 = a3,1b1,4+a3,2b2,4+a3,3b3,4+a3,4b4,4+a3,5b5,4+ a3,6b6,4
c4,1 = a4,1b1,1+a4,2b2,1+a4,3b3,1+a4,4b4,1+a4,5b5,1+ a4,6b6,1
c4,2 = a4,1b1,2+a4,2b2,2+a4,3b3,2+a4,4b4,2+a4,5b5,2+ a4,6b6,2
c4,3 = a4,1b1,3+a4,2b2,3+a4,3b3,3+a4,4b4,3+a4,5b5,3+ a4,6b6,3
c4,4 = a4,1b1,4+a4,2b2,4+a4,3b3,4+a4,4b4,4+a4,5b5,4+ a4,6b6,4
c1,1 = |
1 |
* |
1 |
+ |
3 |
* |
2 |
+ |
5 |
* |
3 |
+ |
7 |
* |
1 |
+ |
9 |
* |
1 |
+ |
-1 |
* |
4 |
= |
1 |
+ |
6 |
+ |
15 |
+ |
7 |
+ |
9 |
+ |
-4 |
= |
34 |
|
|
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||
c1,2 = |
1 |
* |
2 |
+ |
3 |
* |
4 |
+ |
5 |
* |
6 |
+ |
7 |
* |
5 |
+ |
9 |
* |
7 |
+ |
-1 |
* |
3 |
= |
2 |
+ |
12 |
+ |
30 |
+ |
35 |
+ |
63 |
+ |
-3 |
= |
139 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
c1,3 = |
1 |
* |
3 |
+ |
3 |
* |
6 |
+ |
5 |
* |
9 |
+ |
7 |
* |
9 |
+ |
9 |
* |
4 |
+ |
-1 |
* |
2 |
= |
3 |
+ |
18 |
+ |
45 |
+ |
63 |
+ |
36 |
+ |
-2 |
= 163 |
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
c1,4 = |
1 |
* |
4 |
+ |
3 |
* |
8 |
+ |
5 |
* |
12 |
+ |
7 |
* |
-3 |
+ |
9 |
* |
6 |
+ |
-1 |
* |
1 |
= |
4 |
+ |
24 |
+ |
60 |
+ |
-21 |
+ |
54 |
+ |
-1 |
= 120 |
|
|
c2,1 = |
2 |
* |
1 |
+ |
4 |
* |
2 |
+ |
6 |
* |
3 |
+ |
8 |
* |
1 |
+ |
10 |
* |
1 |
+ |
12 |
* |
4 |
= |
2 |
+ |
8 |
+ |
18 |
+ |
8 |
+ |
10 |
+ |
48 |
= |
94 |
|
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
c2,2 = |
2 |
* |
2 |
+ |
4 |
* 4 |
|
+ |
6 |
* |
6 |
+ |
8 |
* |
5 |
+ |
10 |
* |
7 |
+ |
12 |
* |
3 |
= |
4 |
+ |
16 |
+ |
36 |
+ |
40 |
+ |
70 |
+ |
36 |
= |
202 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
c2,3 = |
2 |
* |
3 |
+ |
4 |
* |
6 |
+ |
6 |
* |
9 |
+ |
8 |
* |
9 |
+ |
10 |
* |
4 |
+ |
12 |
* |
2 |
= |
6 |
+ |
24 |
+ |
54 |
+ |
72 |
+ |
40 |
+ |
24 |
= |
220 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
c2,4 = |
2 |
* |
4 |
+ |
4 |
* |
8 |
+ |
6 |
* |
12 |
+ |
8 |
* |
-3 |
+ |
10 |
* |
6 |
+ |
12 |
* |
1 |
= |
8 |
+ |
32 |
+ |
72 |
+ |
-24 |
+ |
60 |
+ |
12 |
= |
160 |
c3,1 = |
1 |
* |
1 |
+ |
4 |
* |
2 |
+ |
7 |
* |
3 |
+ |
10 |
* |
1 |
+ |
-3 |
* |
1 |
+ |
6 |
* |
4 |
= |
1 |
+ |
8 |
+ |
21 |
+ |
10 |
+ |
-3 |
+ |
24 |
= |
61 |
|
|
|
|||||||||||||||||
c3,2 = |
1 |
* |
2 |
+ |
4 |
* |
4 |
+ |
7 |
* |
6 |
+ |
10 |
* |
5 |
+ |
-3 |
* |
7 |
+ |
6 |
* |
3 |
= |
2 |
+ |
16 |
+ |
42 |
+ |
50 |
+ |
-21 |
+ |
18 |
= |
107 |
|
|
||||||||||||||||||
c3,3 = |
1 |
* |
3 |
+ |
4 |
* |
6 |
+ |
7 |
* |
9 |
+ |
10 |
* |
9 |
+ |
-3 |
* |
4 |
+ |
6 |
* |
2 |
= |
3 |
+ |
24 |
+ |
63 |
+ |
90 |
+ |
-12 |
+ |
12 |
= |
180 |
||||||||||||||||||||
c3,4 = |
1 |
* |
4 |
+ |
4 |
* |
8 |
+ |
7 |
* |
12 |
+ |
10 |
* |
-3 |
+ |
-3 |
* |
6 |
+ |
6 |
* |
1 |
= |
4 |
+ |
32 |
+ |
84 |
+ |
-30 |
+ |
-18 |
+ |
6 |
= |
78 |
|
c4,1 = |
2 |
* |
1 |
+ |
5 |
* |
2 |
+ |
8 |
* |
3 |
+ |
-1 |
* |
1 |
+ |
4 |
* |
1 |
+ |
-7 |
* |
4 |
= |
2 |
+ |
10 |
+ |
24 |
+ |
-1 |
+ |
4 |
+ |
-28 |
= |
11 |
|
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
c4,2 = |
2 |
* |
2 |
+ |
5 |
* 4 |
|
+ |
8 |
* |
6 |
+ |
-1 |
* |
5 |
+ |
4 |
* |
7 |
+ |
-7 |
* |
3 |
= |
4 |
+ |
20 |
+ |
48 |
+ |
-5 |
+ |
28 |
+ |
-21 |
= |
74 |
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
c4,3 = |
2 |
* |
3 |
+ |
5 |
* |
6 |
+ |
8 |
* |
9 |
+ |
-1 |
* |
9 |
+ |
4 |
* |
4 |
+ |
-7 |
* |
2 |
= |
6 |
+ |
30 |
+ |
72 |
+ |
-9 |
+ |
16 |
+ |
-14 |
= |
101 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
c4,4 = |
2 |
* |
4 |
+ |
5 |
* |
8 |
+ |
8 |
* |
12 |
+ |
-1 |
* |
-3 |
+ |
4 |
* |
6 |
+ |
-7 |
* |
1 |
= |
8 |
+ |
40 |
+ |
96 |
+ |
3 |
+ |
24 |
+ |
-7 |
= 164 |
|
Результат:
Ускорение, полученное при вычислении на систолическом процессоре:
,
где Nоп – количество операций при ручном счете = 176
Nт – количество тактов выполняемых на систолическом процессоре = 42
Вывод
В ходе выполнения лабораторной работы было выполнено умножение двух матриц аналитически и с использованием систолического процессора. В результате, задача перемножения матриц 4х6 и 6х4 с использованием систолического процессора заняла 42 такта. При аналитическом решении выполнено 176 операций. Ускорение, полученное при использовании систолического процессора, составило 4,19. Следовательно, систолический процессор существенно ускоряет выполнение задач, которые можно распараллелить.