0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWSでIsaac Simの動作・開発環境を構築する(Windows編)

Last updated at Posted at 2025-04-30

1. はじめに

NVIDIA Isaac Simは, NVIDIA Omniverseプラットフォーム上で構築された, 物理演算エンジンを搭載したロボティクスシミュレーションプラットフォームです。本記事では、クラウド環境での動作検証として、AWS上にIsaac Simの開発環境を構築する手順を詳細に解説します。
NVIDIAのGPUドライバーがインストール済みのAMIもありますが、今回はNVIDIAのGPUドライバーのインストールも手動でインストールしてみます。

2. ISaac Simのシステム要件の確認

公式ドキュメントに記載されている要件は次の通りです。GPUは、Ampereアーキテクチャ以降の世代がサポートされています。

Element Minimum Spec Good Ideal
OS Ubuntu 20.04/22.04, Windows 10/11 Ubuntu 20.04/22.04, Windows 10/11 Ubuntu 20.04/22.04, Windows 10/11
CPU Intel Core i7 (7th Generation), AMD Ryzen 5 Intel Core i7 (9th Generation), AMD Ryzen 7 Intel Core i9, X-series or higher, AMD Ryzen 9, Threadripper or higher
Cores 4 8 16
RAM 32GB [1] 64GB [1] 64GB [1]
Storage 50GB SSD 500GB SSD 1TB NVMe SSD
GPU GeForce RTX 3070 GeForce RTX 4080 RTX Ada 6000
VRAM 8GB [1] [2] 16GB 48GB

3.AWSインスタンスの選定

Isaac Simが動きそうなGPUを利用可能かつ、 CPU/メモリのスペックがIsaac Simの要件に近いインスタンスは以下の通りです。

g6eは利用料が高額というのと、ISaac SimはCPUリソースを多く消費するため, CPU数が4では力不足と思われたため、g5.2xlargeをチョイスしました。

インスタンスサイズ GPU VRAM CPU メモリ(GB) オンデマンド料金/時間(東京リージョン)
g5.xlarge A10G x 1 24 4 16 1.643 USD
g5.2xlarge A10G x 1 24 8 32 2.12576 USD
g5.4xlarge A10G x 1 24 16 64 3.09128 USD
g6e.xlarge L40s x 1 48 4 32 2.883 USD
g6e.2xlarge L40s x 1 48 8 64 3.61968 USD
g6e.4xlarge L40s x 1 48 16 128 5.09303 USD

4. クォータの引き上げ申請を行う

AWSのデフォルトの状態では, GシリーズインスタンスはクォータのvCPU上限が0となっており、Gシリーズのインスタンスは起動できません。上限が0の状態で、インスタンスの起動を試みると、次のメッセージが表示されます。

インスタンスを起動できませんでした
You have requested more vCPU capacity than your current vCPU limit of 0 allows for the instance bucket that the specified instance type belongs to. Please visit http://aws.amazon.com/contact-us/ec2-request to request an adjustment to this limit.

このため、サービスクォータの引き上げ申請が必要になります。
今回は, g5.2xlargeを最大2台起動できるように16を指定して申請を行いました。

image.png

申請から3時間ほどでクォータ引き上げ申請が承認されました。
ただし、個人ユースのためか,、16個のvCPUは承認されず、8個のvCPUのみが承認されました。

5. GPUインスタンス(g5.2xlarge)を起動する

東京リージョンでg5.2xlargeを起動します。設定は以下としました。

  • OS:Windows Server 2022
  • インスタンスタイプ:g5.2xlarge
  • ストレージ:80GB(デフォルト30GBでは不足)
  • セキュリティグループ:RDP接続許可
    ※ ルートボリュームのサイズですが、デフォルトの30GBではディスク容量不足で、GPUのドライバのインストールが失敗したため、80GBに増量しました。(キャンプがとれていなかったため、 キャプチャは30GBのままです。)

image.png

image.png

6. GPUドライバのインストール

EC2インスタンス起動後のデフォルト状態では、GPUドライバはインストールされていません。このため、手動でインストールが必要となります。

Amazon EC2 インスタンス用の NVIDIA ドライバーを見ると, ドライバーのインストールには複数のオプションが用意されています。

  • オプション 1: NVIDIA ドライバーがインストールされた AMI
  • オプション 2: パブリック NVIDIA ドライバー
  • オプション 3: GRID ドライバー (G6、Gr6、G6e、G5、G4dn、および G3 インスタンス)
  • オプション 4: NVIDIA ゲームドライバー (G5 および G4dn インスタンス)

今回は、オプション3のGRIDドライバーのインストールをチョイスしました。

ユーザーまたはロールは、[AmazonS3ReadOnlyAccess] ポリシーを含む許可を持っている必要があります。

GRID ドライバーのインストールに際しては、EC2に[AmazonS3ReadOnlyAccess] ポリシーを含むロールを割り当てる必要があります。 EC2用に[AmazonS3ReadOnlyAccess]を持ったロールを作成し, EC2インスタンスに割り当てます。

image.png

Amazon EC2 インスタンス用の NVIDIA ドライバーに記載されているPowerShellスクリプトを実行し、最新版ドライバを取得します。

$Bucket = "ec2-windows-nvidia-drivers"
$KeyPrefix = "latest"
$LocalPath = "$home\Desktop\NVIDIA"
$Objects = Get-S3Object -BucketName $Bucket -KeyPrefix $KeyPrefix -Region us-east-1
foreach ($Object in $Objects) {
$LocalFileName = $Object.Key
if ($LocalFileName -ne '' -and $Object.Size -ne 0) {
    $LocalFilePath = Join-Path $LocalPath $LocalFileName
    Copy-S3Object -BucketName $Bucket -Key $Object.Key -LocalFile $LocalFilePath -Region us-east-1
}
}

ダウンロードが完了すると、デスクトップにドライバーのインストーラーが配置されるので、インストーラーを実行し、ドライバーをインストールします。インストール完了後, nvidia-smiコマンドを実行すると以下のような出力が得られます。バージョン572.83がインストールされました。

image.png

Isaac Sim Driver Requirementsによると、推奨ドライバは537となっており、インストールしたドライバと異なりますが、おそらく動くだろうということでこのまま行きました。

7. ISaac Simを起動する

isaacsim-app-templateをクローンして、ビルドして起動します。

git clone https://github.com/isaac-sim/isaacsim-app-template.git
cd isaacsim-app-template
.\repo.bat build
.\_build\windows-x86_64\release\isaacsim.exp.full.kit.bat

初回起動時は、何かのコンパイル処理を行っているのか、CPUの使用率が100%に張り付き、画面の操作ができなくなるが、しばらく待っているとCPUの使用率が落ち着き操作できるようになります。

image.png

PhysXのサンプルも問題なく動作しました。

image.png

8. ISaac Simをブラウザでストリーミング表示する

ISaac Simは, 公式にはサポートしていないようですがAppStreamerを使って、ブラウザでのストリーミング表示が可能です。

補足:
NVIDIA Omniverseのkit-app-templateは, AppStreamerを使った ブラウザでのストリーミング表示はサポートされていますが、なぜかisaacsim-app-templateでは, サポートされていません。ただ、サポートされいないだけで動作するようです。

ISaac Simをストリーミングモードで起動します。

.\_build\windows-x86_64\release\isaacsim.exp.full.streaming.kit.bat

次にweb-viewer-sampleを起動します。web-viewer-sampleはNVIDIA提供のAppStreamerを使ったストリーミング表示のサンプル実装です。これを使用することで簡単にISaac Simの画面をブラウザでストリーミング表示できます。

git clone https://github.com/NVIDIA-Omniverse/web-viewer-sample.git
cd web-viewer-sample
npm install
npm run dev
※別途Node.jsの最新版を[Node.js](https://nodejs.org/ja/download)からダウンロードしてインストールした。

web-viewer-sampleの起動に成功すると、次の画面が表示されます。

image.png

上記のコンソール中に出力されているURLにブラウザでアクセスし、「UI for any streaming app」を選択してNextボタンを押します。

image.png

すると、ブラウザでISaac Simの画面が表示されます。

image.png

9. まとめ

AWS g5.2xlargeインスタンス(Windows)でIsaac Simの基本動作を確認できました。次回は、UbuntuでのISaac Simの基本動作を確認したいと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?