Abstract
The distance similarity search (DSS) is a fundamental operation for large-scale data analytics, as it is used to find all points that are within a search distance of a query point. Given that new scientific instruments are generating a tremendous amount of data, it is critical that these searches are highly efficient. Recently, GPU algorithms have been proposed to parallelize the DSS. While most work shows that GPU algorithms largely outperform parallel CPU algorithms, there is no single GPU algorithm that outperforms all other state-of-the-art approaches; therefore, it is not clear which algorithm should be selected based on a dataset/workload. We compare two GPU DSS algorithms: one that indexes directly on the data coordinates, and one that indexes using the distances between data points to a set of reference points. A counterintuitive finding is that the data dimensionality is not a good indicator of which algorithm should be used on a given dataset. We also find that the intrinsic dimensionality (ID) which quantifies structure in the data can be used to parameter tune the algorithms to improve performance over the baselines reported in prior work. Lastly, we find that combining the data dimensionality and ID can be used to select between the best performing GPU algorithm on a dataset.
This material is based upon work supported by the National Science Foundation under Grant No. 2042155.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
Due to excessive execution times, we sampled Higgs and Tiny5M and ensured that 100 neighbors are sufficient across all datasets, and that sampling Higgs and Tiny5M did not adversely impact ID estimation.
References
Ackermann, M.R., Märtens, M., Raupach, C., Swierkot, K., Lammersen, C., Sohler, C.: Streamkm++ a clustering algorithm for data streams. J. Exper. Algorithmics (JEA) 17, 1–2 (2012)
Chen, L., Gao, Y., Li, X., Jensen, C.S., Chen, G.: Efficient metric indexing for similarity search. In: 2015 IEEE 31st International Conference on Data Engineering, pp. 591–602. IEEE (2015)
Donnelly, B., Gowanlock, M.: A coordinate-oblivious index for high-dimensional distance similarity searches on the GPU. In: Proceedings of the 34th ACM International Conference on Supercomputing, pp. 1–12 (2020)
Fan, M., Gu, N., Qiao, H., Zhang, B.: Intrinsic dimension estimation of data by principal component analysis. arXiv preprint arXiv:1002.2050 (2010)
Fukunaga, K., Olsen, D.R.: An algorithm for finding intrinsic dimensionality of data. IEEE Trans. Comput. 100(2), 176–183 (1971)
Gallet, B., Gowanlock, M.: Heterogeneous CPU-GPU epsilon grid joins: static and dynamic work partitioning strategies. Data Sci. Eng. 6(1), 39–62 (2021)
Gallet, B., Gowanlock, M.: Leveraging GPU tensor cores for double precision Euclidean distance calculations. In: 2022 IEEE 29th International Conference on High Performance Computing, Data, and Analytics (HiPC), pp. 135–144 (2022)
Gowanlock, M.: Hybrid KNN-join: parallel nearest neighbor searches exploiting CPU and GPU architectural features. J. Parallel Distribut. Comput. 149, 119–137 (2021)
Gowanlock, M., Karsin, B.: GPU-accelerated similarity self-join for multi-dimensional data. In: Proceedings of the 15th International Workshop on Data Management on New Hardware, pp. 6:1–6:9. ACM (2019)
Hjaltason, G.R., Samet, H.: Index-driven similarity search in metric spaces (survey article). ACM Trans. Database Syst. 28(4), 517–580 (2003)
Lieberman, M.D., Sankaranarayanan, J., Samet, H.: A fast similarity join algorithm using graphics processing units. In: IEEE 24th International Conference on Data Engineering, pp. 1111–1120 (2008)
Trilling, D.E., et al.: The solar system notification alert processing system (snaps): design, architecture, and first data release (snapshot1). Astron. J. 165(3), 111 (2023)
Volkov, V.: Better performance at lower occupancy (2010). https://www.nvidia.com/content/GTC-2010/pdfs/2238_GTC2010.pdf. Accessed 1 Jan 2023
Acknowledgements
We thank Ben Karsin for his contributions to the preliminary version of this paper.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Gowanlock, M., Gallet, B., Donnelly, B. (2023). Optimization and Comparison of Coordinate- and Metric-Based Indexes on GPUs for Distance Similarity Searches. In: Mikyška, J., de Mulatier, C., Paszynski, M., Krzhizhanovskaya, V.V., Dongarra, J.J., Sloot, P.M. (eds) Computational Science – ICCS 2023. ICCS 2023. Lecture Notes in Computer Science, vol 14074. Springer, Cham. https://doi.org/10.1007/978-3-031-36021-3_37
Download citation
DOI: https://doi.org/10.1007/978-3-031-36021-3_37
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-36020-6
Online ISBN: 978-3-031-36021-3
eBook Packages: Computer ScienceComputer Science (R0)