DBSCAN is a well-known density-based clustering algorithm to discover clusters of arbitrary shape. The efforts to parallelize the algorithm on GPUs often suffer from high thread execution divergence (for example, due to asynchronous calls to range queries). In this paper, we propose a new general framework for DBSCAN on GPUs, and propose two tree-based algorithms within that framework. Both algorithms fuse neighbor search with updating clustering information, and differ in their treatment of dense regions of the data. We show that the cost of computing clusters is at most twice the cost of neighbor determination in parallel. We compare the proposed algorithms with existing GPU implementations, and demonstrate their competitiveness and excellent performance in the presence of a fast traversal structure (bounding volume hierarchy). In addition, we show that the memory usage can be reduced by processing the neighbors of an object on the fly without storing them.
翻译:DBSCAN是一种众所周知的基于密度的集群算法,用来发现任意形状的群集。在GPU上平行算法的努力中,往往会遇到高线执行差异(例如,由于对范围查询的不同步呼唤) 。 在本文件中,我们提出了DBSCAN关于GPU的新的总框架,并在此框架内提出了两种基于树的算法。这两种算法都将邻居搜索与更新群集信息结合起来,并且对数据密集区域的处理也各不相同。我们表明,计算群集的成本最多是邻居确定平行成本的两倍。我们比较了拟议的算法与现有的GPU实施成本,并展示了它们在快速穿行结构(数量分级结构)下的竞争力和出色表现。此外,我们还表明,处理苍蝇上的近邻物体而不储存,可以减少记忆的用量。