Skip to content

Commit aee6d10

Browse files
update build documentation
- add information about libdrm and libva compilation libva is needed to support cl_intel_va_api_media_sharing extension libdrm is needed to compile libva - add information about building on Centos 7 Change-Id: I56df50c7d312b4e5be0f85576300a5d1ba311e80
1 parent c2455b4 commit aee6d10

File tree

4 files changed

+158
-19
lines changed

4 files changed

+158
-19
lines changed

README.md

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,28 @@ motivation and intentions wrt OpenCL support in the open source.
1313

1414
The Intel(R) Graphics Compute Runtime for OpenCL(TM) is distributed under the MIT License.
1515

16-
You may obtain a copy of the License at:
17-
18-
https://opensource.org/licenses/MIT
16+
You may obtain a copy of the License at: https://opensource.org/licenses/MIT
1917

2018
## Dependencies
2119

22-
GmmLib - https://github.com/intel/gmmlib
23-
Intel Graphics Compiler - https://github.com/intel/intel-graphics-compiler
24-
Google Test v1.7.0 - https://github.com/google/googletest
25-
Google Mock v1.7.0 - https://github.com/google/googlemock
26-
Khronos OpenCL Headers - https://github.com/KhronosGroup/OpenCL-Headers
20+
* GmmLib - https://github.com/intel/gmmlib
21+
* Intel Graphics Compiler - https://github.com/intel/intel-graphics-compiler
22+
* Google Test v1.7.0 - https://github.com/google/googletest
23+
* Google Mock v1.7.0 - https://github.com/google/googlemock
24+
* Khronos OpenCL Headers - https://github.com/KhronosGroup/OpenCL-Headers
25+
26+
## Optional dependencies
27+
28+
Below packages are needed to enable [cl_intel_va_api_media_sharing](https://www.khronos.org/registry/OpenCL/extensions/intel/cl_intel_va_api_media_sharing.txt) extension
29+
30+
* libdrm - https://anongit.freedesktop.org/git/mesa/drm.git
31+
* libva - https://github.com/intel/libva.git
2732

2833
## Supported Platforms
2934

30-
Intel Core Processors with Gen8 graphics devices (formerly Broadwell) - OpenCL 2.1
31-
Intel Core Processors with Gen9 graphics devices (formerly Skylake, Kaby Lake, Coffee Lake) - OpenCL 2.1
32-
Intel Atom Processors with Gen9 graphics devices (formerly Apollo Lake, Gemini Lake) - OpenCL 1.2
35+
* Intel Core Processors with Gen8 graphics devices (formerly Broadwell) - OpenCL 2.1
36+
* Intel Core Processors with Gen9 graphics devices (formerly Skylake, Kaby Lake, Coffee Lake) - OpenCL 2.1
37+
* Intel Atom Processors with Gen9 graphics devices (formerly Apollo Lake, Gemini Lake) - OpenCL 1.2
3338

3439
## Linking applications
3540

@@ -46,7 +51,9 @@ Create a pull request on github.com with your patch. Make sure your change is cl
4651
A maintainer will contact you if there are questions or concerns.
4752

4853
## See also
49-
* Building and installation: [BUILD.md](https://github.com/intel/compute-runtime/blob/master/documentation/BUILD.md)
54+
* Building and installation:
55+
* [Ubuntu 16.04](https://github.com/intel/compute-runtime/blob/master/documentation/BUILD_Ubuntu.md)
56+
* [Centos 7](https://github.com/intel/compute-runtime/blob/master/documentation/BUILD_Centos.md)
5057
* Contribution guidelines: [CONTRIB.md](https://github.com/intel/compute-runtime/blob/master/documentation/CONTRIB.md)
5158
* Known issues and limitations: [LIMITATIONS.md](https://github.com/intel/compute-runtime/blob/master/documentation/LIMITATIONS.md)
5259
* Frequently asked questions: [FAQ.md](https://github.com/intel/compute-runtime/blob/master/documentation/FAQ.md)

documentation/BUILD_Centos.md

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# Intel(R) Graphics Compute Runtime for OpenCL(TM)
2+
3+
## Building
4+
5+
*Instructions assume clean Centos 7.4.1708 installation.**
6+
7+
1. Download & install required dependencies
8+
9+
Example:
10+
11+
```shell
12+
sudo yum groups install "Development Tools"
13+
sudo yum install centos-release-scl epel-release
14+
sudo yum install devtoolset-4-gcc-c++ llvm-toolset-7-clang cmake3 ninja-build p7zip rpm-build dpkg xorg-x11-util-macros libpciaccess-devel which zlib-devel
15+
sudo /usr/sbin/alternatives --install /usr/bin/cmake cmake /usr/bin/cmake3 50
16+
```
17+
18+
2. Create workspace folder and download sources:
19+
```
20+
workspace
21+
|- clang_source https://github.com/llvm-mirror/clang
22+
|- common_clang https://github.com/intel/opencl-clang
23+
|- llvm_patches https://github.com/intel/llvm-patches
24+
|- llvm_source https://github.com/llvm-mirror/llvm
25+
|- gmmlib https://github.com/intel/gmmlib
26+
|- gmock https://github.com/google/googlemock
27+
|- gtest https://github.com/google/googletest
28+
|- igc https://github.com/intel/intel-graphics-compiler
29+
|- khronos https://github.com/KhronosGroup/OpenCL-Headers
30+
|- neo https://github.com/intel/compute-runtime
31+
```
32+
33+
Example:
34+
35+
```shell
36+
git clone -b release_40 https://github.com/llvm-mirror/clang clang_source
37+
git clone https://github.com/intel/opencl-clang common_clang
38+
git clone https://github.com/intel/llvm-patches llvm_patches
39+
git clone -b release_40 https://github.com/llvm-mirror/llvm llvm_source
40+
git clone https://github.com/intel/gmmlib gmmlib
41+
git clone -b release-1.7.0 https://github.com/google/googlemock gmock
42+
git clone -b release-1.7.0 https://github.com/google/googletest gtest
43+
git clone https://github.com/intel/intel-graphics-compiler igc
44+
git clone https://github.com/KhronosGroup/OpenCL-Headers khronos
45+
git clone https://github.com/intel/compute-runtime neo
46+
```
47+
48+
Note: Instructions for compiling *Intel Graphics Compiler* copied from https://github.com/intel/intel-graphics-compiler/blob/master/README.md
49+
50+
3. Create folder for build:
51+
52+
Example:
53+
54+
```shell
55+
mkdir build
56+
```
57+
58+
4. Enabling additional extension
59+
60+
* [cl_intel_va_api_media_sharing](https://github.com/intel/compute-runtime/blob/master/documentation/cl_intel_va_api_media_sharing.md)
61+
62+
5. Build complete driver:
63+
64+
```shell
65+
cd build
66+
scl enable devtoolset-4 llvm-toolset-7 "cmake -DBUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release ../neo"
67+
scl enable devtoolset-4 llvm-toolset-7 "make -j `nproc` package"
68+
```
69+
70+
## Installing
71+
72+
To install OpenCL driver please use rpm package generated during build
73+
74+
Example:
75+
76+
```shell
77+
sudo rpm -i intel-opencl-1.0-0.x86_64-igdrcl.rpm
78+
```
79+
80+
___(*) Other names and brands my be claimed as property of others.___

documentation/BUILD.md renamed to documentation/BUILD_Ubuntu.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22

33
## Building
44

5-
*Instructions assume clean Ubuntu* 16.04.3 LTS installation.*
5+
*Instructions assume clean Ubuntu 16.04.3 LTS installation.**
66

77
1. Download & install required dependencies
88

99
Example:
1010

1111
```shell
12-
sudo apt-get install ccache flex bison clang-4.0 cmake g++ git patch zlib1g-dev
12+
sudo apt-get install ccache flex bison clang-4.0 cmake g++ git patch zlib1g-dev autoconf xutils-dev libtool pkg-config libpciaccess-dev
1313
```
1414

1515
See [LIMITATIONS.md](https://github.com/intel/compute-runtime/blob/master/documentation/LIMITATIONS.md) for other requirements and dependencies, when building and installing NEO.
@@ -26,7 +26,6 @@ See [LIMITATIONS.md](https://github.com/intel/compute-runtime/blob/master/docume
2626
|- gtest https://github.com/google/googletest
2727
|- igc https://github.com/intel/intel-graphics-compiler
2828
|- khronos https://github.com/KhronosGroup/OpenCL-Headers
29-
|- libdrm https://anongit.freedesktop.org/git/mesa/drm.git
3029
|- neo https://github.com/intel/compute-runtime
3130
```
3231

@@ -42,7 +41,6 @@ git clone -b release-1.7.0 https://github.com/google/googlemock gmock
4241
git clone -b release-1.7.0 https://github.com/google/googletest gtest
4342
git clone https://github.com/intel/intel-graphics-compiler igc
4443
git clone https://github.com/KhronosGroup/OpenCL-Headers khronos
45-
git clone https://anongit.freedesktop.org/git/mesa/drm.git libdrm
4644
git clone https://github.com/intel/compute-runtime neo
4745
```
4846

@@ -56,15 +54,19 @@ Example:
5654
mkdir build
5755
```
5856

59-
4. Build complete driver:
57+
4. Enabling additional extension
58+
59+
* [cl_intel_va_api_media_sharing](https://github.com/intel/compute-runtime/blob/master/documentation/cl_intel_va_api_media_sharing.md)
60+
61+
5. Build complete driver:
6062

6163
```shell
6264
cd build
6365
cmake -DBUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release ../neo
6466
make -j`nproc` package
6567
```
6668

67-
## Install
69+
## Installing
6870

6971
To install OpenCL driver please use deb package generated during build
7072

@@ -74,4 +76,4 @@ Example:
7476
sudo dpkg -i intel-opencl-1.0-0.x86_64-igdrcl.deb
7577
```
7678

77-
___(*) Other names and brands my be claimed as property of others.___
79+
___(*) Other names and brands my be claimed as property of others.___
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# Intel(R) Graphics Compute Runtime for OpenCL(TM)
2+
3+
## Enabling [cl_intel_va_api_media_sharing](https://www.khronos.org/registry/OpenCL/extensions/intel/cl_intel_va_api_media_sharing.txt) extension
4+
5+
To enable cl_intel_va_api_media_sharing extension Neo needs to be compiled on system with libva 2.x installed.
6+
Before compilation additional packages have to be installed.
7+
8+
1. Download sources:
9+
10+
* libdrm https://anongit.freedesktop.org/git/mesa/drm.git
11+
* libva https://github.com/intel/libva.git
12+
13+
Example:
14+
15+
```shell
16+
git clone https://anongit.freedesktop.org/git/mesa/drm.git libdrm
17+
git clone https://github.com/intel/libva.git libva
18+
19+
2. Compile and install libdrm
20+
21+
Example:
22+
23+
```shell
24+
cd libdrm
25+
./autogen.sh
26+
make -j `nproc`
27+
sudo make install
28+
```
29+
30+
3. Compile and install libva
31+
32+
Example:
33+
34+
```shell
35+
cd libva
36+
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
37+
./autogen.sh
38+
make -j `nproc`
39+
sudo make install
40+
```
41+
42+
4. During Neo compilation verify libva was discovered
43+
44+
```shell
45+
-- Checking for module 'libva>=1.0.0'
46+
-- Found libva, version 1.1.0
47+
-- Looking for vaGetLibFunc in va
48+
-- Looking for vaGetLibFunc in va - found
49+
-- Using libva
50+
```

0 commit comments

Comments
 (0)