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 を活用し、最大スループットを実現。