openlake-project/openlake

OpenLake is a high performance storage engine for efficient LLM inference and GPU Training

What it solves

OpenLake は、ストレージから GPU メモリへのデータ転送に要する時間を削減することで、AI インフラのボトルネックを排除することを目的としています。ホスト CPU、ページキャッシュ、複数のユーザースペースコピーによるオーバーヘッドを解消し、トレーニングや推論クラスターの速度低下を防ぎます。

How it works

OpenLake は Rust と io_uring で構築された分散オブジェクトストアで、スレッド‑パー‑コアアーキテクチャを採用しています。以下の高性能技術を組み合わせています:

  • Zero-copy data movement:GPUDirect Storage と RDMA を使用し、ネットワークインターフェースカード (NIC) から直接 GPU VRAM へデータを転送し、ホストメモリとカーネルをバイパスします。
  • Bypassing the kernel:HTTP フロントエンドとストレージエンジンが同一スレッドで動作し、リクエストがコア境界を越えることを防ぎます。
  • Efficient storage:SIMD Reed Solomon イレージュコーディングを利用し、ストレージコストを削減しつつ高スループットを維持します。
  • Congestion control:PacedRDMA を実装し、クレジットベースのシステムでリクエストバーストを処理し、テールレイテンシを最小化します。

Who it’s for

AI インフラを構築する開発者・エンジニア、特にトレーニング・推論向けの高スループット GPU ワークロードを管理する方を対象としています。

Highlights

  • High Performance:サブ 1ms のレイテンシで 100 万以上の IOPS を提供。
  • S3 Compatibility:標準的な S3 クライアントで利用可能。
  • Rust-based:安全性とメモリ効率を重視した Rust 言語で実装。
  • Hardware Acceleration:GPUDirect Storage と RDMA を活用し、最大スループットを実現。