Neo Zhang Jianyu af3ba5d946 [SYCL] update guide of SYCL backend (#5254) 1 年之前
..
CMakeLists.txt 0f648573dd ggml : add unified SYCL backend for Intel GPUs (#2690) 2 年之前
README.md 0f648573dd ggml : add unified SYCL backend for Intel GPUs (#2690) 2 年之前
build.sh 0f648573dd ggml : add unified SYCL backend for Intel GPUs (#2690) 2 年之前
ls-sycl-device.cpp b2b9f025e7 format license text, restore apache license by legal suggestion (#5233) 1 年之前
run-llama2.sh 0f648573dd ggml : add unified SYCL backend for Intel GPUs (#2690) 2 年之前
win-build-sycl.bat 01684139c3 support SYCL backend windows build (#5208) 1 年之前
win-run-llama2.bat af3ba5d946 [SYCL] update guide of SYCL backend (#5254) 1 年之前

README.md

llama.cpp/example/sycl

This example program provide the tools for llama.cpp for SYCL on Intel GPU.

Tool

|Tool Name| Function|Status| |-|-|-| |ls-sycl-device| List all SYCL devices with ID, compute capability, max work group size, ect.|Support|

ls-sycl-device

List all SYCL devices with ID, compute capability, max work group size, ect.

  1. Build the llama.cpp for SYCL for all targets.

  2. Enable oneAPI running environment

    source /opt/intel/oneapi/setvars.sh
    
  3. Execute

    ./build/bin/ls-sycl-device
    

Check the ID in startup log, like:

found 4 SYCL devices:
  Device 0: Intel(R) Arc(TM) A770 Graphics,	compute capability 1.3,
    max compute_units 512,	max work group size 1024,	max sub group size 32,	global mem size 16225243136
  Device 1: Intel(R) FPGA Emulation Device,	compute capability 1.2,
    max compute_units 24,	max work group size 67108864,	max sub group size 64,	global mem size 67065057280
  Device 2: 13th Gen Intel(R) Core(TM) i7-13700K,	compute capability 3.0,
    max compute_units 24,	max work group size 8192,	max sub group size 64,	global mem size 67065057280
  Device 3: Intel(R) Arc(TM) A770 Graphics,	compute capability 3.0,
    max compute_units 512,	max work group size 1024,	max sub group size 32,	global mem size 16225243136

|Attribute|Note| |-|-| |compute capability 1.3|Level-zero running time, recommended | |compute capability 3.0|OpenCL running time, slower than level-zero in most cases|