はじめに Introduction
IBM SoftLayerのベアメタルサーバー(物理サーバー貸しサービス)にはGPUボードを搭載することができます。GPUを利用すれば、高速な画像処理や、構造解析などの処理を高速化することが可能です。
今回は、Nvidia Tesla M60というGPUを搭載したベアメタルにVMwareを導入してGPUも仮想化し、VNCでリモートから3Dグラフィックスを高速描画するための手順をご紹介しましょう。
The IBM SoftLayer bare metal server (physical server lending service) can be equipped with a GPU board. By using GPU, it is possible to speed up processing such as high-speed image processing and structural analysis.
This time, introduce VMware to the bare metal equipped with the GPU named Nvidia Tesla M60, virtualize the GPU, and introduce the procedure to remotely draw 3D graphics remotely with VNC.
使用するソフトウェアは次の通りです。
The software to use is as follows.
Software | 用途_Purpose_ |
---|---|
VMware ESXi 6.0 | 言わずと知れたHypervisor |
Nvidia GRID Driver | GPU仮想化デバイスドライバ、ESXとGuestOSに導入します_GPU virtualization device driver, ESX and guestOS_ |
VirtualGL | OpenGLのダイレクトレンダリングをリモート伝送するためのツール A tool for remotely transmitting OpenGL direct rendering |
TurboVNC | デスクトップ画面をリモート伝送するためのツール A tool for remotely transmitting the desktop screen |
Linuxのリモートデスクトップ転送技術あれこれ Linux Remote Desktop Transfer Technology
VirtualGLのサイトに丁寧な解説があるので、詳細を知りたい方はそちらを参照してください。サイトの画像を参照させていただきながら、簡単に説明します。
There is a polite commentary on VirtualGL's [site] (http://www.virtualgl.org/About/Background), so if you want to know more, please refer to that. I will briefly explain while referring to the image of the site.
## X Windowサーバを使用する _Using X Window Server
LinuxをはじめとするUnixで昔から利用されている方法です。この方式ではサーバー側では3Dアクセラレーションは働かず、クライアント側で働きます。OpenGLコマンドはX Windowプロトコルの中を流れるので、かなり高速で遅延の少ないネットワークでないと使用に耐えないでしょう。せっかくクラウド上のサーバにGPUを搭載しても意味がありませんね。
It is a method used long ago on Linux and other Unix. With this method, 3D acceleration does not work on the server side and works on the client side. Since the OpenGL command flows through the X Window protocol, it will not withstand use unless it is a network that is fairly fast and has little delay. Even if GPU is installed in the server on the cloud, it makes no sense.
## サーバーサイド・レンダリング Server side rendering
サーバー側で3Dアクセラレーションを働かせるためには次の2つの技術があります。
There are two technologies to make 3D acceleration work on the server side.
- Scraping
- GLX Forking
導入ステップ Instalation steps
次の1から3の手順に沿って導入を進めます。
Follow the steps 1 to 3 to proceed with the installation.
1. Nvidia GRIDドライバインストール Installing Nvidia GRID driver
NVIDIA GRIDドライバをVMware環境にインストールするを参考に、NvidiaのGRIDデバイスドライバをESXとGuest OSに導入します。
Refer to [Installing the NVIDIA GRID driver in VMware environment] (http://qiita.com/Sawahashi/items/32d29f9e24b83d7122a0 "Installing NVIDIA GRID driver in VMware environment") and connect Nvidia's GRID device driver to ESX and Guest We will introduce it to the OS.
2. デスクトップ画面をクライアントPCから操作する Operating desktop screen from a client PC
SoftLayerにVNCで接続するを参考に、リモートデスクトップ環境を提供するTurboVNCをセットアップしてください。
Please refer to [Connect to SoftLayer with VNC] (http://qiita.com/Sawahashi/items/156be0baaf6384884f3d "Connecting to SoftLayer with VNC") and set up TurboVNC to provide the remote desktop environment.
3. 3D画像伝送を高速化するためにVirtualGLをインストールする Installing VirtualGL to speed 3D image transmission
VirtualGLをセットアップするを参考に、OpenGLをリモートでも高速表示できるVirtualGLをセットアップしてください。
Please refer to [Set up VirtualGL] (http://qiita.com/Sawahashi/items/b37648f55c428aa92513 "Set up VirtualGL") and set up VirtualGL which can display OpenGL at high speed remotely.