GPU-Accelerated Geospatial Query Rendering via Vertex Buffers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Spatial queries involving large geospatial data sets on map applications are computationally expensive, leading to slow processing and unsatisfactory user experiences due to the limitations of CPU-based solutions in parallelization, trigonometric calculations, conditional checks, and intersection computations.

Innovation Solution

The method leverages the GPU for spatial queries by projecting feature data and query boundaries into a shared coordinate system, using vertex and fragment shaders for rendering, and retrieving pixel values for processing, thereby eliminating costly CPU-based operations and utilizing parallel processing for faster results.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If spatial queries are processed using CPU-based solutions, then the processing can be completed with existing computational resources, but the processing time becomes excessively long and computational resources are overutilized

Engineering Contradiction:
Improvequery processing timeVSAvoidcomputational efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent replaces the traditional CPU-based mechanical computation system with a GPU-based parallel processing system. The CPU prepares vertex buffers and projection parameters, then delegates the computationally intensive spatial query processing to the GPU, which performs parallel trigonometric calculations and geometric operations much faster than sequential CPU processing.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent segments the spatial processing task into distinct components: the CPU handles data preparation and buffer management, while the GPU handles parallel vertex processing and geometric computations. This segmentation allows each processor to optimize for its specific strength, reducing overall processing time.

Inventive Principle:
Principle #1Segmentation

2Reliability

If spatial queries involve large geospatial data sets, then comprehensive query results can be obtained, but the computational cost increases significantly

Engineering Contradiction:
Improvequery result accuracyVSAvoidcomputational resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent substitutes the energy-intensive CPU computation system with a more efficient GPU parallel processing system for handling large geospatial datasets. The GPU's architecture is better suited for the parallel operations required by spatial queries, reducing overall computational resource consumption while maintaining result accuracy.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent performs preliminary actions by pre-projecting geospatial features into vertex buffers on the CPU before transferring them to the GPU. This preparation work reduces the computational burden during actual query execution, as the GPU receives pre-processed data ready for parallel operations.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If traditional CPU-based spatial query methods are used, then implementation is straightforward with existing APIs, but processing speed is insufficient for responsive user experience

Engineering Contradiction:
Improveimplementation simplicityVSAvoidquery execution speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent replaces the slow but simple CPU-based processing system with a faster GPU-based system. While this requires additional setup for vertex buffers and shader programs, the patent provides a structured approach that balances the increased implementation complexity with the substantial gains in query execution speed.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent introduces vertex buffers as an intermediary data structure that bridges the CPU and GPU systems. These buffers serve as a communication interface, allowing the CPU to prepare spatial data in a format that the GPU can efficiently process, thus facilitating the transition between the two processing systems.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11670019B2GPU accelerated geospatial queries and geometric operations
Publication Date: 2023.06.06 JEPPESEN FOREFLIGHT INC
  • US11670019B2 patent drawing
  • US11670019B2 patent drawing
  • US11670019B2 patent drawing

AI summary

A method including receiving a spatial query on spatial data. The spatial query has a spatial query extent including a sub-portion of the spatial data. A projection type is selected for the spatial query. A framebuffer is created for the selected projection type. Vertex buffers are established to hold a geometry of the selected projection type. The vertex buffers are passed from a CPU to a GPU. A spatial geometry of the spatial query extent is rendered into the framebuffer by projecting feature vertex data for features that fall at least partly within the spatial query extent into the vertex buffers. Rendering generates rendered framebuffer pixel values. Pixel values of the rendered framebuffer are retrieved as bytes on the CPU. A spatial query result is processed that includes or uses the pixel values.