Skip to content

Commit 56fabe6

Browse files
Zialusjszuppe
authored andcommitted
Add OpenCL Intel Platform to Travis CI
Changes extracted from PR boostorg#804
1 parent be85263 commit 56fabe6

File tree

1 file changed

+131
-23
lines changed

1 file changed

+131
-23
lines changed

.travis.yml

+131-23
Original file line numberDiff line numberDiff line change
@@ -104,47 +104,138 @@ matrix:
104104
- OPENCL_LIB=pocl
105105
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=101"
106106
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
107-
# Xenial, OpenCL 1.2, New Boost Libs, C++11, Coverage
107+
# Xenial, OpenCL 1.2
108108
# CLANG
109109
- os: linux
110110
dist: xenial
111111
compiler: clang
112112
addons:
113113
apt:
114-
packages: &xenial_pocl_packages_latest_boost
114+
packages: *xenial_pocl_packages
115+
sources: *xenial_pocl_sources
116+
env:
117+
- OPENCL_LIB=pocl
118+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
119+
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
120+
# GCC
121+
- os: linux
122+
dist: xenial
123+
compiler: gcc
124+
addons:
125+
apt:
126+
packages: *xenial_pocl_packages
127+
sources: *xenial_pocl_sources
128+
env:
129+
- OPENCL_LIB=pocl
130+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
131+
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON"
132+
133+
############################################################################
134+
# Intel OpenCL Runtime builds (1.2, 2.0, 2.1)
135+
############################################################################
136+
137+
# Linux, Intel OpenCL 1.2
138+
# CLANG
139+
- os: linux
140+
compiler: clang
141+
addons:
142+
apt:
143+
packages: &xenial_intel_packages
115144
- g++-5
116-
# POCL
117-
- libltdl-dev
118-
- libhwloc-dev
119-
- pkg-config
120-
- libedit-dev
145+
# Boost
146+
- libboost-chrono1.58-dev
147+
- libboost-date-time1.58-dev
148+
- libboost-test1.58-dev
149+
- libboost-system1.58-dev
150+
- libboost-filesystem1.58-dev
151+
- libboost-timer1.58-dev
152+
- libboost-program-options1.58-dev
153+
- libboost-thread1.58-dev
121154
# Misc
122155
- python-yaml
123156
- lcov
124157
- libopencv-dev
125-
sources: &xenial_pocl_sources_latest_boost
158+
sources: &xenial_intel_packages
126159
- ubuntu-toolchain-r-test
127160
env:
128-
- OPENCL_LIB=pocl
129-
- BOOST_VERSION="1_67_0"
130-
- BOOST_URL="https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.tar.gz"
131-
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
132-
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON"
161+
- OPENCL_LIB=intel
162+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
163+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
133164
# GCC
134165
- os: linux
135-
dist: xenial
136166
compiler: gcc
137167
addons:
138168
apt:
139-
packages: *xenial_pocl_packages_latest_boost
140-
sources: *xenial_pocl_sources_latest_boost
169+
packages: *xenial_intel_packages
170+
sources: *xenial_intel_packages
141171
env:
142-
- OPENCL_LIB=pocl
143-
- COVERAGE=true
144-
- BOOST_VERSION="1_67_0"
145-
- BOOST_URL="https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.tar.gz"
146-
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
147-
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON -DBOOST_COMPUTE_USE_CPP11=ON"
172+
- OPENCL_LIB=intel
173+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
174+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
175+
# Linux, Intel OpenCL 2.0
176+
# CLANG
177+
- os: linux
178+
compiler: clang
179+
addons:
180+
apt:
181+
packages: *xenial_intel_packages
182+
sources: *xenial_intel_packages
183+
env:
184+
- OPENCL_LIB=intel
185+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200"
186+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
187+
# GCC
188+
- os: linux
189+
compiler: gcc
190+
addons:
191+
apt:
192+
packages: *xenial_intel_packages
193+
sources: *xenial_intel_packages
194+
env:
195+
- OPENCL_LIB=intel
196+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200"
197+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
198+
# Linux, Intel OpenCL 2.1, New Boost Libs, C++11, Coverage
199+
# CLANG
200+
- os: linux
201+
compiler: clang
202+
cache:
203+
ccache: true
204+
directories:
205+
- ${DEPS_DIR}/boost
206+
addons:
207+
apt:
208+
packages: &xenial_intel_latest_boost_packages
209+
- g++-5
210+
# Misc
211+
- python-yaml
212+
- lcov
213+
- libopencv-dev
214+
sources: &xenial_intel_latest_boost_sources
215+
- ubuntu-toolchain-r-test
216+
env:
217+
- OPENCL_LIB=intel
218+
- BOOST_VERSION="1_67_0"
219+
- ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201"
220+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON"
221+
# GCC
222+
- os: linux
223+
compiler: gcc
224+
cache:
225+
ccache: true
226+
directories:
227+
- ${DEPS_DIR}/boost
228+
addons:
229+
apt:
230+
packages: *xenial_intel_latest_boost_packages
231+
sources: *xenial_intel_latest_boost_sources
232+
env:
233+
- OPENCL_LIB=intel
234+
- BOOST_VERSION="1_67_0"
235+
- COVERAGE=true
236+
- ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201"
237+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON -DBOOST_COMPUTE_USE_CPP11=ON"
238+
- COVERAGE=true
148239

149240
############################################################################
150241
# OSX
@@ -215,6 +306,8 @@ install:
215306
mkdir -p ${DEPS_DIR}/boost
216307
rm -rf ${DEPS_DIR}/boost/*
217308
# Download
309+
BOOST_BASENAME=$(echo ${BOOST_VERSION} | awk -F '_' '{print $1 "." $2 "." $3 }')
310+
BOOST_URL="https://dl.bintray.com/boostorg/release/${BOOST_BASENAME}/source/boost_${BOOST_VERSION}.tar.gz"
218311
travis_retry wget --no-check-certificate --quiet -O - ${BOOST_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}/boost${BOOST_VERSION}
219312
pushd ${DEPS_DIR}/boost${BOOST_VERSION}
220313
# Configure and install
@@ -261,6 +354,21 @@ install:
261354
fi
262355
fi
263356
357+
############################################################################
358+
# Install Intel OpenCL Runtime
359+
############################################################################
360+
- |
361+
if [[ ${TRAVIS_OS_NAME} == "linux" && ${OPENCL_LIB} == "intel" ]]; then
362+
# https://software.intel.com/en-us/articles/opencl-drivers#cpu-section
363+
PACKAGE_URL=http://registrationcenter-download.intel.com/akdlm/irc_nas/vcp/13793/l_opencl_p_18.1.0.013.tgz
364+
PACKAGE_NAME=l_opencl_p_18.1.0.013
365+
366+
wget -q ${PACKAGE_URL} -O /tmp/opencl_runtime.tgz
367+
tar -xzf /tmp/opencl_runtime.tgz -C /tmp
368+
sed 's/decline/accept/g' -i /tmp/${PACKAGE_NAME}/silent.cfg
369+
sudo /tmp/${PACKAGE_NAME}/install.sh -s /tmp/${PACKAGE_NAME}/silent.cfg
370+
fi
371+
264372
script:
265373
############################################################################
266374
# Build Boost.Compute tests, benchmarks and examples
@@ -285,4 +393,4 @@ after_success:
285393
lcov --directory test --base-directory ../include/boost/compute/ --capture --output-file coverage.info
286394
lcov --remove coverage.info '/usr*' '*/test/*' '*/deps/*' -o coverage.info
287395
cd .. && coveralls-lcov build/coverage.info
288-
fi
396+
fi

0 commit comments

Comments
 (0)