* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download DATA-INTENSIVE COMPUTING IN SQL WITH GPUS 10/7/2010
Entity–attribute–value model wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Concurrency control wikipedia , lookup
Oracle Database wikipedia , lookup
Tandem Computers wikipedia , lookup
Microsoft Access wikipedia , lookup
Ingres (database) wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Database model wikipedia , lookup
Team Foundation Server wikipedia , lookup
Relational model wikipedia , lookup
Clusterpoint wikipedia , lookup
DATA-INTENSIVE COMPUTING IN SQL WITH GPUS 10/7/2010 Tamás Budavári, Richard Wilton / Johns Hopkins U. Basic Concept Tamás Budavári 2 Database server SQL code SQL-callable procedure Out-of-process server IPC CUDA functionality Implement computational functionality in a separate process from the database server process Access through inter-process communication (IPC) 10/7/2010 Why Do It This Way? 3 Tamás Budavári Database server SQL code SQL-callable procedure Out-of-process server IPC CUDA functionality Avoid DBMS permissions, threading restrictions, etc. Encapsulate native-code functionality (CUDA API calls) Exploit lower-level APIs to facilitate data movement between DBMS and CUDA implementation 10/7/2010 SQL Callable Procedure 4 Tamás Budavári Database server SQL code Out-of-process server IPC SQL-callable procedure CUDA functionality SQLCLR procedure in C# Fills a shared-memory buffer with a SQL result set Signals the out-of-process server and waits for a response Returns data from the IPC buffer to the database server 10/7/2010 Out-Of-Process Server 5 Tamás Budavári Database server SQL code SQL-callable procedure Out-of-process server IPC CUDA functionality Dynamically loads the CUDA implementation Invokes a method with a reference to the IPC buffer Signals the SQL-callable procedure that data is ready 10/7/2010 Case Study 1: Spatial Statistics 6 Tamás Budavári Correlation functions Histogram 8 bins State of the art Dual-tree of distances traversal High resolution bins? Just like brute force 10/7/2010 Case Study 1: Spatial Statistics 7 Tamás Budavári Correlation functions Histogram State of the art Dual-tree of distances 800 × 800 bins 8 bins traversal High resolution bins? Just like brute force 10/7/2010 User-Defined Functions 8 Tamás Budavári Pair counts computed on GPU Returns 2D histogram as a table (i, j, cts) Calculate the correlation fn in SQL 10/7/2010 User-Defined Functions 9 Tamás Budavári Pair counts computed on GPU Returns 2D histogram as a table (i, j, cts) Calculate the correlation fn in SQL 10/7/2010 Async SQL Interface 10 Tamás Budavári 10/7/2010 590 Trillion Galaxy Pairs 11 800 800××800 800bins bins Tamás Budavári Summary 12 Tamás Budavári New Moore’s law in GPUs – let’s use them! Novel extension to SQL Server Provides direct access to multiple GPUs Inter- and intra-task GPU parallelism Also enables distributed parallel queries, MPI… Scientific applications Corr fn, xmatch, photo-z and gene sequencing… 10/7/2010 13 Tamás Budavári 10/7/2010