Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ARM6/RPI: Executor failed to create kernel _FusedConv2D #24732

Closed
sdeoras opened this issue Jan 7, 2019 · 17 comments
Closed

ARM6/RPI: Executor failed to create kernel _FusedConv2D #24732

sdeoras opened this issue Jan 7, 2019 · 17 comments
Assignees
Labels
comp:lite TF Lite related issues stale This label marks the issue/pr stale - to be closed automatically if no activity stat:awaiting response Status - Awaiting response from author type:build/install Build and install issues

Comments

@sdeoras
Copy link
Contributor

sdeoras commented Jan 7, 2019

Please make sure that this is a bug. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:bug_template

System information

  • Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
    yes

  • OS Platform and Distribution (e.g., Linux Ubuntu 16.04):
    ARM 6 (Raspberry PI Zero W)

  • Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
    No

  • TensorFlow installed from (source or binary):
    Source at 92b598a

  • TensorFlow version (use command below):
    n/a

  • Python version:
    n/a

  • Bazel version (if compiling from source):
    n/a

  • GCC/Compiler version (if compiling from source):
    n/a

  • CUDA/cuDNN version:
    n/a

  • GPU model and memory:
    n/a

You can collect some of this information using our environment capture script
You can also obtain the TensorFlow version with
python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
n/a

Describe the current behavior
My use case is running TensorFlow as a C-library using Go interface. I am performing an image inferencing task using a model (.pb file). I see that my libtensorflow.so build works fine on ARM7 but fails on ARM6 with the following error:

2019-01-07 04:07:27.533445: E tensorflow/core/common_runtime/executor.cc:634] Executor failed to create kernel. Not found: No registered '_FusedConv2D' OpKernel for CPU devices compatible with node {{node module_apply_default/InceptionV3/InceptionV3/Conv2d_1a_3x3/Relu}}
	.  Registered:  <no registered kernels>

	 [[module_apply_default/InceptionV3/InceptionV3/Conv2d_1a_3x3/Relu]]
2019/01/07 04:07:27 session run:No registered '_FusedConv2D' OpKernel for CPU devices compatible with node {{node module_apply_default/InceptionV3/InceptionV3/Conv2d_1a_3x3/Relu}}
	.  Registered:  <no registered kernels>

	 [[module_apply_default/InceptionV3/InceptionV3/Conv2d_1a_3x3/Relu]]

Describe the expected behavior
expecting ARM6 build of libtensorflow.so and libtensorflow_framework.so to work the same as ARM7 build.

Code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate the problem.

Other info / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.

@sdeoras sdeoras changed the title Executor failed to create kernel _FusedConv2D ARM6/RPI: Executor failed to create kernel _FusedConv2D Jan 7, 2019
@msymp msymp self-assigned this Jan 9, 2019
@msymp msymp added the type:build/install Build and install issues label Jan 9, 2019
@msymp
Copy link

msymp commented Jan 9, 2019

Hello @sdeoras , Although your question is interesting, it is more of a systems query regarding ARM6 vs ARM7 builds, hence is best addressed on Stack Overflow at:
Stack Overflow
We shall close this issue now. Thanks.

@msymp msymp closed this as completed Jan 9, 2019
@sdeoras
Copy link
Contributor Author

sdeoras commented Jan 9, 2019

@msymp, np. i'll try to explore this issue on stack overflow. I could not tell from the error mesg if was code issue or ARM6 issue :)

@jvishnuvardhan jvishnuvardhan added type:bug Bug comp:lite TF Lite related issues type:build/install Build and install issues and removed type:build/install Build and install issues type:bug Bug labels Jan 30, 2019
@jvishnuvardhan jvishnuvardhan added the stat:awaiting tensorflower Status - Awaiting response from tensorflower label Feb 6, 2019
@gunan
Copy link
Contributor

gunan commented Feb 6, 2019

@petewarden may know

@jvishnuvardhan jvishnuvardhan assigned petewarden and unassigned gunan Feb 6, 2019
@tensorflowbutler tensorflowbutler removed the stat:awaiting tensorflower Status - Awaiting response from tensorflower label Feb 7, 2019
@ghost
Copy link

ghost commented Feb 12, 2019

Hello @sdeoras I have exactly the same problem on a armv7l board (cortex A9) with tensorflow 1.12.0. Do you solve this problem on StackOverflow (i didn't find any relevant questions on SO) ?

Regards.

@sdeoras
Copy link
Contributor Author

sdeoras commented Feb 12, 2019

@Nemo-Point: i saw the issue on arm 6 but things worked fine on arm 7. I tried master though. no, i have not found a solution so far.

@jvishnuvardhan jvishnuvardhan added the stat:awaiting tensorflower Status - Awaiting response from tensorflower label Feb 12, 2019
@petewarden
Copy link
Contributor

I'm not sure what's happening here unfortunately! I don't think I'll have a chance soon to debug, so adding contributions welcome.

@petewarden petewarden added stat:contribution welcome Status - Contributions welcome and removed stat:awaiting tensorflower Status - Awaiting response from tensorflower labels Feb 22, 2019
@petewarden petewarden removed their assignment Feb 22, 2019
@maliksyria
Copy link

hello
same error here
have you solve it ?

@njbuch
Copy link

njbuch commented Mar 10, 2019

Yep, same problem here on Raspberry 3+

@ghost
Copy link

ghost commented Mar 11, 2019

I solved my problem (Nitrogen Quad board - iMX6 - cortex A9, armv7l) by changing some compilation features following the notifications from ARM:

Using the build script provided by tensorflow for RASPBERRY boards, I used the following compilation line in tensorflow/tools/ci_build/pi/build_raspberry_pi.sh :

PI_COPTS="--copt=-march=armv7-a --copt=-mfpu=vfpv3
  --copt=-std=gnu11 --copt=-DS_IREAD=S_IRUSR --copt=-DS_IWRITE=S_IWUSR
  --copt=-O3
  --copt=-U__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1
  --copt=-U__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2
  --copt=-U__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8"
  WHEEL_ARCH=linux_armv7l

After cross-compiling and installing the wheel on the target board, everything was OK : training, testing, load & save models with a simple CNN on MNIST (classical example of Keras).

Regards

@mhurliman
Copy link

Any TF staff guidance on an ARM6l fix/workaround? It seems Tensorflow is keen to fuse the Conv2D & ReLU operations even if I make them separate ops - in contrast to using the activation parameter in tf.keras.layers.Conv2D.

@gunan
Copy link
Contributor

gunan commented Jan 14, 2020

@petewarden may have a comment on this.

@dudasdavid
Copy link

It seems fused Conv2D and ReLU operations can work on ARMv6 if I disable biasing in Conv2D operations (use_bias=False).

@github-actions
Copy link

This issue is stale because it has been open for 180 days with no activity. It will be closed if no further activity occurs. Thank you.

@github-actions github-actions bot added the stale This label marks the issue/pr stale - to be closed automatically if no activity label Mar 28, 2023
@pkgoogle
Copy link

Hi,

Thank you for opening this issue. Since this issue has been open for a long time, the code/debug information for this issue may not be relevant with the current state of the code base.

The TFLite team is constantly improving the framework by fixing bugs and adding new features. We suggest you try the latest TensorFlow version with the latest compatible hardware configuration which could potentially resolve the issue. If you are still facing the issue, please create a new GitHub issue with your latest findings, with all the debugging information which could help us investigate.

Please follow the release notes to stay up to date with the latest developments which are happening in the TFLite space.

@pkgoogle pkgoogle self-assigned this Aug 16, 2023
@pkgoogle pkgoogle added stat:awaiting response Status - Awaiting response from author and removed stat:contribution welcome Status - Contributions welcome labels Aug 16, 2023
@github-actions github-actions bot removed stale This label marks the issue/pr stale - to be closed automatically if no activity stat:awaiting response Status - Awaiting response from author labels Aug 17, 2023
@pkgoogle pkgoogle added the stat:awaiting response Status - Awaiting response from author label Aug 17, 2023
@github-actions
Copy link

This issue is stale because it has been open for 7 days with no activity. It will be closed if no further activity occurs. Thank you.

@github-actions github-actions bot added the stale This label marks the issue/pr stale - to be closed automatically if no activity label Aug 25, 2023
@github-actions
Copy link

github-actions bot commented Sep 1, 2023

This issue was closed because it has been inactive for 7 days since being marked as stale. Please reopen if you'd like to work on this further.

@github-actions github-actions bot closed this as completed Sep 1, 2023
@google-ml-butler
Copy link

Are you satisfied with the resolution of your issue?
Yes
No

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp:lite TF Lite related issues stale This label marks the issue/pr stale - to be closed automatically if no activity stat:awaiting response Status - Awaiting response from author type:build/install Build and install issues
Projects
None yet
Development

No branches or pull requests