DAS_2024_1/artamonova_tatyana_lab_5/README.md

2.2 KiB
Raw Blame History

Лабораторная работа №5 ПИбд-42 Артамоновой Татьяны

Запуск лабораторной работы

  1. Установить библиотеки Python и NumPy
  2. Запустить скрипт matrix.py с помощью команды: python matrix.py

Используемые технологии

  • Язык программирования: Python
  • Библиотеки:
    • numpy: Для работы с массивами и матрицами
    • multiprocessing: Для параллельного выполнения кода
    • time: Для измерения времени выполнения

Задание на лабораторную работу

Кратко: реализовать умножение двух больших квадратных матриц.

Подробно: в лабораторной работе требуется сделать два алгоритма: обычный и параллельный (задание со * - реализовать это в рамках одного алгоритма). В параллельном алгоритме предусмотреть ручное задание количества потоков (число потоков = 1 как раз и реализует задание со *), каждый из которых будет выполнять умножение элементов матрицы в рамках своей зоны ответственности.

Результаты

Результат работы

Вывод

Результаты показывают, что для маленьких матриц последовательное умножение быстрее. Оптимальное количество потоков близко к количеству ядер процессора. Увеличение количества потоков сверх оптимального значения не всегда ускоряет вычисления. Параллелизм эффективнее для больших матриц.

Видео