Paralelní algoritmy pro maximální toky v sítích na architektuře CUDA
Parallel algorithms for maximum flows in networks using CUDA architecture
Type of document
diplomová prácemaster thesis
Author
Kamil Červený
Supervisor
Šimeček Ivan
Opponent
Blažej Václav
Field of study
Teoretická informatikaStudy program
Informatika 2018Institutions assigning rank
katedra teoretické informatikyRights
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Show full item recordAbstract
Práce se zabývá možnostmi paralelizace algoritmů hledajících maximální tok v síti pro masivně paralelní architekturu CUDA. Na úvod práce je zaveden nezbytný teoretický základ z teorie grafů a algoritmů, na který navazuje představení existujících sekvenčních a masivně paralelních algoritmů, které vycházejí výhradně z původního sekvenčního Goldbergova algoritmu. Dále je uveden nový masivně paralelní algoritmus využívající obarvení hran sítě. Uvedené paralelní algoritmy jsou implementovány v programovacím jazyce C++ rozšířeném o CUDA. Na závěr práce je výkonnost implementovaných algoritmů porovnána na sadě různých typů sítí. This thesis explores the possibilities of parallelizing algorithms finding maximum flow in a network for massively parallel CUDA architecture. At the beginning of the work, a necessary theoretical basis from the graph and algorithm theory is introduced, followed by the introduction of existing sequential and massively parallel algorithms based exclusively on the original sequential Goldberg algorithm. Next, a new massively parallel algorithm using network edge coloring is introduced. All these parallel algorithms are implemented in the C++ programming language extended by CUDA. At the end of the work, the performance of implemented algorithms is compared on a set of different types of networks.
Collections
- Diplomové práce - 18101 [216]