摘要 我们提出了 CXL-ANNS,这是一种软硬件协作方法,可实现高度可扩展的近似最近邻搜索 (ANNS) 服务。为此,我们首先通过计算快速链路 (CXL) 将 DRAM 从主机中分离出来,并将所有必要的数据集放入其内存池中。虽然这个 CXL 内存池可以使 ANNS 能够在不损失准确性的情况下处理十亿点图,但我们观察到由于 CXL 的远内存类特性,搜索性能会显著下降。为了解决这个问题,CXL-ANNS 考虑节点级关系并将预计访问最频繁的邻居缓存在本地内存中。对于未缓存的节点,CXL-ANNS 通过了解 ANNS 的图遍历行为预取一组最有可能很快访问的节点。CXL-ANNS 还了解 CXL 互连网络的架构,并让其中的不同硬件组件并行协作搜索最近邻居。为了进一步提高性能,它放宽了邻居搜索任务的执行依赖性,并通过充分利用 CXL 网络中的所有硬件来最大化搜索并行度。我们的实证评估结果表明,与我们测试的最先进的 ANNS 平台相比,CXL-ANNS 的 QPS 提高了 111.1 倍,查询延迟降低了 93.3%。在延迟和吞吐量方面,CXL-ANNS 也分别比仅具有 DRAM(具有无限存储容量)的 Oracle ANNS 系统高出 68.0% 和 3.8 倍。