Parallel algorithms for data hashing on GPUs
Paralelní algoritmy pro hešování dat na GPU
Authors
Supervisors
Reviewers
Editors
Other contributors
Journal Title
Journal ISSN
Volume Title
Publisher
České vysoké učení technické v Praze
Czech Technical University in Prague
Czech Technical University in Prague
Date
Abstract
Tato práce se zabývá problematikou hešovacích tabulek na grafických kartách využívajících technologii CUDA. Je zaveden potřebný teoretický základ, ve kterém je kladen důraz na datovou strukturu HashGraph, propojující hešování a teorii grafů. V práci jsou prezentovány možnosti reprezentace struktury HashGraph v paměti pomocí datových struktur pro práci s řídkými maticemi. Je uvedena upravená verze struktury HashGraph podporující dynamické přidávání a mazání prvků. Popsané datové struktury jsou implementovány v jazyce C++ a TNL knihovny. Implementace jsou porovnány s vybranými volně dostupnými hešovacími tabulkami.
In this thesis, we study hash tables on GPUs using CUDA technology. The necessary theoretical concepts are introduced, with emphasis on the HashGraph data structure, which connects hashing to graph theory. The possibilities of using different sparse matrix storage formats to represent HashGraph are analyzed. A modified version of the HashGraph data structure is introduced, providing support for dynamic insertion and removal of elements. The described data structures are implemented in the C++ language using the TNL library. Implementations are compared against selected freely available hash tables.
In this thesis, we study hash tables on GPUs using CUDA technology. The necessary theoretical concepts are introduced, with emphasis on the HashGraph data structure, which connects hashing to graph theory. The possibilities of using different sparse matrix storage formats to represent HashGraph are analyzed. A modified version of the HashGraph data structure is introduced, providing support for dynamic insertion and removal of elements. The described data structures are implemented in the C++ language using the TNL library. Implementations are compared against selected freely available hash tables.