## 研究目的・動機 - OpenAIのオープンウェイトモデル「gpt-oss」のサービング環境における性能評価 - 異なるGPU環境でのリクエスト処理性能測定とサービング時の適切な設定方針の確立 - gpt-oss-120b(o4-miniと同水準)、gpt-oss-20b(o3-miniと同水準)の実サービス導入時の性能基準策定 ## 評価環境・仕様 | GPU種別 | インスタンス | vCPU | メモリ | GPU仕様 | |---------|-------------|------|--------|---------| | H100 | a3-highgpu-1g | 26 | 234GB | 1×NVIDIA H100 80GB | | A100 | a2-ultragpu-1g | 12 | 170GB | 1×NVIDIA A100 80GB | | L4 | g2-standard-4 | 4 | 16GB | 1×NVIDIA L4 24GB | - OS: Debian GNU/Linux 12 (bookworm) - CUDA: cuda-toolkit-12-8、cuda-drivers-570 - 推論エンジン: vLLM 0.10.1+gptoss(PagedAttention、continuous batching機能) - 負荷試験: Locust(120秒間測定) ## 評価条件・パラメータ - プロンプトトークン数: 約2,000、4,000、8,000トークン(5,000パターン用意) - Reasoning effort: low、medium、high - 並列リクエスト数: 1、2、4、8、16 - 最大トークン数: 100,000(`--max-model-len=100000`) - H100環境: `--async-scheduling`オプション使用 - A100/L4環境: `TRITON_ATTN_VLLM_V1`をattention backendに指定 ## H100環境での性能結果 - **並列処理効率**: 低~中負荷条件(Reasoning effort: low~medium、20bモデル)でvLLMの並列処理機構が有効 - **Reasoning effortの影響**: low→highでレスポンス時間が顕著増加、RPSが低下 - **モデルサイズ影響**: gpt-oss-120bはgpt-oss-20bより処理時間長いが、差は2倍未満と比較的緩やか - **入力トークン数影響**: 処理性能への影響は相対的に小さく副次的要因 ## 出力トークン数分析結果 - **出力量比較**: 両モデル共にReasoning effort low/mediumで同程度、highで増加 - **性能依存関係**: レスポンス時間は出力トークン数に強く依存 - **最適化戦略**: 小モデル×Reasoning effort highより、大モデル×medium+出力長制御が有効 ## A100/L4環境の性能制限 - **処理可能性**: モデル推論実行は可能だが、H100比で応答時間大幅延長 - **並列化効果**: 並列数増加によるスループット改善はほぼ無し - **適用制限**: 少数リクエスト処理には利用可能、大規模並列処理・サービス用途には不適 ## 技術的結論・推奨設定 - **GPU要件**: サービス用途での安定運用にはH100以上の環境が必須 - **性能最適化要因**: モデルサイズ < Reasoning effort設定 < 出力トークン数制御の順で影響大 - **並列処理**: 適切な推論サーバー導入で並列数増加に応じたスループット向上が実現可能 - **設定指針**: 推論精度と応答性能両立には最大出力長制御とReasoning effort調整が重要 ## 実装時の技術仕様 - **起動コマンド例**: - H100: `vllm serve openai/gpt-oss-120b --max-model-len=100000 --async-scheduling` - A100/L4: `VLLM_ATTENTION_BACKEND=TRITON_ATTN_VLLM_V1 vllm serve openai/gpt-oss-120b --max-model-len=100000 --async-scheduling` - **トラブルシューティング**: Spotインスタンス再起動時のGPU認識不良は`sudo apt install linux-headers-$(uname -r)`で解決