distributed-computing/tasks/kazakov-ev/lab_5
2023-12-18 12:23:21 +03:00
..
pic lab_5 2023-12-18 12:23:21 +03:00
RVIP lab_5 2023-12-18 12:23:21 +03:00
10 Матрица1.txt lab_5 2023-12-18 12:23:21 +03:00
10 Матрица2.txt lab_5 2023-12-18 12:23:21 +03:00
100 Матрица1.txt lab_5 2023-12-18 12:23:21 +03:00
100 Матрица2.txt lab_5 2023-12-18 12:23:21 +03:00
300 Матрица1.txt lab_5 2023-12-18 12:23:21 +03:00
300 Матрица2.txt lab_5 2023-12-18 12:23:21 +03:00
500 Матрица1.txt lab_5 2023-12-18 12:23:21 +03:00
500 Матрица2 .txt lab_5 2023-12-18 12:23:21 +03:00
README.md lab_5 2023-12-18 12:23:21 +03:00

Отчет по лабораторной работе №5

Выполнил студент гр. ИСЭбд-41 Казаков Е.В.

Создание приложения

Выбрал язык C#, Windows Forms.

Приложение имеет три текстовых поля, в которых можно через пробел вносить элементы матрицы. В матрицы-множители значения можно загрузить через файл или сгенерировать внутри программы. Размерность можно регулировать от 2 до 1000 в специальном поле. При заполнении каждая матрица будет выдавать соответствующий флажок заполнения по полем ввода. При необходимости можно очистить все матрицы. Также есть флажок выключения вывода значений матриц в текстовые поля, т.к. это занимает слишком много времени. Количество потоков в параллельном алгоритме регулируется в соответствующем поле.

Попробуем запустить обычный и паралелльный алгоритмы на матрицах 10х10 и зафиксировать результат выполнения по времени.

В результате обычный алгоритм выполнился за 0.0003594 секунды, в то время как паралелльный выполнился за 0.0154394 секунды.

Бенчмарки

Протестируем обычный и параллельный алгоритм матрицах 100х100, 300х300 и 500х500. Сверху отображен результат обычного алгоритма, снизу паралелльного.

Матрицы 100х100

Матрицы 300х300

Матрицы 500х500

Вывод: Параллельный алгоритм работает быстрее только при наличии большого количества операций и данных. Если элементов не так много, то обычный алгоритм справляется быстрее.