LLM/Intel Pro Arc B70/2026-06-20

From Fundamental Ramen
Jump to navigation Jump to search

Setup ssh key for github.com

Host         github.com
IdentityFile ~/.ssh/xxx.pem

Download source

sudo apt install git cmake
sudo apt install libssl-dev openssl
mkdir -p ~/llama.cpp/src
git clone https://github.com/ggerganov/llama.cpp ~/llama.cpp/src

Build

Test CPU version

# build
cmake -B build -DGGML_NATIVE=ON
cmake --build build --config Release

# clean
cmake --build build --target clean

Test OpenVINO version

# setup apt source for OpenVINO
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
sudo gpg --output /etc/apt/trusted.gpg.d/intel.gpg --dearmor GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
echo "deb https://apt.repos.intel.com/openvino ubuntu24 main" | sudo tee /etc/apt/sources.list.d/intel-openvino.list

# install OpenVINO and dependencies
sudo apt update
sudo apt install -y openvino
sudo apt install -y libtbb-dev opencl-c-headers ocl-icd-opencl-dev

# build
cmake -B build-openvino -DGGML_OPENVINO=ON -DCMAKE_INSTALL_RPATH="\$ORIGIN/../lib"
cmake --build build-openvino --config Release

# Install 
cmake --install build-openvino --prefix ~/llama.cpp/openvino

# clean
cmake --build build-openvino --target clean

Test SYCL version

# apt install intel-oneapi-compiler-dpcpp-cpp-runtime
sudo apt install intel-oneapi-mkl-devel
sudo apt install intel-oneapi-compiler-dpcpp-cpp
source /opt/intel/oneapi/setvars.sh
:: initializing oneAPI environment ...
   bash: BASH_VERSION = 5.2.21(1)-release
   args: Using "$@" for setvars.sh arguments: --force
:: compiler -- latest
:: debugger -- latest
:: dev-utilities -- latest
:: dpl -- latest
:: mkl -- latest
:: tbb -- latest
:: tcm -- latest
:: umf -- latest
:: oneAPI environment initialized ::
# build
cmake -B build-sycl \
  -DCMAKE_CXX_COMPILER=icpx \
  -DGGML_SYCL=ON \
  -DMKL_DIR=/opt/intel/oneapi/mkl/latest/lib/cmake/mkl \
  -DCMAKE_INSTALL_RPATH="\$ORIGIN/../lib"
cmake --build build-sycl --config Release

# Install 
cmake --install build-sycl --prefix ~/llama.cpp/sycl

# clean
cmake --build build-sycl --target clean