VFX cloud computing with Houdini

This is the 19th day article of Houdini Apprentice Advent Calendar 2019. This is a small story that was compared and examined when building VWS for Houdini.

Introduction

The machine used for work has a limit of about 32GB of memory, and it is difficult to increase the GPU. As long as the 3DCG environment of macOS used for private use becomes weaker year by year, OpenGL will be abolished and CUDA support will be provided. It is an OS that is not suitable for CG because it is cut off. I decided to build a GCP CentOS environment for cloud computing.

There are several reasons for choosing GCP. Athera, which was provided as a VFX cloud platform, is now a backend Used on cloud platforms, ZYNC, OpenCue, Stadia, etc. This is because we are putting a lot of effort into media and entertainment. (The aws share is too strong. AWS also has VWS [^ 1].)

Use the Teradici PCoIP client instead of the VNC client for the remote desktop client. Teradici is a remote client especially used for graphics workloads. Wacom drivers are also supported. Since it is sold from 5 volume licenses and it is not sold as an individual license, Launch a Compute Engine instance with Teradici from GCP Market Place.

I think Ubuntu is the most popular for personal use, but VFX production is mostly CentOS. (Providing the rpm package is that) Regarding the dependent libraries, please read them separately for each distribution.

I also considered Quadro, but it's quite expensive so I tested it. Sent off.

Fun installation work

Use the container prepared in the marketplace. The price will be higher, but since there is no need to set GNOME or GPU driver, The content is gentler than doing everything from the beginning, such as booting from ISO. If you want to do everything yourself, please refer to the link below. [^ 2]

  1. First, install clients of the client OS from the link destination. https://docs.teradici.com/find/product/software-and-mobile-clients/2019.11

  2. Create a Compute Engine in the account where you created the GCP account. https://www.teradici.com/google/

Specify the Tokyo region (asia-northeast1-a) because GPU is supported. It's hard to work with this spec, but it's about $ 1 or 2 per hour.

  1. Press the SSH button to set up the driver area.

The user and password set here will be used when logging in to the Teradici client.

sudo passwd `whoami`
sudo passwd root

  1. Install Houdini. Please log in to root. (What we are verifying with the daily build Python 3 is a remnant of trying to combine it with deep learning.)
# https://www.sidefx.com/ja/download/Daily build from Python3

tar -xvzf houdini-py3-18.0.318-linux_x86_64_gcc6.3.tar.gz
cd houdini-py3-18.0.318-linux_x86_64_gcc6.3/
sudo ./houdini.install

cd /opt/hfs18.0
source houdini_setup

If you follow the manual, you should be able to start it with the license manager, I was warned that the following libraries are missing, so I added them

yum install libXScrnSaver libGLU -y
  1. Follow the installer's instructions to launch the Houdini command.
hkey
houdini

It went well. It's tough, so I want to set it in a container. You can see that the GPU is recognized during boot.

watch -n 1 nvidia-smi

If you leave it without doing anything, the free tier will be used up in about 2 weeks, so Shut down the instance with shutdown -h now.

Finally

As for the impression I made by rushing, it is an impression that it is not very suitable for Boligon modeling and texture painting where responsiveness is a bottleneck. I think that it can be used quite well for simulations that require abundant memory and GPU calculation (without worrying about heat and electricity costs). I was able to put together an article about Houdini + Linux setup that seems to be Apprentice.

Excuse
I was thinking of making an article that integrates Kaolin [^ 3] and Pytorch with Houdini Python3, I couldn't integrate well because gcc is old or Pytorch requires different CUDA. I will take a look at the opportunity and try somewhere.

Recommended Posts

VFX cloud computing with Houdini
Do Houdini with Python3! !! !!
Point Cloud with Pepper
Parallel computing with iPython notebook
Enhanced vocabulary with Cloud Text-to-Speech
[Package cloud] Manage python packages with package cloud
Run XGBoost with Cloud Dataflow (Python)