TPU-KNN: K Nearest Neighbor Search at Peak FLOP/s
Google Research
arXiv:2206.14286 [cs.PF], (30 Jun 2022)
@misc{https://doi.org/10.48550/arxiv.2206.14286,
doi={10.48550/ARXIV.2206.14286},
url={https://arxiv.org/abs/2206.14286},
author={Chern, Felix and Hechtman, Blake and Davis, Andy and Guo, Ruiqi and Majnemer, David and Kumar, Sanjiv},
keywords={Performance (cs.PF), Machine Learning (cs.LG), FOS: Computer and information sciences, FOS: Computer and information sciences},
title={TPU-KNN: K Nearest Neighbor Search at Peak FLOP/s},
publisher={arXiv},
year={2022},
copyright={Creative Commons Attribution 4.0 International}
}
This paper presents a novel nearest neighbor search algorithm achieving TPU (Google Tensor Processing Unit) peak performance, outperforming state-of-the-art GPU algorithms with similar level of recall. The design of the proposed algorithm is motivated by an accurate accelerator performance model that takes into account both the memory and instruction bottlenecks. Our algorithm comes with an analytical guarantee of recall in expectation and does not require maintaining sophisticated index data structure or tuning, making it suitable for applications with frequent updates. Our work is available in the open-source package of Jax and Tensorflow on TPU.
July 3, 2022 by hgpu