普段ゲームをしないので、Webブラウザが動けばいい程度のパソコンを使用しています。昔よくやってたスト2の続編が出ると知り、ちょっとやってみたくなったので、なんとかAWSを活用してできないか試してみました。
キーワード
- GPU搭載インスタンス
- NICE DCV
GPU搭載インスタンス
AWSには高速コンピューティングという区分でGPUを搭載したインスタンスが存在します。
高速コンピューティングにも複数あり、NVIDIA A100 Tensor Core GPUが8つ 搭載されているP4インスタンスやAWSが開発した Trainiumを搭載したTrn1、同じくAWSが開発した Inferentia2 と搭載したInf2があります。
流石に、スト6をするためにこんなモンスターは不要なので、今回は g4dn.xlarge インスタンスを使用しました。
g4dn.xlargeのスペックと価格
GPU : 1
vCPU : 4
メモリ (GiB) : 16
インスタンスストレージ (GB) : 1 × 125 NVMe SSD
ネットワーク帯域幅 (Gbps) : 最大 25
EBS 帯域幅 (Gbps) : 最大 3.5
オンデマンド料金/時間 : 0.894 USD(東京リージョン)
ゲームは1日1時間(by 高橋名人)で計算するとひと月たったの26.82ドル!
おそらく、G系インスタンスの特徴は
G5 : AMD EPYCプロセッサー + NVIDIA A10G Tensor Core GPU
G5g : AWS Graviton2プロセッサー + NVIDIA T4G Tensor Core GPU
G4dn : 第 2 世代インテル Xeon スケーラブルプロセッサ + NVIDIA T4 Tensor Core GPUs
G4ad : 第 2 世代 AMD EPYC プロセッサ + AMD Radeon Pro V520 GPU
NICE DCVによる低遅延ストリーミング
NICE DCVとは
NICE DCV は、高性能のリモートディスプレイプロトコルです。さまざまなネットワーク条件で、リモートデスクトップやアプリケーションストリーミングをクラウドやデータセンターからあらゆるデバイスへ安全に配信できます。NICE DCV と Amazon EC2 を使用すると、グラフィックスを多用するアプリケーションを Amazon EC2 インスタンス上でリモートで実行できます。結果をより控えめなクライアントマシンにストリーミングできるため、高価な専用ワークステーションが不要になります。
管理者ガイドより抜粋
通信プロトコルはデフォルトでTCPのWebSocketが、さらにUDPのQUICを使用することも可能です。
サーバー側をEC2で実行する際は無料で利用できるようです。
また、コントローラーにも対応しており、手元のパソコンにUSBで接続したスイッチのプロコン(もどき)を自動で認識してくれました。
詳細なリファレンスはこちらです。
NICE DCVはNICE社の製品のようで、このNICE社はAWSに買収(?)されたようです。そのため、EC2上での利用は無料なんだと思われます。
GPUドライバーとNICE DCVのセットアップ済みAMI
NICE DCVサーバーのセットアップやGPUのドライバーがインストール済みのAMIが提供されています。
本日時点では以下のものが提供されていました。
- NICE DCV for Windows (g4 and g5 with NVIDIA gaming driver)
- NICE DCV for Windows (g3, g4 and g5 graphics-intensive instances)
- NICE DCV for Windows (non-graphics-intensive instances)
- NICE DCV for Amazon Linux 2
- NICE DCV for Windows (g4ad graphics-intensive instances)
- NICE DCV for Amazon Linux 2 (ARM)
non-graphics-intensive instancesは、T系、M系、C系など、GPUが非搭載のインスタンスタイプ向けのものです。
今回はNICE DCV for Windows (g4 and g5 with NVIDIA gaming driver)を使用しました。
NICE DCVクライアントのインストール
NICE社のダウンロードサイトから最新版のクライアントをダウンロードし、インストールします。ウィザードに従うだけなので特に難しいところもありませんでした。
ベンチマーク
環境が整ったところでベンチマークを実行してみました。
けっかはこちら! どーーん!!
ノーマルセッティングで 問題なくプレイできます とのことです。
ちなみにグラフィック設定をLOWやLOWESTにすると 快適にプレイできます となりました。
実際にゲームしてみた
動画を取りましたので見てください。(ゲームの下手さは気にしない。。)
動画では伝わりづらいところとしては
- 動画には入ってませんが、音声は上手に再生されます
- 映像もとてもきれいです
NICE DCVの解像度:1280x720
かなりカクカクしてます。画面左側のパネルにfpsを表示してますが、画面の変更が殆どない場面では60fps出ていますが、明転/暗転したり技のエフェクトが派手なときは数fps、場合によっては0fpsまで落ちてしまいます。
しかも、ストリーミングが追いついていないだけで、EC2側ではスムーズにゲームが進行しています。ほぼ目隠しでやってるようなものです。
NICE DCVの解像度を800x600に下げる
NICE DCVで設定できる最低の解像度まで下げて実行しました。
たまにfpsが落ちますが概ね60fpsを維持しています。先程よりは全然ゲームができる状態です。ギリギリOKかギリギリNGかの瀬戸際ぐらいです。真空波動拳も狙ったタイミング(?)で出せました。
ステージの背景がある場合
良さげなので、背景があるステージを選択してやってみました。
やはり画面上の変化点が多いとその分転送量が増え、追いつかなくなるようですね。
結論
- NICE DCVの解像度:800x600
- 背景なしステージ(トレーニングルーム)を使う
までやらないと、動作しないという結果になりました。
一生懸命働いて良いパソコン買いましょう
ただ、格闘ゲームじゃなかったら、意外と使えるジャンルもあるかも(?)と思いました。