# Лабораторная работа №5 - Вспоминаем математику или параллельное перемножение матриц ## Разработка приложения Для разработки был выбран язык Python. Для разработки приложения были использованы библиотки: - Numpy - библиотека для работы с массивами - Multiprocessing - библиотека для запуска нескольких процеесов, что позволяет паралельно запускать функции Суть алгоритма: - Задаем размер матриц - Задаем кол-во потоков, которые будут работать паралельно - Разбиваем 1ю матрицу на матрицы поменьше, кол-во которых = кол-во потоков. Каждый поток будет обрабатывать свой кусок изначальной матрицы, умножая строки своего кусочка на столбцы 2й матрицы - Объединяем результаты работы всех потоков ## Тестирование #### Тестирование матриц 100х100 ![image1.png](images%2Fimage1.png) #### Тестирование матриц 300х300 ![image2.png](images%2Fimage2.png) #### Тестирование матриц 500х500 ![image3.png](images%2Fimage3.png) ## Вывод Паралельной алгоритм умножения матриц работает эффективнее, чем обычный. ## Запись тестирования Работа приложения представлена в [видео](https://disk.yandex.ru/i/YpNEhFwbDh865A)