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

Выполнил студент гр. ИСЭбд-41 Дунаев О.И.

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

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

Приложение имеет поле ввода матрицы, в которое можно через пробел вносить элементы матрицы. При необходимости можно сгенерировать матрицу указав её размерность . При необходимости можно очистить матрицу и определитель. Количество потоков в параллельном алгоритме регулируется в соответствующем поле.  

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

![](pic/1.png)
![](pic/2.png)



## Бенчмарки

Протестируем обычный и параллельный алгоритм определение детерминанта на различной размерности матрицы. 

В ходе экспериментов было установлено, что обработка матрицы размеров больше 12х12 занимает слишком много времени в обычном алгоритме, поэтому для тестирования возьмем матрицы 5х5, 8х8 и 11х11. 

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

Матрица 5х5

![](pic/5x5№1.png)
![](pic/5x5№2.png)

Матрицы 8x8

![](pic/8x8№1.png)
![](pic/8x8№2.png)

Матрицы 12х12

![](pic/12x12№1.png)
![](pic/12x12№2.png)

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