SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
A GPU Database
           Architecture


GTC 2013
Tuesday, March 19
Peter Bakkum
How do you…
Use an interface you already know?

Accelerate things you’re already
doing?



        SQL on the GPU
Peter Bakkum
@pbbakkum



Research at NEC Labs
Algorithmic Trading at ITG
Engineer at Hyperpublic
Data Infrastructure at Groupon
Virginian
Developed at NEC Labs

SQL SELECT scans

Choose execution on the CPU or the
GPU with CUDA

Common data format
SQL database

              API

      SQL parser/compiler

     Common query format

     CPU VM         GPU VM

      Common data format
How do we…
Decompose SQL queries into discrete
units?

Interface with the virtual machine?

Fit this into both the CPU and the GPU?


             Opcodes
Opcodes
Simple operations
Control query flow
Use the context of the virtual machine
Access VM registers
Type agnostic
Abstract away parallelism
Execute within a kernel, not as a kernel
Opcode example


                   Add 2, 1, 0, null
                                          source
operation
                                          register 2

     destination                   source
        register                   register 1



            reg[2] = reg[1] + reg[0]
Opcode program
select col0 from test where (col0 = 2)
!
0: Table          0 0 0      0 !
1: ResultColumn   0 0 0 col0 !
2: Parallel       0 0 9      0 !
3: Column         1 0 0      0 !
4: Integer        0 2 0      0 !
5: Eq             1 0 7      1 !
6: Invalid        0 0 0      0 !
7: Result         1 1 0      0 !
8: Converge       0 0 0      0 !
9: Finish         0 0 0      0 !
How do we…
Store our data?
Handle fixed AND variable widths?
Ensure efficiency on both platforms?
Move to a new memory space?


               Tablets
Tablets
                       Meta Information
Split the data into
                       Key / Key Pointer
workable chunks

Use column major       Column-major fixed
form to exploit both   width data

CPU cache locality
and GPU
coalescing             Variable width data
Tablets
                       Meta Information
Use relative
                       Key / Key Pointer
pointers so variable
width data can be
moved
                       Column-major fixed
                       width data

Flexible in terms of
fixed vs variable
width areas            Variable width data
Tablet management
Data tablets streamed or mapped into GPU memory
Result tablets streamed or mapped off
Effectively circumvent GPU memory limitation

                     GPU Memory



                           Main Memory




                                         …   Disk
Sequential memory copies
 Entire data and results tablets must be moved
 Can use streaming to overlap


Time                   Data Transfer Time     Query Execution   Results Transfer Time
       GPU Registers

                                       Global memory reads and writes

GPU Global Memory

                              Data Transfer                  Results Transfer

        Main Memory
Mapped memory
Coalesced reads efficiently transfer data as it is needed
Results buffered in GPU memory, then moved in chunks


 Time                 Query Execution

    GPU Registers

                                        Results buffered in global memory

GPU Global Memory

                                         Constant data/results transfer

        Main Memory
Mapped Memory Performance
                  0.12


                   0.1


                  0.08
Running Time(s)




                                                      Results Transfer
                  0.06                                Kernel Execution
                                                      Data Transfer

                  0.04                                Mapped Kernel


                  0.02


                    0
                           Serial   Mapped   Cached
Query Suite Running Times
                   0.16

                   0.14

                   0.12
Running Time (s)




                    0.1

                   0.08                                            Multi-Core
                                                                   Mapped GPU
                   0.06
                                                                   Cached GPU
                   0.04

                   0.02

                     0
                          1   2   3   4   5   6   7   8   9   10
                                          Query
Rows Processed vs. Running Time
                   0.12


                    0.1


                   0.08
Running Time (s)




                   0.06                                                  Multi
                                                                         Mapped
                   0.04                                                  Cached


                   0.02


                     0
                          0     1   2   3         4      5   6   7   8
                                            Data Rows (M)
Future work
Some database workloads are a good
candidate for GPUs

Implementing an entire database on
both platforms is difficult

Future hardware changes will shift the
balance towards GPUs
Questions

Peter Bakkum
pbb7c@virginia.edu
@pbbakkum

github.com/bakks/virginian

Mais conteúdo relacionado

Mais procurados

PG-Strom - A FDW module utilizing GPU device
PG-Strom - A FDW module utilizing GPU devicePG-Strom - A FDW module utilizing GPU device
PG-Strom - A FDW module utilizing GPU deviceKohei KaiGai
 
Gc and-pagescan-attacks-by-linux
Gc and-pagescan-attacks-by-linuxGc and-pagescan-attacks-by-linux
Gc and-pagescan-attacks-by-linuxCuong Tran
 
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Danielle Womboldt
 
PGConf.ASIA 2019 Bali - AppOS: PostgreSQL Extension for Scalable File I/O - K...
PGConf.ASIA 2019 Bali - AppOS: PostgreSQL Extension for Scalable File I/O - K...PGConf.ASIA 2019 Bali - AppOS: PostgreSQL Extension for Scalable File I/O - K...
PGConf.ASIA 2019 Bali - AppOS: PostgreSQL Extension for Scalable File I/O - K...Equnix Business Solutions
 
LizardFS-WhitePaper-Eng-v4.0 (1)
LizardFS-WhitePaper-Eng-v4.0 (1)LizardFS-WhitePaper-Eng-v4.0 (1)
LizardFS-WhitePaper-Eng-v4.0 (1)Pekka Männistö
 
Accelerating hbase with nvme and bucket cache
Accelerating hbase with nvme and bucket cacheAccelerating hbase with nvme and bucket cache
Accelerating hbase with nvme and bucket cacheDavid Grier
 
An introduction to column store indexes and batch mode
An introduction to column store indexes and batch modeAn introduction to column store indexes and batch mode
An introduction to column store indexes and batch modeChris Adkin
 
PG-Strom - GPU Accelerated Asyncr
PG-Strom - GPU Accelerated AsyncrPG-Strom - GPU Accelerated Asyncr
PG-Strom - GPU Accelerated AsyncrKohei KaiGai
 
Scaling out SSIS with Parallelism, Diving Deep Into The Dataflow Engine
Scaling out SSIS with Parallelism, Diving Deep Into The Dataflow EngineScaling out SSIS with Parallelism, Diving Deep Into The Dataflow Engine
Scaling out SSIS with Parallelism, Diving Deep Into The Dataflow EngineChris Adkin
 
Ceph Performance and Sizing Guide
Ceph Performance and Sizing GuideCeph Performance and Sizing Guide
Ceph Performance and Sizing GuideJose De La Rosa
 
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander KukushkinPGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander KukushkinEqunix Business Solutions
 
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph EnterpriseRed Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph EnterpriseRed_Hat_Storage
 
Exploring the Performance Impact of Virtualization on an HPC Cloud
Exploring the Performance Impact of Virtualization on an HPC CloudExploring the Performance Impact of Virtualization on an HPC Cloud
Exploring the Performance Impact of Virtualization on an HPC CloudRyousei Takano
 
What’s new in 9.6, by PostgreSQL contributor
What’s new in 9.6, by PostgreSQL contributorWhat’s new in 9.6, by PostgreSQL contributor
What’s new in 9.6, by PostgreSQL contributorMasahiko Sawada
 

Mais procurados (20)

PostgreSQL on Solaris
PostgreSQL on SolarisPostgreSQL on Solaris
PostgreSQL on Solaris
 
PG-Strom
PG-StromPG-Strom
PG-Strom
 
PG-Strom - A FDW module utilizing GPU device
PG-Strom - A FDW module utilizing GPU devicePG-Strom - A FDW module utilizing GPU device
PG-Strom - A FDW module utilizing GPU device
 
Gc and-pagescan-attacks-by-linux
Gc and-pagescan-attacks-by-linuxGc and-pagescan-attacks-by-linux
Gc and-pagescan-attacks-by-linux
 
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
 
Presentation
PresentationPresentation
Presentation
 
LUG 2014
LUG 2014LUG 2014
LUG 2014
 
PGConf.ASIA 2019 Bali - AppOS: PostgreSQL Extension for Scalable File I/O - K...
PGConf.ASIA 2019 Bali - AppOS: PostgreSQL Extension for Scalable File I/O - K...PGConf.ASIA 2019 Bali - AppOS: PostgreSQL Extension for Scalable File I/O - K...
PGConf.ASIA 2019 Bali - AppOS: PostgreSQL Extension for Scalable File I/O - K...
 
LizardFS-WhitePaper-Eng-v4.0 (1)
LizardFS-WhitePaper-Eng-v4.0 (1)LizardFS-WhitePaper-Eng-v4.0 (1)
LizardFS-WhitePaper-Eng-v4.0 (1)
 
Accelerating hbase with nvme and bucket cache
Accelerating hbase with nvme and bucket cacheAccelerating hbase with nvme and bucket cache
Accelerating hbase with nvme and bucket cache
 
An introduction to column store indexes and batch mode
An introduction to column store indexes and batch modeAn introduction to column store indexes and batch mode
An introduction to column store indexes and batch mode
 
PG-Strom - GPU Accelerated Asyncr
PG-Strom - GPU Accelerated AsyncrPG-Strom - GPU Accelerated Asyncr
PG-Strom - GPU Accelerated Asyncr
 
Scaling out SSIS with Parallelism, Diving Deep Into The Dataflow Engine
Scaling out SSIS with Parallelism, Diving Deep Into The Dataflow EngineScaling out SSIS with Parallelism, Diving Deep Into The Dataflow Engine
Scaling out SSIS with Parallelism, Diving Deep Into The Dataflow Engine
 
Ceph Performance and Sizing Guide
Ceph Performance and Sizing GuideCeph Performance and Sizing Guide
Ceph Performance and Sizing Guide
 
ceph-barcelona-v-1.2
ceph-barcelona-v-1.2ceph-barcelona-v-1.2
ceph-barcelona-v-1.2
 
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander KukushkinPGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
PGConf.ASIA 2019 Bali - PostgreSQL on K8S at Zalando - Alexander Kukushkin
 
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph EnterpriseRed Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
 
Exploring the Performance Impact of Virtualization on an HPC Cloud
Exploring the Performance Impact of Virtualization on an HPC CloudExploring the Performance Impact of Virtualization on an HPC Cloud
Exploring the Performance Impact of Virtualization on an HPC Cloud
 
What’s new in 9.6, by PostgreSQL contributor
What’s new in 9.6, by PostgreSQL contributorWhat’s new in 9.6, by PostgreSQL contributor
What’s new in 9.6, by PostgreSQL contributor
 
Tools for Metaspace
Tools for MetaspaceTools for Metaspace
Tools for Metaspace
 

Semelhante a S3332 peter bakkum

Hadoop World 2011: Hadoop and Performance - Todd Lipcon & Yanpei Chen, Cloudera
Hadoop World 2011: Hadoop and Performance - Todd Lipcon & Yanpei Chen, ClouderaHadoop World 2011: Hadoop and Performance - Todd Lipcon & Yanpei Chen, Cloudera
Hadoop World 2011: Hadoop and Performance - Todd Lipcon & Yanpei Chen, ClouderaCloudera, Inc.
 
2010 ilmf asprs hot topics session
2010 ilmf asprs hot topics session2010 ilmf asprs hot topics session
2010 ilmf asprs hot topics sessionraj.m.rao
 
Hanborq Optimizations on Hadoop MapReduce
Hanborq Optimizations on Hadoop MapReduceHanborq Optimizations on Hadoop MapReduce
Hanborq Optimizations on Hadoop MapReduceHanborq Inc.
 
The state of Hive and Spark in the Cloud (July 2017)
The state of Hive and Spark in the Cloud (July 2017)The state of Hive and Spark in the Cloud (July 2017)
The state of Hive and Spark in the Cloud (July 2017)Nicolas Poggi
 
Threading Successes 03 Gamebryo
Threading Successes 03   GamebryoThreading Successes 03   Gamebryo
Threading Successes 03 Gamebryoguest40fc7cd
 
The state of SQL-on-Hadoop in the Cloud
The state of SQL-on-Hadoop in the CloudThe state of SQL-on-Hadoop in the Cloud
The state of SQL-on-Hadoop in the CloudNicolas Poggi
 
MEW22 22nd Machine Evaluation Workshop Microsoft
MEW22 22nd Machine Evaluation Workshop MicrosoftMEW22 22nd Machine Evaluation Workshop Microsoft
MEW22 22nd Machine Evaluation Workshop MicrosoftLee Stott
 
Hanborq optimizations on hadoop map reduce 20120221a
Hanborq optimizations on hadoop map reduce 20120221aHanborq optimizations on hadoop map reduce 20120221a
Hanborq optimizations on hadoop map reduce 20120221aSchubert Zhang
 
WMS Performance Shootout 2010
WMS Performance Shootout 2010WMS Performance Shootout 2010
WMS Performance Shootout 2010Jeff McKenna
 
iMinds The Conference: Jan Lemeire
iMinds The Conference: Jan LemeireiMinds The Conference: Jan Lemeire
iMinds The Conference: Jan Lemeireimec
 
Sql server 2016 it just runs faster sql bits 2017 edition
Sql server 2016 it just runs faster   sql bits 2017 editionSql server 2016 it just runs faster   sql bits 2017 edition
Sql server 2016 it just runs faster sql bits 2017 editionBob Ward
 
BWC Supercomputing 2008 Presentation
BWC Supercomputing 2008 PresentationBWC Supercomputing 2008 Presentation
BWC Supercomputing 2008 Presentationlilyco
 
SQream-GPU가속 초거대 정형데이타 분석용 SQL DB-제품소개-박문기@메가존클라우드
SQream-GPU가속 초거대 정형데이타 분석용 SQL DB-제품소개-박문기@메가존클라우드SQream-GPU가속 초거대 정형데이타 분석용 SQL DB-제품소개-박문기@메가존클라우드
SQream-GPU가속 초거대 정형데이타 분석용 SQL DB-제품소개-박문기@메가존클라우드문기 박
 
Topics - , Addressing modes, GPU, .pdf
Topics - , Addressing modes, GPU,  .pdfTopics - , Addressing modes, GPU,  .pdf
Topics - , Addressing modes, GPU, .pdfShubhamSinghRajput46
 
Journey to Stability: Petabyte Ceph Cluster in OpenStack Cloud
Journey to Stability: Petabyte Ceph Cluster in OpenStack CloudJourney to Stability: Petabyte Ceph Cluster in OpenStack Cloud
Journey to Stability: Petabyte Ceph Cluster in OpenStack CloudCeph Community
 
Journey to Stability: Petabyte Ceph Cluster in OpenStack Cloud
Journey to Stability: Petabyte Ceph Cluster in OpenStack CloudJourney to Stability: Petabyte Ceph Cluster in OpenStack Cloud
Journey to Stability: Petabyte Ceph Cluster in OpenStack CloudPatrick McGarry
 
Accelerating HBase with NVMe and Bucket Cache
Accelerating HBase with NVMe and Bucket CacheAccelerating HBase with NVMe and Bucket Cache
Accelerating HBase with NVMe and Bucket CacheNicolas Poggi
 
Advancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
Advancing GPU Analytics with RAPIDS Accelerator for Spark and AlluxioAdvancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
Advancing GPU Analytics with RAPIDS Accelerator for Spark and AlluxioAlluxio, Inc.
 

Semelhante a S3332 peter bakkum (20)

Hadoop World 2011: Hadoop and Performance - Todd Lipcon & Yanpei Chen, Cloudera
Hadoop World 2011: Hadoop and Performance - Todd Lipcon & Yanpei Chen, ClouderaHadoop World 2011: Hadoop and Performance - Todd Lipcon & Yanpei Chen, Cloudera
Hadoop World 2011: Hadoop and Performance - Todd Lipcon & Yanpei Chen, Cloudera
 
2010 ilmf asprs hot topics session
2010 ilmf asprs hot topics session2010 ilmf asprs hot topics session
2010 ilmf asprs hot topics session
 
Hanborq Optimizations on Hadoop MapReduce
Hanborq Optimizations on Hadoop MapReduceHanborq Optimizations on Hadoop MapReduce
Hanborq Optimizations on Hadoop MapReduce
 
The state of Hive and Spark in the Cloud (July 2017)
The state of Hive and Spark in the Cloud (July 2017)The state of Hive and Spark in the Cloud (July 2017)
The state of Hive and Spark in the Cloud (July 2017)
 
Threading Successes 03 Gamebryo
Threading Successes 03   GamebryoThreading Successes 03   Gamebryo
Threading Successes 03 Gamebryo
 
The state of SQL-on-Hadoop in the Cloud
The state of SQL-on-Hadoop in the CloudThe state of SQL-on-Hadoop in the Cloud
The state of SQL-on-Hadoop in the Cloud
 
MEW22 22nd Machine Evaluation Workshop Microsoft
MEW22 22nd Machine Evaluation Workshop MicrosoftMEW22 22nd Machine Evaluation Workshop Microsoft
MEW22 22nd Machine Evaluation Workshop Microsoft
 
Hanborq optimizations on hadoop map reduce 20120221a
Hanborq optimizations on hadoop map reduce 20120221aHanborq optimizations on hadoop map reduce 20120221a
Hanborq optimizations on hadoop map reduce 20120221a
 
WMS Performance Shootout 2010
WMS Performance Shootout 2010WMS Performance Shootout 2010
WMS Performance Shootout 2010
 
iMinds The Conference: Jan Lemeire
iMinds The Conference: Jan LemeireiMinds The Conference: Jan Lemeire
iMinds The Conference: Jan Lemeire
 
Sql server 2016 it just runs faster sql bits 2017 edition
Sql server 2016 it just runs faster   sql bits 2017 editionSql server 2016 it just runs faster   sql bits 2017 edition
Sql server 2016 it just runs faster sql bits 2017 edition
 
BWC Supercomputing 2008 Presentation
BWC Supercomputing 2008 PresentationBWC Supercomputing 2008 Presentation
BWC Supercomputing 2008 Presentation
 
SQream-GPU가속 초거대 정형데이타 분석용 SQL DB-제품소개-박문기@메가존클라우드
SQream-GPU가속 초거대 정형데이타 분석용 SQL DB-제품소개-박문기@메가존클라우드SQream-GPU가속 초거대 정형데이타 분석용 SQL DB-제품소개-박문기@메가존클라우드
SQream-GPU가속 초거대 정형데이타 분석용 SQL DB-제품소개-박문기@메가존클라우드
 
Topics - , Addressing modes, GPU, .pdf
Topics - , Addressing modes, GPU,  .pdfTopics - , Addressing modes, GPU,  .pdf
Topics - , Addressing modes, GPU, .pdf
 
Journey to Stability: Petabyte Ceph Cluster in OpenStack Cloud
Journey to Stability: Petabyte Ceph Cluster in OpenStack CloudJourney to Stability: Petabyte Ceph Cluster in OpenStack Cloud
Journey to Stability: Petabyte Ceph Cluster in OpenStack Cloud
 
Journey to Stability: Petabyte Ceph Cluster in OpenStack Cloud
Journey to Stability: Petabyte Ceph Cluster in OpenStack CloudJourney to Stability: Petabyte Ceph Cluster in OpenStack Cloud
Journey to Stability: Petabyte Ceph Cluster in OpenStack Cloud
 
Accelerating HBase with NVMe and Bucket Cache
Accelerating HBase with NVMe and Bucket CacheAccelerating HBase with NVMe and Bucket Cache
Accelerating HBase with NVMe and Bucket Cache
 
Aerospike & GCE (LSPE Talk)
Aerospike & GCE (LSPE Talk)Aerospike & GCE (LSPE Talk)
Aerospike & GCE (LSPE Talk)
 
Advancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
Advancing GPU Analytics with RAPIDS Accelerator for Spark and AlluxioAdvancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
Advancing GPU Analytics with RAPIDS Accelerator for Spark and Alluxio
 
Exascale Capabl
Exascale CapablExascale Capabl
Exascale Capabl
 

S3332 peter bakkum

  • 1. A GPU Database Architecture GTC 2013 Tuesday, March 19 Peter Bakkum
  • 2. How do you… Use an interface you already know? Accelerate things you’re already doing? SQL on the GPU
  • 3. Peter Bakkum @pbbakkum Research at NEC Labs Algorithmic Trading at ITG Engineer at Hyperpublic Data Infrastructure at Groupon
  • 4. Virginian Developed at NEC Labs SQL SELECT scans Choose execution on the CPU or the GPU with CUDA Common data format
  • 5. SQL database API SQL parser/compiler Common query format CPU VM GPU VM Common data format
  • 6. How do we… Decompose SQL queries into discrete units? Interface with the virtual machine? Fit this into both the CPU and the GPU? Opcodes
  • 7. Opcodes Simple operations Control query flow Use the context of the virtual machine Access VM registers Type agnostic Abstract away parallelism Execute within a kernel, not as a kernel
  • 8. Opcode example Add 2, 1, 0, null source operation register 2 destination source register register 1 reg[2] = reg[1] + reg[0]
  • 9. Opcode program select col0 from test where (col0 = 2) ! 0: Table 0 0 0 0 ! 1: ResultColumn 0 0 0 col0 ! 2: Parallel 0 0 9 0 ! 3: Column 1 0 0 0 ! 4: Integer 0 2 0 0 ! 5: Eq 1 0 7 1 ! 6: Invalid 0 0 0 0 ! 7: Result 1 1 0 0 ! 8: Converge 0 0 0 0 ! 9: Finish 0 0 0 0 !
  • 10. How do we… Store our data? Handle fixed AND variable widths? Ensure efficiency on both platforms? Move to a new memory space? Tablets
  • 11. Tablets Meta Information Split the data into Key / Key Pointer workable chunks Use column major Column-major fixed form to exploit both width data CPU cache locality and GPU coalescing Variable width data
  • 12. Tablets Meta Information Use relative Key / Key Pointer pointers so variable width data can be moved Column-major fixed width data Flexible in terms of fixed vs variable width areas Variable width data
  • 13. Tablet management Data tablets streamed or mapped into GPU memory Result tablets streamed or mapped off Effectively circumvent GPU memory limitation GPU Memory Main Memory … Disk
  • 14. Sequential memory copies Entire data and results tablets must be moved Can use streaming to overlap Time Data Transfer Time Query Execution Results Transfer Time GPU Registers Global memory reads and writes GPU Global Memory Data Transfer Results Transfer Main Memory
  • 15. Mapped memory Coalesced reads efficiently transfer data as it is needed Results buffered in GPU memory, then moved in chunks Time Query Execution GPU Registers Results buffered in global memory GPU Global Memory Constant data/results transfer Main Memory
  • 16. Mapped Memory Performance 0.12 0.1 0.08 Running Time(s) Results Transfer 0.06 Kernel Execution Data Transfer 0.04 Mapped Kernel 0.02 0 Serial Mapped Cached
  • 17. Query Suite Running Times 0.16 0.14 0.12 Running Time (s) 0.1 0.08 Multi-Core Mapped GPU 0.06 Cached GPU 0.04 0.02 0 1 2 3 4 5 6 7 8 9 10 Query
  • 18. Rows Processed vs. Running Time 0.12 0.1 0.08 Running Time (s) 0.06 Multi Mapped 0.04 Cached 0.02 0 0 1 2 3 4 5 6 7 8 Data Rows (M)
  • 19. Future work Some database workloads are a good candidate for GPUs Implementing an entire database on both platforms is difficult Future hardware changes will shift the balance towards GPUs