Files
2025-10-22 20:03:52 +04:00
..
2025-10-22 20:03:52 +04:00
2025-10-22 20:03:52 +04:00

Лабораторная работа 6 — Параллельное вычисление детерминанта матрицы

1. Цель работы

Изучение параллельного программирования на примере реализации алгоритмов вычисления детерминанта (определителя) квадратных матриц с использованием многопроцессности Python.

2. Как запустить лабораторную работу

Предварительные требования:

  • Python 3.9+
  • Библиотека NumPy

Установка зависимостей

pip install numpy

Запуск программы

python matrix.py

Программа автоматически выполнит:

  1. Тесты корректности на известных матрицах
  2. Бенчмарки на матрицах размером 100×100, 300×300 и 500×500 элементов
  3. Сравнение последовательного и параллельного алгоритмов

3. Структура проекта

matrix.py     # Основной файл с реализацией алгоритмов
README.md     # Документация проекта

4. Результаты тестирования

На всех тестах одинаковый результат: Детерминант при использовании множества потоков(процессов) высчитывается дольше чем при использовании строго 1 потока (главного). Это происходит из-за необходимости тратить время на выделение потоков(процессов), а также необходимости объединять результаты

Сводная таблица результатов

Размер Потоки Время (сек) Ускорение
100 1 0.0100 1.00
100 2 0.3408 0.03
100 4 0.3861 0.03
100 12 0.5920 0.02
300 1 0.0783 1.00
300 2 1.0641 0.07
300 4 1.2565 0.06
300 12 2.1755 0.04
500 1 0.2195 1.00
500 2 3.0588 0.07
500 4 3.0725 0.07
500 12 4.7439 0.05

5. Видео

ВидеоСсылка на видео работы алгоритма: Rutube