Skip to content

Remote GPU

Ali Aliev edited this page Jan 13, 2021 · 9 revisions

Setup server

Linux

The recommended way to setup a Linux server for Avatarify is Docker. This sections explains a native installation.

This guide will assume the OS is Ubuntu 18.04 and latest NVIDIA drivers installed.

See also provisioning a cloud-based GPU instance.

  1. Download Miniconda Python 3.7 and install it:
bash Miniconda3-latest-Linux-x86_64.sh
  1. Clone avatarify and install its dependencies:
git clone https://github.com/alievk/avatarify.git
cd avatarify
bash scripts/install.sh --no-vcam
  1. Download network weights and place vox-adv-cpk.pth.tar file in the avatarify directory (don't unpack it).

Windows

This guide will assume the OS is Windows 10 and latest NVIDIA drivers installed.

  1. Install Miniconda Python 3.7.
  2. Install Git.
  3. Press Windows button and type "miniconda". Run suggested Anaconda Prompt.
  4. Download and install Avatarify (please copy-paste these commands and don't change them):
git clone https://github.com/alievk/avatarify.git
cd avatarify
scripts\install_windows.bat
  1. Download network weights and place vox-adv-cpk.pth.tar file in the avatarify directory (don't unpack it).

Docker

Docker images are only availabe on Linux.

  1. Install Docker following the Documentation. Then run this step to make docker available for your user.
  2. For using the gpu (hardly recommended): Install nvidia drivers and nvidia docker.
  3. Clone avatarify:
git clone https://github.com/alievk/avatarify.git
  1. Build the Dockerfile:
docker build -t avatarify .

Run server

Linux (native and with Docker):

bash run.sh --is-worker

Add the flag --no-gpus if you don't have a GPU installed. Add the flag --docker to use Docker.

Windows:

run_windows.bat --is-worker

Run client

Clients are supported on all platforms. Use this command to run a client:

run_mac.sh --is-client --in-addr tcp://server_address:5557 --out-addr tcp://server_address:5558

where server_address is the IP address or the hostname of the server. Use run_windows.bat for Windows and run.sh for Linux.

If you want the client to run with docker add the --docker flag. If you run the server with Docker and the client is on the same machine add the --is-local-client flag.