LoginSignup
2
0

More than 1 year has passed since last update.

IBM Cloudで3D描画アプリケーションをGPUを使って動かす

Last updated at Posted at 2023-05-02

はじめに

IBM Cloud上でUnreal Engineなど3D描画を行うアプリケーションをGPUを使って稼働させたいと思ったことはありませんか?NVIDIAのGRIDドライバーを使用することでこれが可能になります。しかし、IBM Cloud上のVirtual MachineはGrid Driverをサポートしていません。そこで、今回はIBM CloudのBareMetal ServerにGrid Driverを導入し、3D描画アプリケーションを稼働させる方法を解説します。OSはWindowsになります。

IBM CloudのGRIDドライバーについての制約

IBM Cloud では、現在、仮想 GPU の GRID ドライバーをサポートしていません。 GRID をサポートするには、ベア・メタル・サーバーに GPU をプロビジョンし、適切な GRID ドライバーをインストールします。 NVIDIA GPU サポート を参照

参照元

参考:ドライバーの種類

IBM Cloudで提供されるデータセンター向けのGPUでは以下のドライバーが候補となります。3DレンダリングするにはGRIDドライバーが必要です。

Tesla ドライバー
これらのドライバーは主に、機械学習用の並列浮動小数点計算、ハイパフォーマンスコンピューティングアプリケーション用の高速フーリエ変換などの計算タスクに GPU を使用するコンピューティングワークロードを対象としています。

GRID ドライバー
これらのドライバーは、3D モデルや高解像度動画などのコンテンツをレンダリングするプロフェッショナルな視覚化アプリケーションに最適なパフォーマンスを提供することが認定されています。GRID ドライバーを構成すると、2 つのモードをサポートできます。Quadro Virtual Workstation は、GPU あたり 4 台の 4K ディスプレイへのアクセスを提供します。GRID vApps は、RDSH アプリのホスティング機能を提供します。

参照元

手順1 BareMetal Serverの作成

GPUが搭載されたBareMetal Serverの払い出しを行います。手順は省略します。
この記事ではTesla P100が搭載されたBareMetal Serverを使用しています。

手順2 GRIDドライバーのインストール

GRIDドライバーはvGPUとも呼ばれるらしいです。名前からハイパーバイザーを構成しないと使えないようなイメージを受けますが、BareMetal Serverに直接インストールすることも可能です。
以下のサイトからドライバーをダウンロードします。

GRIDドライバーは上記のダウンロードサイトの「NVIDIA Virtual GPU Customers」からログインするとダウンロード可能です。GRIDドライバーは有償のドライバーになります。90日間の試用利用が可能です。

image.png

SOFTWARE DOWNLOADSから「Microsoft Windows」のドライバーをダウンロードします。

image.png

ダウンロードしたファイルを解凍して以下のファイルを取り出して、BareMetal Serverに配置します。
このファイルを実行してインストーラーを立ち上げます。
「474.30_grid_win10_win11_server2016_server2019_server2022_64bit_international.exe」

image.png

インストーラーは以下のような画面です。画面の指示に従いインストールを進めます。特に迷うところは無いはずです。

image.png

手順3 3D描画アプリケーションの稼働確認

processingを使って3D描画のテストをします。
以下からprocessingをダウンロードします。

ダウンロードしたファイルを解凍すると以下のようなファイルが作成されます。
processing.exeをダブルクリックしてprocessingを起動します。

image.png

以下のサイトから3D描画のサンプルコードを取得します。

以下のコードでテストします。

size(640,360,P3D);
background(0);
lights();

pushMatrix();
translate(130, height/2, 0);
rotateY(1.25);
rotateX(-0.4);
noStroke();
box(100);
popMatrix();

pushMatrix();
translate(500, height*0.35, -200);
noFill();
stroke(255);
sphere(280);
popMatrix();

以下のようにprocessingの画面にコードを貼り付けて、実行ボタンを押します。

image.png

以下のようなWindowが表示されれば3Dの描画は成功しています。

image.png

参考:Unreal Engine

Unreal Engineの前提のセットアップを実施すればUnreal Engineで作成されたアプリケーションを稼働させることも可能です。

image.png

上記の画面は、以下のアプリケーションを稼働させたものです。

おわりに

これで、IBM CloudのBareMetal ServerにNVIDIA GRIDドライバーを導入し、3D描画アプリケーションをGPUを使って稼働させることができました。これにより、より高速な3D描画や、より複雑なシーンのレンダリングが可能になります。

注意事項

IBM CloudのBareMetal Serverは、Virtual Machineと比較してコストが高くなることがあります。必要なリソースや予算を検討した上で、適切な選択を行ってください。

2
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
2
0