Data management on GPUs has become increasingly relevant due to a tremendous rise in processing power and available GPU memory. Similar to main-memory systems, there is a need for performant GPU-resident index structures to speed up query processing. Unfortunately, mapping indexes efficiently to the highly parallel and hard-to-program hardware is challenging and often fails to yield the desired performance and flexibility. Instead of proposing yet another hand-tailored index, we investigate whether we can exploit an indexing mechanism that is already built into modern GPUs: The raytracing hardware accelerator provided by NVIDIA RTX GPUs. To do so, we re-phrase the database indexing problem as a raytracing problem, where we express the dataset to be indexed as objects in a 3D scene, and point/range lookups as rays across the scene. In this combination, coined RX in the following, lookups are performed as intersection tests in hardware by dedicated raytracing cores. To analyze the pros, cons, and usefulness of the raytracing pipeline for database indexing, we carefully evaluate RX along fourteen dimensions and demonstrate its competitiveness and potential in a large variety of situations.
翻译:GPU上的数据管理因其处理能力和可用内存的大幅提升而日益重要。与内存系统类似,高性能的GPU驻留索引结构对于加速查询处理至关重要。然而,将索引高效映射到高度并行且难以编程的硬件上极具挑战性,往往无法达到预期的性能和灵活性。我们没有提出另一种手工定制的索引,而是研究是否可以利用现代GPU中已有的索引机制:NVIDIA RTX GPU提供的光线追踪硬件加速器。为此,我们将数据库索引问题重新表述为光线追踪问题,将待索引的数据集表示为3D场景中的对象,将点/范围查询表示为穿过场景的光线。在这种组合中(以下简称为RX),查找操作通过专用光线追踪核心在硬件中作为相交测试执行。为了分析光线追踪管线在数据库索引中的优缺点和实用性,我们从十四个维度仔细评估了RX,并证明了其在各种场景下的竞争力和潜力。