@inproceedings{c377776775d64656956d256c23755508,
title = "Clustering Throughput Optimization on the GPU",
abstract = "Large datasets in astronomy and geoscience often require clustering and visualizations of phenomena at different densities and scales in order to generate scientific insight. We examine the problem of maximizing clustering throughput for concurrent dataset clustering in spatial dimensions. We introduce a novel hybrid approach that uses GPUs in conjunction with multicore CPUs for algorithmic throughput optimizations. The key idea is to exploit the fast memory on the GPU for index searches and optimize I/O transfers in such a way that the low-bandwidth host-GPU bottleneck does not have a significant negative performance impact. To achieve this, we derive two distinct GPU kernels that exploit grid-based indexing schemes to improve clustering performance. To obviate limited GPU memory and enable large dataset clustering, our method is complemented by an efficient batching scheme for transfers between the host and GPU accelerator. This scheme is robust with respect to both sparse and dense data distributions and intelligently avoids buffer overflows that would otherwise degrade performance, all while minimizing the number of data transfers between the host and GPU. We evaluate our approaches on ionospheric total electron content datasets as well as intermediate-redshift galaxies from the Sloan Digital Sky Survey. Our hybrid approach yields a speedup of up to 50x over the sequential implementation on one of the experimental scenarios, which is respectable for I/O intensive clustering.",
keywords = "Computer-Aided Discovery., DBSCAN, GPGPU, Parallel Clustering, Query Optimization",
author = "Michael Gowanlock and Rude, {Cody M.} and Blair, {David M.} and Li, {Justin D.} and Victor Pankratius",
note = "Publisher Copyright: {\textcopyright} 2017 IEEE.; 31st IEEE International Parallel and Distributed Processing Symposium, IPDPS 2017 ; Conference date: 29-05-2017 Through 02-06-2017",
year = "2017",
month = jun,
day = "30",
doi = "10.1109/IPDPS.2017.17",
language = "English (US)",
series = "Proceedings - 2017 IEEE 31st International Parallel and Distributed Processing Symposium, IPDPS 2017",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "832--841",
booktitle = "Proceedings - 2017 IEEE 31st International Parallel and Distributed Processing Symposium, IPDPS 2017",
}