Intel ARC - DrakeRichards/stable-diffusion-webui GitHub Wiki
Notes
Data Types
BF16 is faster on the Original backend.
FP16 and BF16 has really similar performance on the Diffusers backend.
Extreme Resolutions
Use Diffusers Backend (and enable Attention Slicing with SDXL) from Diffusers Settings if you want to go beyond 2048x2048.
Backend:
Diffusers backend is 10%-25% faster than the original backend.
Errors with iGPU:
Disable your iGPU (if any, e.g. UHD or Iris Xe) in the device manager.
Errors with ipexrun on Linux
If you get random errors at the startup, it's probably from ipexrun.
Start the WebUI without --use-ipex
to disable ipexrun.
Windows Installation
Preparations
- Install
Intel GPU Driver
properly (4952 or newer). - Install
git
. - Install
python 3.10
(Current IPEX wheels are built for python 3.10.) - Open CMD in a folder you want to install SD.Next.
Using SD.Next
Install SD.Next from Github:
git clone https://github.com/vladmandic/automatic
Then enter into the automatic folder:
cd automatic
Then start WebUI with this command:
.\webui.bat --use-ipex
Note: It will install the necessary libraries at the first run so it will take a while depending on your internet.
Linux and WSL Installation
Docker Image
You can use a docker image if you don't want to manually install everything:
https://blog.nuullll.com/ipex-sd-docker-for-arc-gpu/#/getting-started
Install Intel OneAPI and Compute Runtime
Ubuntu
Use Ubuntu 23.04 or newer because we will need Linux 6.2 kernel or newer.
Update your kernel to at least Linux 6.2 if you are on older Ubuntu builds.
Note: Updating kernel is not neccesary for WSL.
Then add the package lists for Intel OneAPI:
sudo apt-get install -y gpg-agent wget
wget -qO - https://repositories.intel.com/graphics/intel-graphics.key | sudo gpg --dearmor --output /usr/share/keyrings/intel-graphics.gpg
echo 'deb [arch=amd64,i386 signed-by=/usr/share/keyrings/intel-graphics.gpg] https://repositories.intel.com/graphics/ubuntu jammy arc' | sudo tee /etc/apt/sources.list.d/intel.gpu.jammy.list
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt update && sudo apt upgrade -y
Then install the necessary packages:
sudo apt-get install intel-opencl-icd intel-level-zero-gpu level-zero intel-media-va-driver-non-free libmfx1 libgl-dev intel-oneapi-compiler-dpcpp-cpp intel-oneapi-mkl python3-pip python3-venv git unzip libjemalloc-dev
Arch Linux
Install the necessary packages for Arch Linux:
pacman -S git unzip python-pip python-virtualenv jemalloc intel-media-driver intel-oneapi-basekit intel-compute-runtime intel-graphics-compiler intel-opencl-clang
Using SD.Next
Install SD.Next from Github:
git clone https://github.com/vladmandic/automatic
Then enter into the automatic folder:
cd automatic
Then start WebUI with this command:
./webui.sh --use-ipex
Note: It will install the necessary libraries at the first run so it will take a while depending on your internet.