Installation Instructions

PlaidML supports Ubuntu, macOS , and Microsoft Windows operating systems.

If necessary, install Python’s pip tool. OpenCL 1.2 or greater is alsorequired.

sudo add-apt-repository universe && sudo apt update
sudo apt install python3-pip
sudo apt install clinfo

Run clinfo, and if it reports "Number of platforms" == 0, you can install a driver (GPU) or enable a CPU via one of these options:

  • Nvidia – For Nvidia GPUs, run:

sudo add-apt-repository ppa:graphics-drivers/ppa && sudo apt update
sudo apt install nvidia-modprobe nvidia-384 nvidia-opencl-icd-384 libcuda1-384

Python

Although PlaidML can be run with Python2, we recommend Python3, as well as judicious use of a Virtualenv. To create one just for using PlaidML:

python3 -m venv plaidml-venv
source plaidml-venv/bin/activate

Keras

There are two ways to get Keras working on your system:

  1. Isolate it to your venv as follows:

pip install -U plaidml-keras
  1. Alternatively, install the PlaidML wheels system-wide with:

sudo -H pip install -U plaidml-keras

Finally, set up PlaidML to use a preferred computing device:

plaidml-setup

You can test the installation by running MobileNet in plaidbench. Remember to use sudo -H if you’re working outside of a virtual environment.

pip install plaidml-keras plaidbench
plaidbench keras mobilenet

You can adapt any Keras code by using the PlaidML backend instead of the TensorFlow, CNTK, or Theano backend that you’d normally use; simply change the Keras backend to plaidml.keras.backend. You can do this by modifying

~/.keras/keras.json so that the backend line reads "backend": "plaidml.keras.backend" If this file does not exist, see the [Backend instructions for Keras]. If you don’t need anything special in your Keras settings, you can set the ~/.keras/keras.json as follows:

{
    "epsilon": 1e-07,
    "floatx": "float32",
    "image*data*format": "channels_last",
    "backend": "plaidml.keras.backend"
}

Another option is to globally set the KERAS_BACKEND environment variable to plaidml.keras.backend. A monkey-patch technique involving plaidml.keras.install_backend() may still work, but should be considered deprecated in favor of the above methods.

A computer listed on Apple’s compatibility list with support for OpenCL 1.2 is required; those from 2011 and later usually fit this requirement.

Python

Although PlaidML can be run with Python2, we recommend Python3, as well as judicious use of a Virtualenv. To create one just for using PlaidML:

python3 -m venv plaidml-venv
source plaidml-venv/bin/activate

Keras

To install PlaidML with Keras, run the following:

pip install -U plaidml-keras

Finally, set up PlaidML to use a preferred computing device:

plaidml-setup

PlaidML should now be installed! You can test the installation by running MobileNet in plaidbench.

pip install plaidml-keras plaidbench
plaidbench keras mobilenet

These instructions assume Windows 10 without Python installed; adapt accordingly.

  1. First install Chocolatey by starting an Administrator PowerShell and running:

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

You’ll likely need to reboot your shell at this point.

  1. Install Python:

choco install -y python git vcredist2015
  1. Switch to an unprivileged PowerShell to install and set up PlaidML with Keras

pip install -U plaidml-keras
plaidml-setup

PlaidML should now be installed! You can test the installation by running MobileNet in plaidbench.

pip install plaidml-keras plaidbench
plaidbench keras mobilenet

Intel® SDK for OpenCL™ Applications