Overview of libgpuspatial
mainlibgpuspatial is a GPU-accelerated geospatial processing library designed for joining large geospatial datasets. It uses a 'Build and Stream' model:
- Build: A smaller dataset that fits into device memory and is used to construct a spatial index.
- Stream: A potentially continuous dataset that is streamed against the index to find matches.
Inputs are provided via two ArrowArray objects containing geometries in WKB (Well-Known Binary) format. Multiple geometry types can coexist within a single array.
Supported Geometries:
- Point
- LineString
- Polygon
- MultiPoint
- MultiLineString
- MultiPolygon
Supported Spatial Join Types (DE-9IM relations):
- Equals
- Disjoint
- Touches
- Contains
- Covers
- Intersects
- Within
- CoveredBy