このITインフラニュースのまとめ

・グリーが第5世代AMD EPYCプロセッサ搭載のGoogle Cloud C4Dインスタンスを導入
・対象ワークロードで従来比25%以上高いコストパフォーマンスを確認
・既存のゲーム開発フローで性能と品質を検証し、専用プロジェクトを設けず本番展開

AMDは、グリーが運営するスマートフォン(スマホ)向けゲームアプリのインフラに、Google Cloudの第5世代AMD EPYCプロセッサ搭載C4Dインスタンスが導入されたことを発表した。

グリーは、既存のゲーム開発プロセスへCPUとインスタンスタイプの評価を組み込み、開発、負荷試験、品質検証(QA)を段階的に実施。専用の検証プロジェクトを新たに立ち上げることなく、本番環境への展開につなげたという。

C4Dインスタンスを利用する対象ワークロードでは、レイテンシの改善、CPU使用率の低減、インスタンス利用料金を総合的に評価した結果、従来比で25%以上高いコストパフォーマンスを確認したという。

アクセス変動への対応が求められるゲーム基盤

グリーは、数十万人規模のデイリーアクティブユーザーを抱える大型ゲームタイトルを複数運営している。

ゲーム内イベントの開催や時間帯によってアクセス数が大きく変化するため、ゲームサーバーにはCPU性能だけでなく、需要に応じて処理能力を柔軟に増減できるスケーラビリティが求められる。

同社のゲームサーバーはコンテナベースのアーキテクチャを採用し、CPUコア数に応じて処理性能を拡張する。1タイトル当たり16コア以上を利用するゲームインスタンスを数百台規模で運用しており、インフラコストを抑えるためSpotインスタンスも活用しているという。

こうした大規模環境では、インスタンス当たりに収容できるコンテナ数を増やせれば、必要なサーバー数やクラウド利用料金を削減できる。一方、CPUやインスタンスタイプの変更に伴ってレイテンシが増加したり、既存のゲームシステムへ影響が生じたりすれば、サービス品質を維持できない可能性がある。

既存の開発フローにCPU評価を組み込む

新たなCPUやクラウドインスタンスを本番環境へ導入する際は、期待する性能が得られるか、既存システムとの互換性や品質に問題がないかを確認する必要がある。

今回、グリーは検証工数の増加を抑えるため、CPU選定だけを目的とする専用プロジェクトを設けず、評価を通常の開発工程へ組み込む形で作業を進めて行ったという。

開発フェーズでは、ゲームサーバーが複数のインスタンスタイプ上で動作する環境を整備。開発者が使用するCPUの違いを意識することなく、通常の機能開発を進められるようにした。

続く負荷試験では、実際のユーザーアクセスを想定した通信を再現し、インスタンスタイプごとにレイテンシやCPU使用率などの比較を実施。その結果、第5世代AMD EPYCプロセッサ搭載C4Dインスタンスについて、対象ワークロードにおける優れた性能とコスト効率を確認したとする。

負荷試験後は、選定したインスタンスタイプをQAフェーズへ移し、ゲームの品質や動作を検証したうえで本番環境へ展開。複数のインスタンスタイプを組み合わせることで、リソース確保や可用性にも配慮した運用を実現したとしている。

コンテナの高密度化でサーバー数を削減

CPUの使用率を抑えながら必要な処理性能を確保できれば、同じ数のゲームサーバーをより少ないインスタンスで運用することができるようになるほか、アクセス数が増加した場合にも、追加するインスタンス数を抑えながら処理能力を拡張できる可能性が増すこととなる。

グリーによる負荷試験でも、レイテンシの改善、CPU使用率の低減、インスタンスコストを総合的に勘案した結果、対象ワークロードで従来比25%以上高いコストパフォーマンスが確認された。

ただし、25%以上という数値は同社の特定ワークロードと負荷試験に基づく結果であり、すべてのゲームやワークロードで同様の効果を保証するものではない。

また、クラウドでは、高いコスト効率を得られるインスタンスであっても、需要の集中時に必要な数量を確保できるとは限らないほか、割安なSpotインスタンスは、クラウド事業者側の都合で中断される可能性もある。

このためグリーは、複数のインスタンスタイプとSpotインスタンスを組み合わせ、特定のCPUやインスタンスだけに依存しない構成を採用。性能とサービスの可用性を維持しながら、クラウド利用料を継続的に最適化するFinOpsを進めているとのことで、グリー 開発本部 インフラ共通部 副部長の後藤浩行氏は、AMDの技術について性能、スケーラビリティ、コスト効率を兼ね備えている点を評価したとしている。

なお、グリーでは、複数のインスタンスタイプを利用できる環境を維持しながら、AMD EPYCプロセッサ搭載C4Dインスタンスを活用し、ゲームサービスの性能とクラウドコストの最適化を進めていく。