From 74a03658f99722def59ab9062c8de075fe37cbce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=BE=D0=BB=D0=BE=D0=B4=D1=8F?= Date: Wed, 13 Nov 2024 21:27:51 +0400 Subject: [PATCH] morozov_vladimir_lab_5 is ready --- morozov_vladimir_lab_5/app.py | 60 +++++++++++++++++++++++ morozov_vladimir_lab_5/images/image1.png | Bin 0 -> 46161 bytes morozov_vladimir_lab_5/images/image2.png | Bin 0 -> 41181 bytes morozov_vladimir_lab_5/images/image3.png | Bin 0 -> 41469 bytes morozov_vladimir_lab_5/readme.md | 28 +++++++++++ 5 files changed, 88 insertions(+) create mode 100644 morozov_vladimir_lab_5/app.py create mode 100644 morozov_vladimir_lab_5/images/image1.png create mode 100644 morozov_vladimir_lab_5/images/image2.png create mode 100644 morozov_vladimir_lab_5/images/image3.png create mode 100644 morozov_vladimir_lab_5/readme.md diff --git a/morozov_vladimir_lab_5/app.py b/morozov_vladimir_lab_5/app.py new file mode 100644 index 0000000..dc2a4f2 --- /dev/null +++ b/morozov_vladimir_lab_5/app.py @@ -0,0 +1,60 @@ +import math +from multiprocessing import Pool +import numpy as np +from datetime import datetime + + +# Метод по умножение определенных строк 1й матрицы на столбцы 2й матрицы +def work(start, end, fst, sec): + result = [] + for i1 in range(start, end): + str = np.zeros(len(sec[0])) + for j2 in range(0, len(sec[0])): + mul = np.zeros(len(sec[0])) + for i2 in range(0, len(sec)): + mul[i2] = fst[i1][i2] * sec[i2][j2] + str[j2] = np.sum(mul) + result.append(str.tolist()) + + return result + + +if __name__ == '__main__': + + sizes = [100, 300] + threads_counts = [1, 2, 4, 8] + + for size_arrays in sizes: + + fst = np.random.randint(1, 30, size=(size_arrays, size_arrays)) + sec = np.random.randint(1, 30, size=(size_arrays, size_arrays)) + result = np.ones((size_arrays, size_arrays,), dtype='int32') + + for thread_count in threads_counts: + step = math.floor(size_arrays / thread_count) + remaining_lines = size_arrays % thread_count + + steps = [step] * thread_count + + for i in range(0, len(steps)): + steps[i] = steps[i] + math.ceil(remaining_lines / thread_count) + remaining_lines -= math.ceil(remaining_lines / thread_count) + if remaining_lines == 0: + break + + # Создаем список кусочков массива + args = [] + i = 0 + for step in steps: + args.append([i, i + step, fst, sec]) + i += step + pool = Pool(thread_count) + # начинаем умножение + startTime = datetime.now() + result = pool.starmap(work, args) + endTime = datetime.now() + print(f"Size of arrays: {size_arrays}") + print(f"Count of threads: {thread_count}") + print("Time work:", endTime - startTime) + print("--------------") + print("--------------------------------------------------------") diff --git a/morozov_vladimir_lab_5/images/image1.png b/morozov_vladimir_lab_5/images/image1.png new file mode 100644 index 0000000000000000000000000000000000000000..ed06d63d0424be22f184a4ef840090338acada04 GIT binary patch literal 46161 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 z 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 P8tSF1iO?uivkm?~$$ZlX literal 0 HcmV?d00001 diff --git a/morozov_vladimir_lab_5/images/image2.png b/morozov_vladimir_lab_5/images/image2.png new file mode 100644 index 0000000000000000000000000000000000000000..57f62572cf07825c1d2c62d13af81e387f220570 GIT binary patch literal 41181 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 literal 0 HcmV?d00001 diff --git a/morozov_vladimir_lab_5/images/image3.png b/morozov_vladimir_lab_5/images/image3.png new file mode 100644 index 0000000000000000000000000000000000000000..3c86cc7c1ccd6c47d01e9109d857af51c7d35be2 GIT binary patch literal 41469 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 C=kM15 literal 0 HcmV?d00001 diff --git a/morozov_vladimir_lab_5/readme.md b/morozov_vladimir_lab_5/readme.md new file mode 100644 index 0000000..9e2a19b --- /dev/null +++ b/morozov_vladimir_lab_5/readme.md @@ -0,0 +1,28 @@ +# Лабораторная работа №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) \ No newline at end of file