40 lines
2.3 KiB
Markdown
40 lines
2.3 KiB
Markdown
# Лабораторная работа №5 - Параллельное перемножение матриц
|
||
## Как запустить лабораторную работу
|
||
1. Склонировать ветку.
|
||
2. Перейти в папку Solution
|
||
3. В консоли ввести "dotnet run", следовать подсказкам на экране
|
||
4. Исходная матрица сохраняется в Data/Result.txt
|
||
## Какие технологии использовались
|
||
В лабораторной использовались инструменты .NET(c#).
|
||
## Что делает лабораторная работа
|
||
Лабораторная работа реализует программу, которая генерирует матрицу, вычисляет ее дискриминант по методу Гаусса и делает замеры скорости.
|
||
## Касательно скорости
|
||
Замеры:
|
||
___________________________________________
|
||
Введите размер матрицы: 100
|
||
Введите количество потоков: 100
|
||
|
||
Однопоточный алгоритм: 2 мс
|
||
Параллельный алгоритм (100 потоков): 15 мс
|
||
___________________________________________
|
||
|
||
Введите размер матрицы: 300
|
||
Введите количество потоков: 300
|
||
|
||
Однопоточный алгоритм: 51 мс
|
||
Параллельный алгоритм (300 потоков): 36 мс
|
||
___________________________________________
|
||
|
||
Введите размер матрицы: 500
|
||
Введите количество потоков: 500
|
||
|
||
Однопоточный алгоритм: 242 мс
|
||
Параллельный алгоритм (500 потоков): 114 мс
|
||
___________________________________________
|
||
|
||
Аналогично предыдущей лабораторной, при небольшом количестве данных, выигрывает однопоточный алгоритм, так как не тратится время на создание потоков.
|
||
Если же количество данных достаточно велико, то преимущество забирает многопоточный алгоритм.
|
||
## Ссылка на видео
|
||
https://vkvideo.ru/video-232718139_456239022
|
||
|