Author(s)
Term
4. term
Education
Publication year
2009
Submitted on
2009-06-10
Pages
71 pages
Abstract
In this report we document the development of a GPU-based DBMS. It stores data on the GPU and uses the high computation power of the GPU to perform efficient parallel operations on it. The DBMS is written in C\# for the CPU code and CUDA for the GPU code, and is accessed through a custom LINQ query provider. The main building block of the DBMS is collections of data-parallel arrays which represent tables and table columns. To facilitate the standard database operations we have implemented CUDA kernels which perform set operations on the columns as well as various math operations. We have also implemented cache sensitive search trees, an index type which encodes a tree structure into an array for efficient data retrieval on the GPU. Tests show that inserting values into the DBMS is in the order of a 100 times faster than SQL Server, and math operations were about 4 times faster. However, appending values to existing tables becomes increasingly slow with more values, and selecting an entire table also lags behind the SQL Server. Unfortunately, we were unable to perform filtered selections but performing tests directly on the index indicated it has a good performance. While the implemented DBMS is only a prototype, there is a lot of promising work to continue with. This includes expanded support for types and operations such as strings and joins, as well as optimizations such as query restructuring techniques and more efficient memory management.
Documents
Colophon: This page is part of the AAU Student Projects portal, which is run by Aalborg University. Here, you can find and download publicly available bachelor's theses and master's projects from across the university dating from 2008 onwards. Student projects from before 2008 are available in printed form at Aalborg University Library.
If you have any questions about AAU Student Projects or the research registration, dissemination and analysis at Aalborg University, please feel free to contact the VBN team. You can also find more information in the AAU Student Projects FAQs.