Skip to content

BITree2004/Paralgo.CW2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CW2

Задача

Нужно реализовать параллельный BFS. От Вас требуется написать последовательную версию алгоритма (seq, обычный BFS из курса алгоритмов) и параллельную версию (par). Протестировать надо на кубическом графе со стороной 300 и источником в (0, 0, 0). (Усреднить по 5 запускам) Сравнить время работы par на 4 процессах и seq на одном процессе - у Вас должно быть раза в 3 быстрее. (Если будет медленнее, то выставление баллов оставляется на моё усмотрение.) Учтите, что Ваш BFS должен работать на любом графе, если Вам дан его список смежности. Также нужно сопроводить тестами на корректность работы алгоритма.

Нужен код на гитхабе и результаты запусков в README.md. Код, который запускает, тоже должен лежать в репо.

Требования к пк

  • C++20 компилятор
  • CMake 3.17+
  • parlib в /third_party

Реализация

Как на лекции с мини оптимизациями

Run Seq algo Par algo
1 691 219
2 666 214
3 647 203
4 660 217
5 659 202
avg 664.6 211

Speedup = 3.14976 $\geq 3$

Снимок экрана прикрепил

Тесты

есть и разные семейства графов(циклы, цепочки, пустые, клики), есть и модель Эрдеша-Реньи, есть и на код

Сборка

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j4

./bfs
./unit_tests

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors