CLUST3R is a GPU-accelerated spatial clustering library for 3D Gaussian Splatting scenes. It implements k-means|| — parallel k-means++ — with a spatial hash grid for O(1) neighbor queries and an adaptive rebalancing engine that merges and splits clusters post-convergence.
Designed as a preprocessing stage for the GEODE pipeline, CLUST3R partitions large 3DGS scenes into spatially coherent clusters for downstream classification and analysis. All stages run entirely on GPU — no CPU-GPU transfers during clustering. Developed at Concordia University as part of a High-Performance C++/CUDA Reading Course.
clust3r::ClusterConfig config; config.target_cluster_size = 2000; config.max_iterations = 50; config.convergence_tolerance = 1e-5f; clust3r::Clusterer clusterer(config); auto result = clusterer.cluster(positions, count); // result.assignments — cluster ID per primitive // result.clusters — vector of Cluster structs // result.elapsed_ms — total runtime