This is an automated email from the ASF dual-hosted git repository.
paleolimbot pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/sedona-db.git
from f633cd64 feat(r/sedonadb): Implement `dplyr::select()` for
sedonadb_dataframe (#419)
add 0a2a499f feat(c/sedona-libgpuspatial): Add GPU-accelerated spatial
join library (#310)
No new revisions were added by this update.
Summary of changes:
.github/workflows/rust-gpu.yml | 224 +++
.pre-commit-config.yaml | 3 +-
Cargo.lock | 132 +-
Cargo.toml | 1 +
LICENSE | 27 +
.../Cargo.toml | 36 +-
c/sedona-libgpuspatial/build.rs | 194 +++
.../libgpuspatial}/.clang-format | 1 +
.../libgpuspatial}/.gitignore | 38 +-
.../libgpuspatial/CMakeLists.txt | 216 +++
.../libgpuspatial/CMakePresets.json | 38 +
c/sedona-libgpuspatial/libgpuspatial/README.md | 126 ++
.../libgpuspatial/cmake/RAPIDS.cmake | 88 ++
.../libgpuspatial/cmake/RAPIDS_VERSION | 1 +
.../cmake/nvcuda_compile_module.cmake | 81 ++
.../libgpuspatial/cmake/rapids_config.cmake | 29 +
.../cmake/thirdparty/get_geoarrow.cmake | 57 +
.../cmake/thirdparty/get_nanoarrow.cmake | 58 +
.../libgpuspatial/cmake/thirdparty/get_rmm.cmake | 42 +
.../libgpuspatial/include/gpuspatial/geom/box.cuh | 222 +++
.../gpuspatial/geom/geometry_collection.cuh | 230 +++
.../include/gpuspatial/geom/geometry_type.cuh | 129 ++
.../include/gpuspatial/geom/line_segment.cuh | 120 ++
.../include/gpuspatial/geom/line_string.cuh | 124 ++
.../include/gpuspatial/geom/multi_line_string.cuh | 121 ++
.../include/gpuspatial/geom/multi_point.cuh | 101 ++
.../include/gpuspatial/geom/multi_polygon.cuh | 186 +++
.../include/gpuspatial/geom/point.cuh | 246 ++++
.../include/gpuspatial/geom/polygon.cuh | 501 +++++++
.../gpuspatial/geom/ray_crossing_counter.cuh | 174 +++
.../include/gpuspatial/gpuspatial_c.h | 73 +
.../gpuspatial/index/detail/launch_parameters.h | 102 ++
.../include/gpuspatial/index/detail/rt_engine.hpp | 205 +++
.../include/gpuspatial/index/geometry_grouper.hpp | 294 ++++
.../include/gpuspatial/index/object_pool.hpp | 161 +++
.../include/gpuspatial/index/relate_engine.cuh | 155 ++
.../include/gpuspatial/index/spatial_joiner.cuh | 184 +++
.../include/gpuspatial/index/spatial_joiner.hpp} | 14 +-
.../include/gpuspatial/index/streaming_joiner.hpp | 98 ++
.../gpuspatial/loader/device_geometries.cuh | 213 +++
.../gpuspatial/loader/parallel_wkb_loader.h | 895 ++++++++++++
.../gpuspatial/relate/intersection_matrix.cuh | 204 +++
.../include/gpuspatial/relate/predicate.cuh | 62 +
.../include/gpuspatial/relate/relate.cuh | 1529 ++++++++++++++++++++
.../include/gpuspatial/utils/array_view.h | 85 ++
.../include/gpuspatial/utils/cuda_utils.h | 35 +-
.../include/gpuspatial/utils/doubledouble.h | 644 +++++++++
.../include/gpuspatial/utils/exception.h | 72 +
.../include/gpuspatial/utils/floating_point.h | 126 ++
.../include/gpuspatial/utils/gpu_timer.hpp | 57 +
.../include/gpuspatial/utils/helpers.h | 76 +
.../include/gpuspatial/utils/launcher.h} | 40 +-
.../include/gpuspatial/utils/logger.hpp | 71 +
.../include/gpuspatial/utils/mem_utils.hpp | 45 +
.../include/gpuspatial/utils/morton_code.h | 98 ++
.../include/gpuspatial/utils/pinned_vector.h | 199 +++
.../libgpuspatial/include/gpuspatial/utils/queue.h | 84 ++
.../include/gpuspatial/utils/queue_view.h | 83 ++
.../include/gpuspatial/utils/stopwatch.h} | 40 +-
.../include/gpuspatial/utils/thread_pool.h | 113 ++
.../include/gpuspatial/utils/type_traits.h | 71 +
.../libgpuspatial/src/gpuspatial_c.cc | 170 +++
.../libgpuspatial/src/relate_engine.cu | 954 ++++++++++++
.../libgpuspatial/src/rt/rt_engine.cpp | 502 +++++++
.../src/rt/shaders/box_query_backward.cu | 81 ++
.../src/rt/shaders/box_query_forward.cu | 84 ++
.../src/rt/shaders/config_shaders.cmake | 155 ++
.../src/rt/shaders/multipolygon_point_query.cu | 243 ++++
.../libgpuspatial/src/rt/shaders/point_query.cu | 86 ++
.../src/rt/shaders/polygon_point_query.cu | 223 +++
.../libgpuspatial/src/rt/shaders/ray_params.h | 87 ++
.../libgpuspatial/src/rt/shaders/shader_config.h | 46 +-
.../libgpuspatial/src/rt/shaders/shader_id.hpp | 95 ++
.../libgpuspatial/src/spatial_joiner.cu | 483 +++++++
.../libgpuspatial/test/CMakeLists.txt | 96 ++
.../libgpuspatial/test/array_stream.cc | 125 ++
.../libgpuspatial/test/array_stream.hpp} | 23 +-
.../libgpuspatial/test/array_stream_test.cc | 100 ++
.../libgpuspatial/test/c_wrapper_test.cc | 106 ++
.../test/data/arrowipc/test_points.arrows | Bin 0 -> 3321944 bytes
.../test/data/arrowipc/test_polygons.arrows | Bin 0 -> 13726056 bytes
.../test/data/arrowipc/test_polygons1.arrows | Bin 0 -> 6867016 bytes
.../test/data/arrowipc/test_polygons2.arrows | Bin 0 -> 13716312 bytes
.../libgpuspatial/test/data/cities/Makefile | 55 +
.../test/data/cities/generated_points.parquet | Bin 0 -> 33179 bytes
.../data/cities}/natural-earth_cities_geo.parquet | Bin
.../libgpuspatial/test/data/countries/Makefile | 55 +
.../test/data/countries/generated_points.parquet | Bin 0 -> 33115 bytes
.../countries}/natural-earth_countries_geo.parquet | Bin
.../libgpuspatial/test/data/gen_points.py | 111 ++
.../libgpuspatial/test/data/sample_data.py | 153 ++
.../test/geoarrow_geos/geoarrow_geos.c | 1099 ++++++++++++++
.../test/geoarrow_geos/geoarrow_geos.h | 176 +++
.../test/geoarrow_geos/geoarrow_geos.hpp | 211 +++
.../libgpuspatial/test/gpuspatial_testing.hpp | 153 ++
.../libgpuspatial/test/gpuspatial_testing_test.cc} | 11 +-
.../libgpuspatial/test/joiner_test.cu | 438 ++++++
.../libgpuspatial/test/loader_test.cu | 662 +++++++++
c/sedona-libgpuspatial/libgpuspatial/test/main.cc | 67 +
.../libgpuspatial/test/related_test.cu | 1235 ++++++++++++++++
.../libgpuspatial/test/test_common.hpp | 121 ++
c/sedona-libgpuspatial/libgpuspatial/vcpkg.json | 20 +
c/{sedona-tg => sedona-libgpuspatial}/src/error.rs | 42 +-
c/sedona-libgpuspatial/src/lib.rs | 273 ++++
c/sedona-libgpuspatial/src/libgpuspatial.rs | 509 +++++++
.../src/libgpuspatial_glue_bindgen.rs} | 9 +-
dev/release/rat_exclude_files.txt | 8 +
107 files changed, 18593 insertions(+), 148 deletions(-)
create mode 100644 .github/workflows/rust-gpu.yml
copy c/{sedona-geoarrow-c => sedona-libgpuspatial}/Cargo.toml (69%)
create mode 100644 c/sedona-libgpuspatial/build.rs
copy c/{ => sedona-libgpuspatial/libgpuspatial}/.clang-format (97%)
copy c/{ => sedona-libgpuspatial/libgpuspatial}/.gitignore (73%)
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/CMakeLists.txt
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/CMakePresets.json
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/README.md
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/cmake/RAPIDS.cmake
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/cmake/RAPIDS_VERSION
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/cmake/nvcuda_compile_module.cmake
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/cmake/rapids_config.cmake
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/cmake/thirdparty/get_geoarrow.cmake
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/cmake/thirdparty/get_nanoarrow.cmake
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/cmake/thirdparty/get_rmm.cmake
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/box.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/geometry_collection.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/geometry_type.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/line_segment.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/line_string.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/multi_line_string.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/multi_point.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/multi_polygon.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/point.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/polygon.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/geom/ray_crossing_counter.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/gpuspatial_c.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/index/detail/launch_parameters.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/index/detail/rt_engine.hpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/index/geometry_grouper.hpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/index/object_pool.hpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/index/relate_engine.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/index/spatial_joiner.cuh
copy c/{sedona-proj/build.rs =>
sedona-libgpuspatial/libgpuspatial/include/gpuspatial/index/spatial_joiner.hpp}
(72%)
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/index/streaming_joiner.hpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/loader/device_geometries.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/loader/parallel_wkb_loader.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/relate/intersection_matrix.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/relate/predicate.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/relate/relate.cuh
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/array_view.h
copy ci/scripts/windows/geos-config.rs =>
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/cuda_utils.h (60%)
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/doubledouble.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/exception.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/floating_point.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/gpu_timer.hpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/helpers.h
copy c/{sedona-tg/src/error.rs =>
sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/launcher.h} (51%)
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/logger.hpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/mem_utils.hpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/morton_code.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/pinned_vector.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/queue.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/queue_view.h
copy c/{sedona-geoarrow-c/src/lib.rs =>
sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/stopwatch.h} (61%)
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/thread_pool.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/include/gpuspatial/utils/type_traits.h
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/src/gpuspatial_c.cc
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/src/relate_engine.cu
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/src/rt/rt_engine.cpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/box_query_backward.cu
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/box_query_forward.cu
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/config_shaders.cmake
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/multipolygon_point_query.cu
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/point_query.cu
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/polygon_point_query.cu
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/ray_params.h
copy rust/sedona-adbc/src/driver.rs =>
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/shader_config.h (52%)
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/src/rt/shaders/shader_id.hpp
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/src/spatial_joiner.cu
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/CMakeLists.txt
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/array_stream.cc
copy c/{sedona-proj/src/register.rs =>
sedona-libgpuspatial/libgpuspatial/test/array_stream.hpp} (62%)
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/array_stream_test.cc
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/c_wrapper_test.cc
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/arrowipc/test_points.arrows
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/arrowipc/test_polygons.arrows
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/arrowipc/test_polygons1.arrows
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/arrowipc/test_polygons2.arrows
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/cities/Makefile
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/cities/generated_points.parquet
copy {r/sedonadb/inst/files =>
c/sedona-libgpuspatial/libgpuspatial/test/data/cities}/natural-earth_cities_geo.parquet
(100%)
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/countries/Makefile
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/countries/generated_points.parquet
copy {r/sedonadb/inst/files =>
c/sedona-libgpuspatial/libgpuspatial/test/data/countries}/natural-earth_countries_geo.parquet
(100%)
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/data/gen_points.py
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/data/sample_data.py
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/geoarrow_geos/geoarrow_geos.c
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/geoarrow_geos/geoarrow_geos.h
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/geoarrow_geos/geoarrow_geos.hpp
create mode 100644
c/sedona-libgpuspatial/libgpuspatial/test/gpuspatial_testing.hpp
copy c/{sedona-proj/build.rs =>
sedona-libgpuspatial/libgpuspatial/test/gpuspatial_testing_test.cc} (71%)
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/joiner_test.cu
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/loader_test.cu
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/main.cc
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/related_test.cu
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/test/test_common.hpp
create mode 100644 c/sedona-libgpuspatial/libgpuspatial/vcpkg.json
copy c/{sedona-tg => sedona-libgpuspatial}/src/error.rs (50%)
create mode 100644 c/sedona-libgpuspatial/src/lib.rs
create mode 100644 c/sedona-libgpuspatial/src/libgpuspatial.rs
copy c/{sedona-proj/build.rs =>
sedona-libgpuspatial/src/libgpuspatial_glue_bindgen.rs} (82%)