Zobrazit minimální záznam

Algorithms and data structures for hashing on GPU



dc.contributor.advisorOberhuber Tomáš
dc.contributor.authorAskar Kolushev
dc.date.accessioned2021-01-29T00:41:57Z
dc.date.available2021-01-29T00:41:57Z
dc.date.issued2021-01-28
dc.identifierKOS-922950497905
dc.identifier.urihttp://hdl.handle.net/10467/92872
dc.description.abstractHešovaci tabulka je typ datové struktury, která umožňuje vloženi a vyhledáváni kličů se složitosti O(1). Některé hešovaci tabulky jsou optimalizované pro práci na grafických procesorech (GPU). Tato práce je zaměřena na studium různých typů hešovaci tabulek a algoritmů a jejich implementaci pro GPU. Cilem je seznámit se s programovánim pomoci nástroje CUDA(r) a knihovny Template Numerical Library (TNL - www.tnl-project.org). Teoretická část po-pisuje podstatu hešováni a představuje některé datové struktury a algoritmy přizpůsobené pro paralelni zpracováni na GPU. V praktické části jsou některé z těchto přistupů (jmenovitě Cuckoo hashing a HashGraph) implementovány s pomoci TNL. Nakonec je implementace testována. Testy porovnávaji výkon na GPU a CPU s implementaci kontejneru std::unordered set ze standardni šablonové knihovny (STL) jazyka C++. Výsledky ukazuji, že všechny tes-tované přistupy funguji na GPU mnohem rychleji. Nejrychlejšim nalezeným přistupem byl HashGraph verze 1.0. Ten je nejlepši pro použiti v mnoha apli-kacich, které vyžaduji vloženi a vyhledáváni neuspořádaných kličů na GPU.cze
dc.description.abstractA hash table is a type of data structure that enables insertion and probing of keys having same format with an average complexity of O(1). Some hash tables are also more optimized for working on graphics processors (GPU). The goal of this work is to get familiar with programming for GPU using CUDA(r) framework and Template Numerical Library (TNL - www.tnl-project.org) and use it to realize several hashing approaches. Theoretical part describes the idea of hashing and introduces some data structures and algorithms intended to adapt it for parallel programming for GPU. In practical part, some of these approaches (namely, Cuckoo hashing and HashGraphs) are implemented using TNL. Finally, the implementation is tested. The tests compare its performance on GPU and CPU with the implementation of std::unordered set container in Standard Template Library of the C++ language. The results show that all tested approaches perform faster on GPU. The fastest approach found was HashGraph of version 1.0. Thus, it is the best examined choice to be used in many applications that require storing and probing unordered keys on GPU.eng
dc.publisherČeské vysoké učení technické v Praze. Vypočetní a informační centrum.cze
dc.publisherCzech Technical University in Prague. Computing and Information Centre.eng
dc.rightsA 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.htmleng
dc.rightsVysokoš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.htmlcze
dc.subjectHešovánicze
dc.subjecthešovaci tabulkacze
dc.subjectgrafický procesorcze
dc.subjectGPUcze
dc.subjectCUDAcze
dc.subjectTemplate Numerical Librarycze
dc.subjectTNLcze
dc.subjectCuckoo hashingcze
dc.subjectHashGraphcze
dc.subjectHashingeng
dc.subjecthash tableeng
dc.subjectgraphics processing uniteng
dc.subjectGPUeng
dc.subjectCUDAeng
dc.subjectTemplate Numerical Libraryeng
dc.subjectTNLeng
dc.subjectCuckoo hashingeng
dc.subjectHashGrapheng
dc.titleAlgoritmy a datové struktury pro hešování na GPUcze
dc.titleAlgorithms and data structures for hashing on GPUeng
dc.typebakalářská prácecze
dc.typebachelor thesiseng
dc.contributor.refereeJanoušek Jan
theses.degree.disciplineComputer Science (Bachelor, in English)cze
theses.degree.grantorkatedra teoretické informatikycze
theses.degree.programmeInformatics (in English)cze


Soubory tohoto záznamu




Tento záznam se objevuje v následujících kolekcích

Zobrazit minimální záznam