.. | ||
images | ||
app.py | ||
readme.md |
Лабораторная работа №5 - Вспоминаем математику или параллельное перемножение матриц
Разработка приложения
Для разработки был выбран язык Python. Для разработки приложения были использованы библиотки:
- Numpy - библиотека для работы с массивами
- Multiprocessing - библиотека для запуска нескольких процеесов, что позволяет паралельно запускать функции
Суть алгоритма:
- Задаем размер матриц
- Задаем кол-во потоков, которые будут работать паралельно
- Разбиваем 1ю матрицу на матрицы поменьше, кол-во которых = кол-во потоков. Каждый поток будет обрабатывать свой кусок изначальной матрицы, умножая строки своего кусочка на столбцы 2й матрицы
- Объединяем результаты работы всех потоков
Тестирование
Тестирование матриц 100х100
Тестирование матриц 300х300
Тестирование матриц 500х500
Вывод
Паралельной алгоритм умножения матриц работает эффективнее, чем обычный.
Запись тестирования
Работа приложения представлена в видео