- •Умножение двух матриц методом статического разделения на полосы
- •Постановка задачи
- •Последовательный алгоритм решения Умножение матриц по определению
- •Алгоритм Штрассена
- •Параллельный алгоритм решения
- •Результаты вычислительного эксперимента Матрицы 1 000 × 1 000
- •Матрицы 10 000 × 10 000
- •Матрицы 20 000 × 20 000
- •Приложение. Код программы.
Результаты вычислительного эксперимента Матрицы 1 000 × 1 000
Число потоков |
Время решения1 (сек) |
Ускорение |
1 |
5,7562 |
1,0000 |
2 |
3,5368 |
1,6275 |
3 |
2,7934 |
2,0606 |
4 |
2,4386 |
2,3605 |
5 |
2,4630 |
2,3371 |
6 |
2,4670 |
2,3333 |
7 |
2,4676 |
2,3327 |
8 |
2,4740 |
2,3267 |
9 |
2,4746 |
2,3261 |
10 |
2,4860 |
2,3154 |
11 |
2,4990 |
2,3034 |
12 |
2,6638 |
2,1609 |
Время
(сек)
Число
потоков
Ускорение
Число
потоков
Матрицы 10 000 × 10 000
Число потоков |
Время решения2 (сек) |
Ускорение |
1 |
1447,8922 |
1,0000 |
2 |
784,3633 |
1,8459 |
3 |
561,0955 |
2,5805 |
4 |
428,4089 |
3,3797 |
5 |
407,7476 |
3,5510 |
6 |
379,4659 |
3,8156 |
7 |
385,1177 |
3,7596 |
8 |
390,7400 |
3,7055 |
9 |
408,0124 |
3,5486 |
10 |
412,3470 |
3,5113 |
11 |
446,2310 |
3,2447 |
12 |
491,2599 |
2,9473 |
Время
(сек)
Число
потоков
Ускорение
Число
потоков
Матрицы 20 000 × 20 000
Число потоков |
Время решения (сек) |
Ускорение |
1 |
6005,4665 |
1,0000 |
2 |
3401,2681 |
1,7657 |
3 |
2375,1655 |
2,5284 |
4 |
1820,5416 |
3,2987 |
5 |
1873,0987 |
3,2062 |
6 |
1891,9394 |
3,1742 |
7 |
1873,6492 |
3,2052 |
8 |
1831,9423 |
3,2782 |
9 |
1951,0563 |
3,0781 |
10 |
2089,2749 |
2,8744 |
11 |
2116,7367 |
2,8371 |
12 |
2085,5324 |
2,8796 |
Время
(сек)
Число
потоков
Ускорение
Число
потоков