Giter Site home page Giter Site logo

Comments (9)

DuncanMcBain avatar DuncanMcBain commented on May 30, 2024

Hi @ashokbugude, thanks for your report. Could you give us some more information, please? We'd like to know what operating system you're building for, and what branch you're building from. Ideally you should use this branch, as while we will upstream our modifications to TensorFlow there is sometimes a delay before they are accepted. Therefore, more recent commits can be found there first.
Thanks,
Duncan.

from computecpp-sdk.

ashokbugude avatar ashokbugude commented on May 30, 2024

Hi @DuncanMcBain . Thanks for your response. Below are the details of tensorflow I am using

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):No
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): 17.04
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): 1.3
Python version: 2.7
Bazel version (if compiling from source): 0.5.1
GCC/Compiler version (if compiling from source): 6.0.3
CUDA/cuDNN version: N/A
GPU model and memory: N/A

Actual Requirement : To cross-build Tensorflow using --config=sycl for arm 32 bit system

Things Done
1. Able to cross-build Tensorflow without --config=sycl for arm 32 bit system using below command

bazel build --crosstool_top=//armv7l-compiler:toolchain --cpu=armeabi-v7a tensorflow:libtensorflow_cc.so --cxxopt="-std=c++11"

Result : Built Fine without errors

2 cross-build Tensorflow without --config=sycl for arm 32 bit system using below command

bazel build -c opt --copt="-mfpu=neon" --crosstool_top=//armv7l-compiler:toolchain --cpu=armeabi-v7a tensorflow:libtensorflow_cc.so --cxxopt="-std=c++11" --config=sycl
Result
Build Failed at Last moment while trying to link libComputeCpp.so

I have downloaded the sdk from codeplaysoftware website for Linux16.04 and arm64 bit. Can I know if there is 32 bit version .

If not can I please know if I can get source code to build libComputeCpp.so using cross compilation
for arm 32 bit

I basically wanted to improve the speed of TensorFlow on embedded 32 bit arm device by using opencl or sycl. Could you also please suggest any other optimization flags to be used while building.

Thanks

from computecpp-sdk.

DuncanMcBain avatar DuncanMcBain commented on May 30, 2024

I'm sorry, but cross-compiling TensorFlow with SYCL is not currently supported for technical reasons. I expect that this situation will change in the future, but won't work right now (in effect, you are already cross-compiling when using SYCL, and you can't cross twice). While we don't distribute for arm32 right now, there's nothing really stopping us doing that in future. Can you talk about the hardware you're targeting particularly?

from computecpp-sdk.

ashokbugude avatar ashokbugude commented on May 30, 2024

Thanks for your response . I am targeting 'arm-v7a' ie 32 bit arm architecture . I was actually looking for source code to build libComputeCpp.so so that I can try cross-build myself as I am in need of it badly

from computecpp-sdk.

DuncanMcBain avatar DuncanMcBain commented on May 30, 2024

I've asked internally, we will likely be releasing an arm32 build of ComputeCpp with our next public version. We're building and testing it internally anyway, so it should be fairly easy.

That said, you will still not be able to cross-compile TensorFlow for the reasons I outlined above. While we have plans to improve this, making modifications to TensorFlow's build scripts is a challenging process, so I can't say when it might be available. We do want to get it done, however, as we expect it will bring a large reduction in build times.

Which OpenCL implementation are you targeting? ComputeCpp requires some non-core feature support to be able to run, in particular it requires either SPIR 1.2 or SPIR-V support to be able to run kernels on-device.

from computecpp-sdk.

ashokbugude avatar ashokbugude commented on May 30, 2024

from computecpp-sdk.

DuncanMcBain avatar DuncanMcBain commented on May 30, 2024

I don't think there will be any problems linking against code compiled from, say, the linaro toolchain. At least, we've not seen any internally.

SPIR is an intermediate format based on LLVM IR which allows developers not to have to write OpenCL kernels directly in OpenCL C, and is the format that ComputeCpp primarily targets. You can find more information here: https://www.khronos.org/spir/
You can find out if you have SPIR support by running the "clinfo" tool, which you can likely install via your package manager. If you grep the output for the string "cl_khr_spir" and find it, your device will be able to run ComputeCpp.

from computecpp-sdk.

DuncanMcBain avatar DuncanMcBain commented on May 30, 2024

Hi @ashokbugude,
Did you manage to make any progress with this? Did you get any useful output from, say, cl_info and the like?

from computecpp-sdk.

ashokbugude avatar ashokbugude commented on May 30, 2024

from computecpp-sdk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.