AI

SSDを使うベクトル検索、単一サーバーで48億件を実証

この記事のポイント

  1. 実現したこと

    キオクシアは、単一サーバーで48億ベクトルを対象とする高次元検索を実証した。

  2. 実現の仕組み

    近似最近傍探索ソフトウェアKIOXIA AiSAQがSSDから直接検索し、DRAM使用量を抑える。

  3. 得られた結果

    キオクシアの測定では、1024次元ベクトルの索引構築をGPUで最大20倍に高速化した。

  4. 従来との違い

    構築工程全体の所要時間は、CPUを使う比較条件の31日からGPUを使う条件の4日に短縮された。

SSDを備えたサーバーからベクトルを表すタイルがクラスタ状の検索領域へ流れ、サーバー内部には索引構築用のGPUが描かれた編集イラスト。
AI生成画像

SSDを検索基盤に使い、単一サーバーで48億ベクトルを扱う高次元検索が実証された。キオクシアの測定では、検索用の索引を作る処理にもGPUを導入し、CPUとの比較で構築工程全体の所要時間を31日から4日に短縮した。

SSDから直接検索してDRAM使用量を抑える

キオクシアの近似最近傍探索ソフトウェアKIOXIA AiSAQは、SSDから直接ベクトル検索を行い、DRAM使用量を抑える。近似最近傍探索は、検索対象に近いベクトルを近似的に探す処理で、このソフトウェアは大規模な検索にGlobal Indexというアルゴリズムを使う。

Global Indexは、ハイブリッドクラスタリングとグラフ探索を組み合わせる。SSDを使う検索と、この探索アルゴリズムが、大量のベクトルを扱う検索基盤の構成要素となっている。

単一サーバーで48億ベクトルを検索

キオクシアは、この検索基盤で単一サーバーによる48億ベクトルの高次元検索を実証した。ベクトルデータベースMilvusの環境では、単一の検索サーバーで十億規模の検索を実現したとしている。

4基のGPUで索引構築を28.4日から1.4日に

検索に使う索引の構築には、GPUによる高速化を取り入れた。キオクシアはNVIDIAと協力し、GPU向けライブラリーNVIDIA cuVSを使ってKIOXIA AiSAQの索引構築を高速化した。

1024次元のベクトルを使った測定では、索引構築時間がCPU使用時の28.4日から、NVIDIA Hopper GPUを4基使った場合の1.4日へ短縮された。キオクシアは、この比較で最大20倍の高速化を示したとしている。

構築工程全体では31日から4日に短縮

索引構築単体の高速化に対し、構築工程全体の測定では所要時間が31日から4日に短縮された。キオクシアが示した工程全体の高速化は最大7.8倍で、索引構築単体の最大20倍とは測定範囲が異なる。

このベンチマークで処理したベクトルデータは、合計19.66 TBだった。構築時間の比較は、このデータ規模で得られた測定結果である。