tailieunhanh - Accelerating SQL Database Operations on a GPU with CUDA
Today the term big data draws a lot of attention, but behind the hype there's a simple story. For decades, companies have been making business decisions based on transactional data stored in relational databases. Beyond that critical data, however, is a potential treasure trove of non-traditional, less structured data: weblogs, social media, email, sensors, and photographs that can be mined for useful information. Decreases in the cost of both storage and compute power have made it feasible to collect this data - which would have been thrown away only a few years ago. As a result, more and more. | Accelerating SQL Database Operations on a GPU with CUDA Peter Bakkum and Kevin Skadron Department of Computer Science University of Virginia Charlottesville VA 22904 pbb7c skadron @ ABSTRACT Prior work has shown dramatic acceleration for various database operations on GPUs but only using primitives that are not part of conventional database languages such as SQL. This paper implements a subset of the SQLite command processor directly on the GPU. This dramatically reduces the effort required to achieve GPU acceleration by avoiding the need for database programmers to use new programming languages such as CUDA or modify their programs to use non-SQL libraries. This paper focuses on accelerating SELECT queries and describes the considerations in an efficient GPU implementation of the SQLite command processor. Results on an NVIDIA Tesla C1060 achieve speedups of 20-70X depending on the size of the result set. Categories and Subject Descriptors Concurrent Programming Parallel Programming H. Database Management Parallel Databases Keywords GPGPU CUDA Databases SQL I. INTRODUCTION GPUs known colloquially as video cards are the means by which computers render graphical information on a screen. The modern GPU s parallel architecture gives it very high throughput on certain problems and its near universal use in desktop computers means that it is a cheap and ubiquitous source of processing power. There is a growing interest in applying this power to more general non-graphical problems through frameworks such as NVIDIA s CUDA an application programming interface developed to give programmers a simple and standard way to execute general purpose logic on NVIDIA GPUs. Programmers often use CUDA and similar interfaces to accelerate computationally intensive data processing operations often executing them fifty times faster Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that .
đang nạp các trang xem trước