Skip to main content
QUICK REVIEW

[论文解读] NCAM: Near-Data Processing for Nearest Neighbor Search

Vincent T. Lee, Carlo C. Del Mundo|arXiv (Cornell University)|Jun 12, 2016
Network Packet Processing and Optimization被引用 4
一句话总结

本文提出 NCAM,一种利用 3D 堆叠内存实现原位精确 k-近邻(kNN)搜索的近数据处理架构,消除了昂贵的数据移动。通过利用存内计算(PIM)和新兴内存技术,NCAM 在服务器工作负载下实现每瓦功耗高达 160 倍的吞吐量,与 NVIDIA Titan X GPU 相比延迟降低三个数量级。

ABSTRACT

Deep down in many applications like natural language processing (NLP), vision, and robotics is a form of the k-nearest neighbor search algorithm (kNN). The kNN algorithm is primarily bottlenecked by data movement, limiting throughput and incurring latency in these applications. While there do exist well bounded kNN approximations that improve the performance of kNN, these algorithms trade-off accuracy and quickly degrade into linear search for high dimensionality. To address data movement, we designed the nearest neighbor content addressable memory (NCAM) which employs processing in-memory (PIM) to eliminate costly data transfers, and provides exact nearest neighbor search. NCAMs benefit from the modularity offered by 3D die-stacking technology which allows us to side-step the issues of direct integration with DRAM dies. The NCAM benefits from the higher density and speeds of emerging memory technologies and interfaces. We characterize a state-of-the-art software kNN implementation and expose the shortcomings of approximate kNN search. We present a full NCAM design and estimate its performance using post-placement and route estimates, and we show that its power characteristics are compatible with emerging memory substrates. We then evaluate energy efficiency and latency compared to modern multi-core CPUs and GPGPU platforms using parameters typical of mobile and server workloads. Our simulation results show that the NCAM can achieve up to 160x throughput per watt and three orders of magnitude latency improvement over a NVIDIA Titan X GPU for server workloads, and ~2413x throughput per watt and ~94.5x latency improvements over a multi-core Intel E5-2620 CPU. Finally, we show that the NCAM is not limited to just kNN and can be generalized to act as a content addressable memory (CAM) or ternary-CAM (TCAM).

研究动机与目标

  • 解决现代应用(如 NLP、视觉和机器人技术)中因过度数据移动导致的 kNN 搜索性能瓶颈。
  • 克服近似 kNN 方法的局限性,这些方法在高维空间中退化为线性搜索并牺牲准确性。
  • 设计一种可扩展、高能效的精确最近邻搜索解决方案,利用 3D 芯片堆叠和存内计算(PIM)技术。
  • 证明 NCAM 在 kNN 工作负载中,相较于最先进的 CPU 和 GPU,在能效和延迟方面均表现更优。
  • 将 NCAM 扩展至 kNN 之外,使其可作为内容可寻址内存(CAM)或三态 CAM(TCAM),以支持更广泛的存内计算应用。

提出的方法

  • 设计一种 3D 堆叠的 NCAM 架构,通过芯片堆叠将处理逻辑与 DRAM 集成,最大限度减少数据移动。
  • 实现存内计算,直接在内存中执行距离计算,避免片外数据传输。
  • 利用新兴内存技术与接口,实现更高密度和带宽,支持高效的 kNN 计算。
  • 采用布局后估计与布线估计技术,对 NCAM 的物理设计与性能进行建模,确保与真实基板的兼容性。
  • 通过模块化设计将 NCAM 与现有内存子系统集成,避免直接与 DRAM 芯片集成。
  • 扩展 NCAM 功能,支持通用 CAM 和 TCAM 操作,提升其在基于内容的数据检索中的应用潜力。

实验结果

研究问题

  • RQ1近数据处理架构能否在显著降低延迟和提升能效方面,实现比现代 CPU 和 GPU 更优的精确 kNN 搜索?
  • RQ2与最先进的软件 kNN 实现相比,NCAM 在典型移动和服务器工作负载下的性能扩展性如何?
  • RQ3近似 kNN 方法在高维空间中退化程度如何?NCAM 是否能消除这一权衡?
  • RQ4NCAM 设计在功耗和物理集成方面是否与新兴内存基板兼容?
  • RQ5NCAM 是否可泛化为通用内容可寻址内存(CAM)或三态 CAM(TCAM)?

主要发现

  • 在服务器工作负载下,NCAM 每瓦功耗的吞吐量最高可达 NVIDIA Titan X GPU 的 160 倍,展现出卓越的能效优势。
  • 在服务器工作负载下,NCAM 相较于 NVIDIA Titan X GPU 延迟降低三个数量级(1000 倍)。
  • 与 Intel E5-2620 多核 CPU 相比,NCAM 每瓦功耗的吞吐量高出约 2413 倍,延迟降低 94.5 倍。
  • 性能提升主要归因于通过存内处理消除了数据移动,实现了无精度损失的精确 kNN 搜索。
  • NCAM 的设计与新兴内存基板兼容,并支持通过 3D 芯片堆叠技术实现模块化集成。
  • NCAM 可泛化为 CAM 或 TCAM,从而将应用范围从 kNN 扩展至基于内容的内存访问。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。