Graph Reordering for Cache-Efficient Near Neighbor Search

被引:0
|
作者
Coleman, Benjamin [1 ,2 ]
Segarra, Santiago [1 ]
Smola, Alex [2 ]
Shrivastava, Anshumali [3 ]
机构
[1] Rice Univ, ECE Dept, Houston, TX 77005 USA
[2] Amazon Web Serv, Seattle, WA USA
[3] Rice Univ, Dept Comp Sci, Houston, TX 77005 USA
基金
美国国家科学基金会;
关键词
D O I
暂无
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Graph search is one of the most successful algorithmic trends in near neighbor search. Several of the most popular and empirically successful algorithms are, at their core, a greedy walk along a pruned near neighbor graph. However, graph traversal applications often suffer from poor memory access patterns, and near neighbor search is no exception to this rule. Our measurements show that popular search indices such as the hierarchical navigable small-world graph (HNSW) can have poor cache miss performance. To address this issue, we formulate the graph traversal problem as a cache hit maximization task and propose multiple graph reordering as a solution. Graph reordering is a memory layout optimization that groups commonly-accessed nodes together in memory. We mathematically formalize the connection between the graph layout and the cache complexity of search. We present exhaustive experiments applying several reordering algorithms to a leading graph-based near neighbor method based on the HNSW index. We find that reordering improves the query time by up to 40%, we present analysis and improvements for existing graph layout methods, and we demonstrate that the time needed to reorder the graph is negligible compared to the time required to construct the index.
引用
收藏
页数:13
相关论文
共 50 条
  • [31] Joint Optimization of Cache Management and Graph Reordering for GCN Acceleration
    Lee, Kyeong-Jun
    Kim, ByungJun
    Mun, Han-Gyeol
    Moon, Seunghyun
    Sim, Jae-Yoon
    2023 IEEE/ACM INTERNATIONAL SYMPOSIUM ON LOW POWER ELECTRONICS AND DESIGN, ISLPED, 2023,
  • [32] Extreme filters - Cache-efficient implementation of long IIR and FIR filters
    Ilmonen, T
    Lokki, T
    IEEE SIGNAL PROCESSING LETTERS, 2006, 13 (07) : 401 - 404
  • [33] Fully-Asynchronous Cache-Efficient Simulation of Detailed Neural Networks
    Magalhaes, Bruno R. C.
    Sterling, Thomas
    Hines, Michael
    Schurmann, Felix
    COMPUTATIONAL SCIENCE - ICCS 2019, PT III, 2019, 11538 : 421 - 434
  • [34] Turtle: Identifying frequent k-mers with cache-efficient algorithms
    Roy, Rajat Shuvro
    Bhattacharya, Debashish
    Schliep, Alexander
    BIOINFORMATICS, 2014, 30 (14) : 1950 - 1957
  • [35] Parallel and Cache-Efficient In-Place Matrix Storage Format Conversion
    Gustavson, Fred
    Karlsson, Lars
    Kagstrom, Bo
    ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2012, 38 (03):
  • [36] Cache-Efficient FM-Index Variants for Mapping of DNA Sequences
    Sitarcik, Jozef
    Lucka, Maria
    PRACTICAL APPLICATIONS OF COMPUTATIONAL BIOLOGY AND BIOINFORMATICS, 2020, 1005 : 45 - 52
  • [37] A Software Concept for Cache-Efficient Simulation on Dynamically Adaptive Structured Triangular Grids
    Meister, Oliver
    Rahnema, Kaveh
    Bader, Michael
    APPLICATIONS, TOOLS AND TECHNIQUES ON THE ROAD TO EXASCALE COMPUTING, 2012, 22 : 251 - 260
  • [38] NIC-Assisted Cache-Efficient Receive Stack for Message Passing over Ethernet
    Goglin, Brice
    EURO-PAR 2009: PARALLEL PROCESSING, PROCEEDINGS, 2009, 5704 : 1065 - 1077
  • [39] Compact Projection: Simple and Efficient Near Neighbor Search with Practical Memory Requirements
    Min, Kerui
    Yang, Linjun
    Wright, John
    Wu, Lei
    Hua, Xian-Sheng
    Ma, Yi
    2010 IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR), 2010, : 3477 - 3484
  • [40] NIC-assisted cache-efficient receive stack for message passing over Ethernet
    Goglin, Brice
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2011, 23 (02): : 199 - 210