common.title

Docs
Quantum Circuit
TYTAN CLOUD

QUANTUM GAMING


Desktop RAG

Overview
Terms of service

Privacy policy

Contact
Research

Sign in
Sign up
common.title

S-LoRA: 数千のLoRAアダプターを管理するシステムを見る

Yuichiro Minato

2023/11/19 07:42

LoRAファンの皆さん、こんにちは、めちゃくちゃたくさんLoRA使いたいですよね。

今日はS-LoRAを見ます。

英語のページはこちらでした。

S-LoRA: Serving Thousands of Concurrent LoRA Adapters

https://github.com/S-LoRA/S-LoRA

論文は、

S-LoRA: Serving Thousands of Concurrent LoRA Adapters

Ying Sheng, Shiyi Cao, Dacheng Li, Coleman Hooper, Nicholas Lee, Shuo Yang, Christopher Chou, Banghua Zhu, Lianmin Zheng, Kurt Keutzer, Joseph E. Gonzalez, Ion Stoica

https://arxiv.org/abs/2311.03285

Low Rank Adaption Adaptersは頭痛が痛いみたいになってますが、英語的にはいいのでしょうか?見てみます。

出典:https://github.com/S-LoRA/S-LoRA

最初にこの絵が出てきました。つまり、LoARのadapterの数を増やしてもスループットの性能が落ちにくいと言ってるのでしょうか。

多くのLoRAアダプターをスケーラブルに提供するために設計されたシステムがS-LoRAのようです。

S-LoRAはすべてのアダプターをメインメモリに格納し、現在実行中のクエリに使用されるアダプターをGPUメモリにフェッチします。GPUメモリを効率的に使用し、断片化を減らすために、S-LoRAはUnified Pagingを提案しているようです。Unified Pagingは、一元的なメモリプールを使用して、異なるランクとKVキャッシュテンソルの可変なシーケンス長を持つ動的アダプター重みを管理。さらに、S-LoRAは新しいテンソル並列処理戦略と、LoRA計算の異種バッチ処理のための高度に最適化されたカスタムCUDAカーネルを採用しています。

これらの特徴を総合すると、S-LoRAは単一のGPUまたは複数のGPU上で何千ものLoRAアダプターを少ないオーバーヘッドで提供することができます。HuggingFace PEFTやvLLMなどの最先端のライブラリと比較して、S-LoRAはスループットを最大4倍向上させ、提供されるアダプターの数を複数の桁で増やすことができます。その結果、S-LoRAは多くのタスク固有の微調整モデルのスケーラブルな提供を可能にし、大規模なカスタマイズされた微調整サービスの潜在的な可能性を提供するそうです。

つまり、たくさんのLoRAをつけられるようにGPUマネージメントされたシステムということですね。

出典:https://github.com/S-LoRA/S-LoRA

特徴です。

Unified Paging(統合ページング)

メモリ断片化を減らし、バッチサイズを増加させるために、S-LoRAは統合メモリプールを導入します。このプールは、統合ページングメカニズムによって動的アダプター重みとKVキャッシュテンソルを管理。

異種バッチ処理

異なるランクのさまざまなアダプターをバッチ処理する際のレイテンシーオーバーヘッドを最小限に抑えるために、S-LoRAは高度に最適化されたカスタムCUDAカーネルを採用しています。これらのカーネルは非連続メモリ上で直接動作し、メモリプールの設計に沿っており、追加されたLoRA計算のための効率的なバッチ推論を促進します。

S-LoRA TP(テンソル並列処理)

複数のGPUにわたる効果的な並列化を確保するために、S-LoRAは新しいテンソル並列処理戦略を導入します。このアプローチは、ベースモデルのそれと比較して、追加されたLoRA計算のための通信コストを最小限に抑えます。これは、小さな中間テンソル上での通信のスケジューリングと、ベースモデルの通信との融合によって実現されます。

出典:https://github.com/S-LoRA/S-LoRA

ベンチマーク

最初の図に戻るわけですが、設定に関して幾つかのベースモデルとアダプターのランクなどがあるようです。

ベンチマークは、

ということで、使うLoRAも使わないLoRAも効率的に使うようです。LoRAをたくさん使う際には考慮しましょう。以上です。

© 2025, blueqat Inc. All rights reserved