Open jakemdaly opened 4 years ago
Hi @jakemdaly,
Thanks for your issue - it's very useful to get direct feedback from users.
ONEDNN_VERSION
should be set as an environment variable in the Docker image. This is done by passing it into docker build
as a --build-arg
.
The build.sh
script does this by setting a version here and passing it to the Docker build in extra_arg
.
Inside the Dockerfile, this build argument is picked up here and set as an environment variable in the image here - that last step is where the ONEDNN_VERSION
that the build-onednn.sh
script, running inside the image, comes from.
If you're following the steps in the readme then this should all be taken care of by build.sh
.
Note: only particular combinations of oneDNN and TensorFlow versions are supported, as there are some patches applied to each at present, so if you alter the version numbers set in build.sh
it may not work as expected. We plan to update in the near future to support TF 2.3.
Also, oneDNN is only used by the TensorFlow build if the build.sh
script is run with the --onednn
or --dnnl
flags (although it is always built along with the other dependencies).
I am trying to build Tensorflow docker image on an aarch64 device, and it's not able to find the ONEDNN_VERSION (it appears it's blank)
command that is failing in scripts/build-onednn.sh:
any advice?