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
Tensorflow-cpu-aws prevents building ARM/multi-arch containers from a x86 machine #60751
Comments
Hi @celeste-zeng , The package The pre built pip wheels for X86_64 built and maintained by tensorflow itself which you can install through Please refer the documentation source for more details. May be @elfringham can add some more valuable points here. Thanks! |
This does not look like a problem that is specific to TensorFlow. I think your problem is all about creating a docker container for a foreign architecture from your x86 machine. In order to do that you need to add qemu to the mix so that there is an environment that allows the docker container to execute. |
Referring to above comment have you made any progress ? I too of the opinion that this is not a Tensorflow relevant issue if you are looking for what mentioned in above comment. WDYT ? |
Hi @SuryanarayanaY , Thanks for following up! And yes I don't think it is a Tensorflow relevant issue.The fix is that when building an ARM container with tensorflow from an x86 machine, tensorflow-cpu-aws needs to be explicitly added to the requirements as well. |
Click to expand!
Issue Type
Bug
Have you reproduced the bug with TF nightly?
No
Source
source
Tensorflow Version
2.12
Custom Code
Yes
OS Platform and Distribution
Linux Debian 6.1.20-2rodete1
Mobile device
No response
Python version
Python 3.8.9
Bazel version
No response
GCC/Compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current Behaviour?
On a x86 machine, I tried to build Beam Python multi-arch containers whose base image requirement include tensorflow2.12. The x86 components were built successfully but encountered the following error while building the ARM components:
#39 [linux/arm64 beam 11/16] RUN pip check || (echo "Container does not include required Beam dependencies or has conflicting dependencies. If Beam dependencies have changed, you need to regenerate base_image_requirements.txt files. See: https://s.apache.org/beam-python-requirements-generate" && exit 1) #39 20.81 tensorflow 2.12.0 requires tensorflow-cpu-aws, which is not installed.
I also tried to install tensorflow-cpu-aws manually by running pip install tensorflow-cpu-aws on the x86 machine and got the following error:
ERROR: Could not find a version that satisfies the requirement tensorflow-cpu-aws (from versions: none) ERROR: No matching distribution found for tensorflow-cpu-aws
An ARM container image required tensorflow can't be built from a x86 machine because it will try to install tensorflow-cpu-aws, which can't be installed from a x86 machine.
I wonder if it is there anything we can do to resolve this? Otherwise for all ARM containers which are built from a x86 machine, their base image requirements can't contain tensorflow.
Thanks!
Standalone code to reproduce the issue
Relevant log output
No response
The text was updated successfully, but these errors were encountered: