AWS on TouchDesigner
はじめに
冬になって、GPUで暖を取りたい人もいると思いますが、自分の手前のPCだけだとスペックが足りない、オンライン環境でもTD使いたい人がいると思います
24GBVRAMGPU とか CPU 8 コアのみとかだと、そりゃ足りないですよね
The Interactive & Immersive HQのPaperspace使う方法もありますが、今回はAWSを使います
AWSでGPUインスタンスを立てて、TDを使う方法を紹介します
何が美味しいの?
とりあえず殴ろう
もうなんて言っても、とにかくお金で色々殴れるっていうところではないでしょうか
え?遅延?じゃあ、もっと近いリージョンに立てよう
え?スペックが足りない?PC足りない?ん?
とにかく、お金で解決できるのが一番美味しいです
構成を真面目に考える
例えば、UE on AWS から引用した構成図みたいなものも実はTDで作ることもできるそう

WebRTC Comp も出てきたし、Web Client Comp もあるし
単純なウェブサーバーとかだったら、AWSの無料枠でできるので、そういうのと連携して、TDのオンライン化で面白いことはできるのではないでしょうか
エラー吐いてるけど、 TD on AWSで WebRTC テスト! pic.twitter.com/0ltQ4iRUxI
— かいくん / kye shimizu (@kyeshimizu) December 1, 2023
インストールする前のトラップ
Quotaがない場合は申請する必要があります (営業日1日ぐらい)
AWSのアカウントを作成して、やろうと思うと、デフォではGPUのインスタンスが作成できません いわゆるCrypto系なのか、悪いアクターからの排除ですかね
今回はG4DNというNvidiaのGPUが搭載されたインスタンスを使います
G4ANというAMDのGPUが搭載されたインスタンスもありますが、Nvidiaのドライバーが入っていないので、注意してください!!
申請画面では適切なリージョンを選択して、G4DNのためのインスタンスを選択をします
Quota 申請
こちらでは onDemand と Spot の両方の Quota を申請しています
違いについては、割愛しますが、すごいざっくり言うと
Spot の方が安いですが、突然消える可能性がある onDemand は高い分、インスタンスは消えない
みたいな感じなので、実験的に両方申請した方がいいと思います
安く方法も年単位で契約したり、ベンダー通したりなど色々あると思うので、ここら辺は構成との工夫が必要です


選択をすると、インスタンスの数ではなく、vCPUの数でQuotaが決まります
— edit --- これまではG4DNを利用していたのですが、Tesla Architecture 自体が
G4DNの場合は、最低でも4vCPUが必要なので、4vCPU以上のQuotaが必要になります

アカウントが他のサービス使ってない経験がない場合だと、1営業日ぐらいかかります
AWSのインスタンスを作成する
AMI を選択する
AMIについては、AWSのマーケットプレイスから、Nvidia のドライバーがすでに入っているものを選択してます
まずは、 Browse More AMIs を選択します

今回は Nvidia Gaming で検索をし、Nvidia Gaming Windows Server 2019 のAMIを選択します

キーペア
キーペアは、インスタンスにログインするためのものです
キーペアに名前をつけた後、.pemファイルをダウンロードします こちらはログインするために必要になるので、捨てないでください

セキュリティー設定
セキュリティー設定は、RDPというリモートデスクトップのためのポートを開ける必要があります
まずは、Network Settings Edit ボタンを選択します

RDPは、Windowsのリモートデスクトップのためのポートです、いわゆる純正のAnydesk / Parsec / Teamviewer / VLC 的なやつです
今は0.0.0.0に設定してますが、誰もがログインできる状態になっていて、セキュリティー的にはあまりよくないので、限定したIPにすることをおすすめします

Storage
ドライブの容量が意外と少ないので、デフォの30GBから少し足すことをおすすめします
リージョンが東京になっているので、リージョンが違うところで作業する場合は確認してください

接続する
インスタンスが作成されたら、接続をしてみましょう
インスタンスを選択して、Connect を選択します そうすると、こちらの画面が出てきて、RDP Client タブを選択します
こちらでRDPのためのファイルをダウンロードできます Parsec / Anydesk / VLC みたいにパスワードが必要になるのですが、AWSの場合は、キーペアを使ってログインします
Get Password を選択すると、キーペアを選択する画面が出てきます

このパスワードの発行がマシーンが起動してから、数分かかるので、しばらく待ちます なんかやたら長いなって思ったら、インスタンスを再起動するのも手です
そうしないと、こういう画面が出てきます

待ってる間、Microsoft Desktop Remote App Store から、からダウンロードします
Windowsの場合は、すでに入っていると思います?どうだろう
RDP で接続
.RDP ファイルをダウンロードして、数分待って、パスワードも入れてたら、ログインできます
ダウンロードしたら、rdp をドラッグして、Microsoft Remote Desktop にドロップします
ここで出てくるパスワードはキーペアで発行したパスワードです

そうすれば、もう完成!!!🥳🥳🥳 それでは良いTDライフを!
他のTips
Vsync
Vsync 忘れずに切りましょう!
Vsync がある場合のFPS
Vsync がない場合のFPS
Terraform
Terraform という IaaC (Infrastructure as a Code) というものがあります これを使うと、AWSのインスタンスをコードで管理することができます これで必要なプログラムを自動インストール設定したりすることができます
まだ全然未完成ですが、こちら で展開しています 一緒に開発してくれる仲間探してます