Skip to content

Latest commit

 

History

History
87 lines (68 loc) · 2.32 KB

README.md

File metadata and controls

87 lines (68 loc) · 2.32 KB

oneAPI Level Zero

This repository contains the following components of oneAPI:

  • Copies of the Level Zero Specification API C/C++ header files
  • Level Zero Loader
  • Level Zero Validation Layer

This project is part of the larger oneAPI project. See Contributing below for details about submitting issues and pull requests.

oneAPI Specification: https://spec.oneapi.com/versions/latest/introduction.html

oneAPI Level Zero Specification: https://spec.oneapi.com/versions/latest/oneL0/index.html

The versions of the Level Zero API are listed in the file ze_driver.h in the ze_api_version_t enum.

Building and Installing

Project is defined using CMake.

The OpenCL headers are required for interop support. If they are installed in a non-standard location, specify their prefix with -D OPENCL_PATH=<prefix>.

Linux

General

mkdir build
cd build
cmake ..
cmake --build . --config Release
cmake --build . --config Release --target package
cmake --build . --config Release --target install

Ubuntu with Docker

mkdir build
mkdir -p .ccache

docker run \
  --rm \
  -v $PWD:$PWD \
  -w $PWD/build \
  -e CCACHE_DIR=$PWD/.ccache \
  -e CCACHE_BASEDIR=$PWD \
  $(docker build -q \
      --build-arg UID=$(id -u) \
      --build-arg GID=$(id -g) \
      --build-arg IMAGE_VERSION=eoan \
      - < docker/build-ubuntu.Dockerfile) \
  cmake \
    -G Ninja \
    -D CMAKE_C_COMPILER_LAUNCHER=ccache \
    -D CMAKE_CXX_COMPILER_LAUNCHER=ccache \
    -D CMAKE_BUILD_TYPE=Release \
    ..

docker run \
  --rm \
  -v $PWD:$PWD \
  -w $PWD/build \
  -e CCACHE_DIR=$PWD/.ccache \
  -e CCACHE_BASEDIR=$PWD \
  $(docker build -q \
      --build-arg UID=$(id -u) \
      --build-arg GID=$(id -g) \
      --build-arg IMAGE_VERSION=eoan \
      - < docker/build-ubuntu.Dockerfile) \
  cmake --build . --config Release

Contributing

We encourage anyone who wants to contribute to submit Issues and Pull Requests. We will help review these for proper alignment with the Level Zero Specification.

Specific coding conventions and standards guidelines are a work-in-progress, and we will post them here soon.