singa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hob...@googlemail.com
Subject Fwd: Build from source with OpenCL
Date Mon, 21 Nov 2016 14:00:56 GMT
Hi all,

I'm trying to build Singa from source with OpenCL support on my Ubuntu
14.04 with AMD Radeon Mobility HD5650. Compilation and installation of
ViennaCL works alright.
Trying cmake -DUSE_MODULES=ON -DUSE_PYTHON=ON -DUSE_OPENCL=ON ..
in the build directory gives me the error:

    "CMake Error at cmake/Dependencies.cmake:95 (FIND_PACKAGE):
      By not providing "FindOpenCL.cmake" in CMAKE_MODULE_PATH this project has
      asked CMake to find a package configuration file provided by
    "OpenCL", but
      CMake did not find one.

      Could not fi..."

although I set several paths in environment variables in .bashrc:

    export
    CMAKE_INCLUDE_PATH=/opt/AMDAPPSDK-3.0/include:/usr/local/include:$CMAKE_INCLUDE_PATH
    export
    CMAKE_LIBRARY_PATH=/opt/AMDAPPSDK-3.0/lib:/usr/local/lib/cmake/viennacl:$CMAKE_LIBRARY_PATH
    export
    LD_LIBRARY_PATH="/opt/AMDAPPSDK-3.0/lib/x86:/opt/AMDAPPSDK-3.0/lib/x86_64:/usr/local/lib/cmake/viennacl":$LD_LIBRARY_PATH
    export PATH=~/Downloads/ViennaCL-1.7.1:$PATH
    export OpenCL_DIR="/opt/AMDAPPSDK-3.0:/usr/local/lib/cmake/viennacl"
    export OPENCL_ROOT_DIR=/opt/AMDAPPSDK-3.0
    export AMDAPPSDKROOT="opt/AMDAPPSDK-3.0"

Somewhere I found, that adding a line to the cmake/Dependencies.cmake:
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "/usr/local/lib/cmake/viennacl")
will help, and something changed while executing cmake -DUSE...

    "-- Found OPENCL: /usr/lib/x86_64-linux-gnu/libOpenCL.so
    CMake Error at cmake/Dependencies.cmake:97 (MESSAGE):
      OpenCL was requested, but not found."

So OpenCL was found but on the next line again not recognized.
A further hack of the Dependencies.cmake, commenting out the following
lines:
      FIND_PACKAGE(OpenCL REQUIRED)
      IF(NOT OpenCL_FOUND)
#        MESSAGE(SEND_ERROR "OpenCL was requested, but not found.")
#    ELSE()
         #MESSAGE(STATUS "Found OpenCL headers at ${OpenCL_INCLUDE_DIRS}")
         INCLUDE_DIRECTORIES(SYSTEM ${OpenCL_INCLUDE_DIR})

lead to a successful cmake and make compilation (although with much
"unused variables" warnings).
Executing the unit tests with ./bin/test_singa then give me much code
output and 3 failed tests:
    [  FAILED  ] OpenCL_TensorMath.Bernoulli
    [  FAILED  ] OpenCL_TensorMath.Gaussian
    [  FAILED  ] OpenCL_TensorMath.Uniform

So my question: Is it a problem of the cmake configuration or do I have
i.e. only to add another directory to the environment variables or what
is wrong? :)

Best regards,
Holger


Mime
View raw message