Global Grid Indexing Vectorization for Faster Geospatial Functions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing geospatial libraries require significant processing time and capacity for functions that operate on geospatial cells, necessitating improvements in vectorization to enhance computational efficiency.
Innovation Solution
The implementation of vectorization techniques in geospatial libraries, such as decomposing operations into validation and evaluation steps, using bitwise operations, and custom kernels, to generate vectorized code that processes multiple operands in parallel, optimizing geospatial functions for faster execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional geospatial functions are implemented, then correctness and reliability are maintained, but processing time and computational capacity requirements are excessive
Solution Approach 1:
The patent segments geospatial operations into distinct validation and evaluation phases. Validation checks whether cell indices are within valid ranges and have appropriate resolutions, while evaluation performs the actual geospatial computation. This segmentation enables each phase to be optimized independently, with validation using fast bitwise operations and evaluation using vectorized computations, thereby reducing overall processing time while maintaining correctness.
Solution Approach 2:
The patent changes the representation of cell indices from scalar values to vectorized arrays, allowing simultaneous processing of multiple cell indices. By transforming operations from scalar to vector level, the system processes large datasets in parallel, dramatically reducing processing time and increasing productivity without sacrificing computational accuracy.
2Productivity
If scalar operations are used for geospatial functions, then code simplicity is maintained, but computational efficiency and vectorization capability are limited
Solution Approach 1:
The patent performs validation actions preliminarily before evaluation. By pre-checking that cell indices are within valid ranges and have appropriate resolutions using bitwise operations, the system avoids performing expensive evaluation computations on invalid data. This preliminary validation action filters out erroneous operations early, improving overall computational efficiency while keeping the code structure organized and manageable.
Solution Approach 2:
The patent introduces validation as an intermediary layer between data input and evaluation operations. This validation layer acts as a mediator that ensures data quality before computations proceed, preventing errors from propagating through the system. The intermediary validation step uses simple bitwise operations to check data validity, protecting the more complex evaluation phase from receiving invalid inputs.
3Speed
If iterative operations are used to process geospatial data, then processing completeness is ensured, but execution speed is reduced due to multiple iterations
Solution Approach 1:
The patent merges multiple scalar operations into single vectorized operations that process multiple data elements simultaneously. Instead of iterating through cell indices one by one, the system uses vectorized functions that operate on entire arrays at once, combining what would be multiple sequential iterations into a single parallel operation. This dramatically increases execution speed and processing throughput while maintaining complete data processing.
Data Source
AI summary
A data processing service generates for iteratively applying a geospatial function to geospatial data. The generated code includes at least a first iterative loop and a second iterative loop. The data processing service compiles the generated code to generate compiled code that vectorized at least the second iterative loop. The data processing service receives a request from a client device to perform one or more data processing operations including applying the geospatial function to a data table of geospatial cell indices. The data processing service compiles the request into one or more tasks including at least a vectorized operation based on the compiled code and executes the one or more tasks by at least invoking the vectorized operation on the set of worker nodes.


