Multi-GPU Query Acceleration for Large Dataset Memory Limits
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database query acceleration using GPUs is limited by the smaller memory capacity of GPUs compared to main memory, leading to decreased performance for larger datasets.
Innovation Solution
Utilize multiple interconnected GPUs with high-bandwidth links to distribute and process data across them, employing primitives for data movement and parallel processing to optimize database queries.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is loaded into GPU memory for parallel processing, then query processing speed is improved, but memory capacity limitation reduces effectiveness for larger datasets
Solution Approach 1:
The patent divides the large dataset into multiple partitions that can be distributed across multiple GPUs. Each GPU processes a subset of the data in parallel, overcoming the memory capacity limitation of individual GPUs while maintaining high processing speed through parallel computation.
Solution Approach 2:
The patent combines multiple GPUs into a unified processing system where data can be distributed and processed across all available GPU memory resources. This merging of computing resources effectively increases the total memory capacity available for processing large datasets while maintaining parallel processing benefits.
2Quantity of substance
If computations are split with CPU to handle larger datasets, then memory capacity is sufficient, but processing speed decreases
Solution Approach 1:
The patent segments the computational workload and distributes it across multiple GPUs rather than using a single CPU or GPU. This segmentation allows the system to handle larger datasets by dividing them into manageable chunks that fit within individual GPU memories while maintaining high processing speed through parallel execution on multiple GPUs.
Solution Approach 2:
The patent replaces CPU-based processing with GPU-based parallel processing for handling large datasets. By substituting the traditional CPU computation model with GPU parallel architecture, the system achieves both sufficient memory capacity through multiple GPUs and high processing speed through parallel computation, avoiding the speed penalty of CPU processing.
3Device complexity
If single GPU is used for query acceleration, then device complexity is low, but productivity decreases for larger datasets
Solution Approach 1:
The patent merges multiple GPUs into a coordinated processing system that functions as a unified computational resource. This combination increases productivity for large datasets by providing sufficient memory capacity and parallel processing power while keeping the system architecture relatively simple through standardized data distribution and collection mechanisms.
Solution Approach 2:
The patent creates a multi-GPU processing system that maintains universal applicability across different query types and dataset sizes. The system can dynamically adapt to various workloads by distributing data across multiple GPUs, providing both high productivity for large datasets and acceptable performance for smaller datasets without requiring completely different system configurations.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Described are examples for using multiple graphics processing units (GPUs) to accelerate a database query. Data for a database query can be loaded from the database into memories of multiple GPUs for parallel processing by the multiple GPUs. At least a portion of the data loaded into a memory for one of the multiple GPUs can be moved to a memory for a different one of the multiple GPUs. A compute process can be executed, via parallel processing on the multiple GPUs, for the query to perform data processing related to the database query.