5 CONCLUSIONS AND FUTURE
PLANS
In this paper, we presented new algorithms for k-NN
query processing in GPUs. These algorithms maxi-
mize the utilization of device memory, handling more
reference points in the computation. Through an ex-
perimental evaluation on synthetic and real datasets,
we concluded that these algorithms, not only work
faster than existing methods for small groups of query
points, but also scale-up to much larger reference
datasets. Moreover we validated that T-DS algorithm
is faster than T-BS, because of the extra refinement
step minimizing the sorting overhead.
Future work plans include:
• Comparison of our algorithms to other algorithms
in the literature, regarding execution time and
scaling-up within the available device memory,
• Combination of GPU-based algorithms to data
stored in SSDs, using smart transferring of
data between the SSD, RAM and device mem-
ory (Roumelis et al., 2016) (without indexes),
(Roumelis et al., 2019) (using indexes),
• Testing the effectiveness of our algorithms on data
from other application domains, e.g. financial
data (Cheng et al., 2019),
• Implementation of queries (like K-closest pairs),
based techniques utilized in this paper.
ACKNOWLEDGEMENTS
This research has been co-financed by the European
Regional Development Fund of the European Union
and Greek national funds through the Operational
Program Competitiveness, Entrepreneurship and In-
novation, under the call RESEARCH – CREATE –
INNOVATE (project code:T1EDK-02161).
REFERENCES
Arefin, A. S., Riveros, C., Berretta, R., and Moscato, P.
(2012). Gpu-fs-knn: A software tool for fast and scal-
able knn computation using gpus. PloS ONE, 7(8):1–
13.
Barlas, G. (2014). Multicore and GPU Programming: An
Integrated Approach. Morgan Kaufmann, 1 edition.
Barrientos, R. J., G
´
omez, J. I., Tenllado, C., Prieto-Mat
´
ıas,
M., and Mar
´
ın, M. (2011). knn query processing in
metric spaces using gpus. In Euro-Par Conf., pages
380–392.
Barrientos, R. J., Millaguir, F., S
´
anchez, J. L., and Arias,
E. (2017). Gpu-based exhaustive algorithms process-
ing knn queries. The Journal of Supercomputing,
73(10):4611–4634.
Chen, H., Yang, B., Wang, G., Liu, J., Xu, X., Wang, S.,
and Liu, D. (2011). A novel bankruptcy prediction
model based on an adaptive fuzzy k-nearest neighbor
method. Knowl. Based Syst., 24(8):1348–1359.
Cheng, C., Chan, C., and Sheu, Y. (2019). A novel purity-
based k nearest neighbors imputation method and its
application in financial distress prediction. Eng. Appl.
Artif. Intell., 81:283–299.
Eldawy, A. and Mokbel, M. F. (2015). Spatialhadoop: A
mapreduce framework for spatial data. In ICDE Conf.,
pages 1352–1363.
Garcia, V., Debreuve, E., Nielsen, F., and Barlaud, M.
(2010). K-nearest neighbor search: Fast gpu-based
implementations and application to high-dimensional
feature matching. In ICIP Conf., pages 3757–3760.
Garcia, V.,
´
Eric Debreuve, and Barlaud, M. (2018). Fast k
nearest neighbor search using gpu.
Guti
´
errez, P. D., Lastra, M., Bacardit, J., Ben
´
ıtez, J. M.,
and Herrera, F. (2016). Gpu-sme-knn: Scalable and
memory efficient knn and lazy learning using gpus.
Inf. Sci., 373:165–182.
Kato, K. and Hosino, T. (2012). Multi-gpu algorithm for
k-nearest neighbor problem. Concurrency and Com-
putation: Practice and Experience, 24(1):45–53.
Komarov, I., Dashti, A., and D’Souza, R. M. (2014). Fast
k-nng construction with gpu-based quick multi-select.
PloS ONE, 9(5):1–9.
Kuang, Q. and Zhao, L. (2009). A practical gpu based knn
algorithm. In SCSCT Conf., pages 151–155.
Li, S. and Amenta, N. (2015). Brute-force k-nearest neigh-
bors search on the GPU. In SISAP Conf., pages 259–
270.
Liang, S., Wang, C., Liu, Y., and Jian, L. (2009). Cuknn:
A parallel implementation of k-nearest neighbor on
cuda-enabled gpu. In YC-ICT Conf., pages 415–418.
Masek, J., Burget, R., Karasek, J., Uher, V., and Dutta,
M. K. (2015). Multi-gpu implementation of k-nearest
neighbor algorithm. In TSP Conf., pages 764–767.
NVIDIA (2020). Nvidia cuda runtime api.
Roumelis, G., Corral, A., Vassilakopoulos, M., and
Manolopoulos, Y. (2016). New plane-sweep al-
gorithms for distance-based join queries in spatial
databases. GeoInformatica, 20(4):571–628.
Roumelis, G., Velentzas, P., Vassilakopoulos, M., Corral,
A., Fevgas, A., and Manolopoulos, Y. (2019). Parallel
processing of spatial batch-queries using xbr
+
-trees in
solid-state drives. Cluster Computing.
Singh, A., Deep, K., and Grover, P. (2017). A novel ap-
proach to accelerate calibration process of a k-nearest
neighbours classifier using GPU. J. Parallel Distrib.
Comput., 104:114–129.
Sismanis, N., Pitsianis, N., and Sun, X. (2012). Parallel
search of k-nearest neighbors with synchronous oper-
ations. In HPEC Conf., pages 1–6.
In-memory k Nearest Neighbor GPU-based Query Processing
317