DAS_2024_1/vasina_ekaterina_lab_5/README.md

26 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Лабораторная работа №5 - Параллельное умножение матриц
## Задание
Требуется сделать два алгоритма: обычный и параллельный. В параллельном алгоритме предусмотреть ручное задание количества потоков, каждый из которых будет выполнять умножение элементов матрицы в рамках своей зоны ответственности.
### Описание работы программы
Метод ```benchmark``` выполняет бенчмарк для матриц заданного размера.
Далее генерируются две матрицы ```matrix1``` и ```matrix2``` заданного размера.
После этого вызываются соответствующие методы для вычисления произведения матриц: ```multiply_matrices``` для обычного умножения и ```multiply_matrices_parallel``` для параллельного умножения.
Измеряется время выполнения каждого из методов с использованием функции ```time.time()```.
### Результат работы программы
![](lab_5.png "")
### Вывод
Параллельный подход может быть более быстрым, чем последовательный на матрицах большого размера, так как он позволяет производить более Параллельное выполнение матричного умножения имеет смысл применять при работе с крупными матрицами, где выигрыш от параллельных вычислений компенсирует затраты на управление потоками. Для небольших матриц может быть эффективнее использовать обычное выполнение
# Видеозапись работы програмы
https://vkvideo.ru/video174596752_456239398