Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jusqua/visionsycl
Attempt to provide common image processing functions that runs on heterogeneous devices.
https://github.com/jusqua/visionsycl
cmake cpp dpcpp learn oneapi sycl
Last synced: 1 day ago
JSON representation
Attempt to provide common image processing functions that runs on heterogeneous devices.
- Host: GitHub
- URL: https://github.com/jusqua/visionsycl
- Owner: jusqua
- Created: 2024-10-16T13:50:43.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-11-15T20:21:23.000Z (2 days ago)
- Last Synced: 2024-11-15T21:23:42.265Z (2 days ago)
- Topics: cmake, cpp, dpcpp, learn, oneapi, sycl
- Language: C++
- Homepage:
- Size: 40 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Vision SYCL (with Intel® oneAPI)
Attempt to provide common image processing functions that runs on heterogeneous devices.
## Installing Dependencies
- C++ Development Tools
- [Intel® oneAPI Base Toolkit](https://www.intel.com/content/www/us/en/developer/tools/oneapi/overview.html)
- [CMake](https://cmake.org/)
- [Ninja](https://ninja-build.org/)### Windows
Download the dependencies from the websites listed [above](#installing-dependencies).
First install the `Visual Studio Build Tools`:
```sh
winget install Microsoft.VisualStudio.2022.BuildTools
```
Open `Visual Studio Installer`, select current installed version, click `Modify` button, select `Development with C++` checkbox and hit `Modify` button, and wait it finish.For `oneAPI Base Toolkit` you need to install `Visual Studio Build Tools` before install `oneAPI Base Toolkit`.
Install the netinstaller from the website listed above, and follow the instructions.For `CMake` and `Ninja`:
```sh
winget install Kitware.CMake Ninja-build.Ninja
```### Linux
Installing `CMake`, `Ninja` and basic development package and tools via package manager:
#### Debian/Ubuntu
```sh
sudo apt install cmake ninja-build pkg-config build-essential
```#### Fedora
```sh
sudo dnf install cmake ninja-build pkg-config
sudo dnf group install "Development Tools"
```#### OpenSUSE
```sh
sudo zypper install cmake ninja pkg-config
sudo zypper install -t pattern devel_C_C++
```Add the `oneAPI Base Toolkit` repo from the website listed [above](#installing-dependencies).
```sh
# Switch apt to dnf/zypper if aplicable
sudo apt install intel-oneapi-base-toolkit
```## Installing SYCL Backends
### Windows
Backends for Intel hardware are installed by default, for NVIDIA and AMD see [bellow](#nvidia-and-amd).
### Linux
This is for Intel backend, for NVIDIA and AMD see [below](#nvidia-and-amd).
#### Debian/Ubuntu
```sh
sudo apt install intel-opencl libze1 libze-intel-gpu1
```#### Fedora
```sh
sudo dnf install intel-compute-runtime oneapi-level-zero
```#### OpenSUSE
```sh
sudo zypper install intel-opencl libze_intel_gpu1
```### NVIDIA and AMD
See: (Codeplay)[https://developer.codeplay.com/] solutions.
## Setup environment
### Windows
Using `cmd`:
```sh
"C:\Program Files (x86)\Intel\oneAPI\setvars.bat" --include-intel-llvm
```### Linux
Using `bash`:
```sh
. /opt/intel/oneapi/setvars.sh --include-intel-llvm
```## Building
After [set up your environment](#setup-environment), in this project root, run:
```sh
cmake --preset linux # or windows
cmake --build build
```