Skip to content

Commit dbd0c15

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

File tree

1 file changed

+136
-22
lines changed

1 file changed

+136
-22
lines changed

.travis.yml

+136-22
Original file line numberDiff line numberDiff line change
@@ -104,47 +104,144 @@ 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+
dist: xenial
141+
compiler: clang
142+
addons:
143+
apt:
144+
packages: &xenial_intel_packages
115145
- g++-5
116-
# POCL
117-
- libltdl-dev
118-
- libhwloc-dev
119-
- pkg-config
120-
- libedit-dev
146+
# Boost
147+
- libboost-chrono1.58-dev
148+
- libboost-date-time1.58-dev
149+
- libboost-test1.58-dev
150+
- libboost-system1.58-dev
151+
- libboost-filesystem1.58-dev
152+
- libboost-timer1.58-dev
153+
- libboost-program-options1.58-dev
154+
- libboost-thread1.58-dev
121155
# Misc
122156
- python-yaml
123157
- lcov
124158
- libopencv-dev
125-
sources: &xenial_pocl_sources_latest_boost
159+
sources: &xenial_intel_packages
126160
- ubuntu-toolchain-r-test
127161
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"
162+
- OPENCL_LIB=intel
163+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
164+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
133165
# GCC
134166
- os: linux
135167
dist: xenial
136168
compiler: gcc
137169
addons:
138170
apt:
139-
packages: *xenial_pocl_packages_latest_boost
140-
sources: *xenial_pocl_sources_latest_boost
171+
packages: *xenial_intel_packages
172+
sources: *xenial_intel_packages
141173
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"
174+
- OPENCL_LIB=intel
175+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
176+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
177+
# Linux, Intel OpenCL 2.0
178+
# CLANG
179+
- os: linux
180+
dist: xenial
181+
compiler: clang
182+
addons:
183+
apt:
184+
packages: *xenial_intel_packages
185+
sources: *xenial_intel_packages
186+
env:
187+
- OPENCL_LIB=intel
188+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200"
189+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
190+
# GCC
191+
- os: linux
192+
dist: xenial
193+
compiler: gcc
194+
addons:
195+
apt:
196+
packages: *xenial_intel_packages
197+
sources: *xenial_intel_packages
198+
env:
199+
- OPENCL_LIB=intel
200+
- ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200"
201+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
202+
# Linux, Intel OpenCL 2.1, New Boost Libs, C++11, Coverage
203+
# CLANG
204+
- os: linux
205+
dist: xenial
206+
compiler: clang
207+
cache:
208+
ccache: true
209+
directories:
210+
- ${DEPS_DIR}/boost
211+
addons:
212+
apt:
213+
packages: &xenial_intel_latest_boost_packages
214+
- g++-5
215+
# Misc
216+
- python-yaml
217+
- lcov
218+
- libopencv-dev
219+
sources: &xenial_intel_latest_boost_sources
220+
- ubuntu-toolchain-r-test
221+
env:
222+
- OPENCL_LIB=intel
223+
- BOOST_VERSION="1_67_0"
224+
- ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201"
225+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON"
226+
# GCC
227+
- os: linux
228+
dist: xenial
229+
compiler: gcc
230+
cache:
231+
ccache: true
232+
directories:
233+
- ${DEPS_DIR}/boost
234+
addons:
235+
apt:
236+
packages: *xenial_intel_latest_boost_packages
237+
sources: *xenial_intel_latest_boost_sources
238+
env:
239+
- OPENCL_LIB=intel
240+
- BOOST_VERSION="1_67_0"
241+
- COVERAGE=true
242+
- ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201"
243+
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON -DBOOST_COMPUTE_USE_CPP11=ON"
244+
- COVERAGE=true
148245

149246
############################################################################
150247
# OSX
@@ -215,6 +312,8 @@ install:
215312
mkdir -p ${DEPS_DIR}/boost
216313
rm -rf ${DEPS_DIR}/boost/*
217314
# Download
315+
BOOST_BASENAME=$(echo ${BOOST_VERSION} | awk -F '_' '{print $1 "." $2 "." $3 }')
316+
BOOST_URL="https://dl.bintray.com/boostorg/release/${BOOST_BASENAME}/source/boost_${BOOST_VERSION}.tar.gz"
218317
travis_retry wget --no-check-certificate --quiet -O - ${BOOST_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}/boost${BOOST_VERSION}
219318
pushd ${DEPS_DIR}/boost${BOOST_VERSION}
220319
# Configure and install
@@ -261,6 +360,21 @@ install:
261360
fi
262361
fi
263362
363+
############################################################################
364+
# Install Intel OpenCL Runtime
365+
############################################################################
366+
- |
367+
if [[ ${TRAVIS_OS_NAME} == "linux" && ${OPENCL_LIB} == "intel" ]]; then
368+
# https://software.intel.com/en-us/articles/opencl-drivers#cpu-section
369+
PACKAGE_URL=http://registrationcenter-download.intel.com/akdlm/irc_nas/vcp/13793/l_opencl_p_18.1.0.013.tgz
370+
PACKAGE_NAME=l_opencl_p_18.1.0.013
371+
372+
wget -q ${PACKAGE_URL} -O /tmp/opencl_runtime.tgz
373+
tar -xzf /tmp/opencl_runtime.tgz -C /tmp
374+
sed 's/decline/accept/g' -i /tmp/${PACKAGE_NAME}/silent.cfg
375+
sudo /tmp/${PACKAGE_NAME}/install.sh -s /tmp/${PACKAGE_NAME}/silent.cfg
376+
fi
377+
264378
script:
265379
############################################################################
266380
# Build Boost.Compute tests, benchmarks and examples
@@ -285,4 +399,4 @@ after_success:
285399
lcov --directory test --base-directory ../include/boost/compute/ --capture --output-file coverage.info
286400
lcov --remove coverage.info '/usr*' '*/test/*' '*/deps/*' -o coverage.info
287401
cd .. && coveralls-lcov build/coverage.info
288-
fi
402+
fi

0 commit comments

Comments
 (0)