A Hybrid Approach for Optimizing Parallel Clustering Throughput using the GPU - Gowanlock, Michael; Rude, Cody M.; Blair, David M.; Li, Justin D.; Pankratius, Victor (IEEE transactions on parallel and distributed systems, 2019)
We introduce Hybrid-Dbscan , that uses the GPU and CPUs for optimizing clustering throughput. The main idea is to exploit the memory bandwidth on the GPU for fast index searches, and optimize data transfers between host and GPU, to alleviate the potential negative performance impact of the PCIe interconnect. We propose and compare two GPU kernels that exploit grid-based indexing schemes to improve neighborhood search performance. We employ a batching scheme for host-GPU data transfers to obviate limited GPU memory, and exploit concurrent operations on the host and GPU. This scheme is robust with respect to both sparse and dense data distributions and avoids buffer overflows that would otherwise degrade performance. We evaluate our approaches on ionospheric total electron content datasets as well as intermediate-redshift galaxies from the Sloan Digital Sky Survey. Hybrid-Dbscan outperforms the reference implementation across a range of application scenarios, including small workloads, which typically are the domain of CPU-only algorithms. We advance an empirical response time performance model of Hybrid-Dbscan by utilizing the underlying properties of the datasets. With only a single execution of Hybrid-Dbscan on a dataset, we are able to accurately predict the response time for a range of ε ε <inline-graphic xlink:href="gowanlock-ieq1-2869777.gif"/> ε <inline-graphic xlink:href="gowanlock-ieq1-2869777.gif"/> search distances.