-
-
Notifications
You must be signed in to change notification settings - Fork 14.1k
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: 1.5.0 -> 1.8.0 #40689
tensorflow: 1.5.0 -> 1.8.0 #40689
Conversation
@GrahamcOfBorg build python36Packages.tensorflow python36Packages.tensorflowWithCuda python27Packages.tensorflow python27Packages.tensorflowWithCuda |
No attempt on aarch64-linux (full log) The following builds were skipped because they don't evaluate on aarch64-linux: python36Packages.tensorflow, python36Packages.tensorflowWithCuda, python27Packages.tensorflow, python27Packages.tensorflowWithCuda Partial log (click to expand)
|
Success on x86_64-darwin (full log) Attempted: python36Packages.tensorflow The following builds were skipped because they don't evaluate on x86_64-darwin: python36Packages.tensorflowWithCuda, python27Packages.tensorflow, python27Packages.tensorflowWithCuda Partial log (click to expand)
|
Failure on x86_64-linux (full log) Attempted: python36Packages.tensorflow, python27Packages.tensorflow The following builds were skipped because they don't evaluate on x86_64-linux: python36Packages.tensorflowWithCuda, python27Packages.tensorflowWithCuda Partial log (click to expand)
|
(deleted ofborg results were caused by my incorrect build command, sorry for the noise) @mboes please fix the build for x86_64-linux (or does this require bazel 0.13 now?) |
@xeji fixed. I used the sha256 corresponding to the output of building with Bazel v0.13 previously. I set it to that of building with Bazel 0.12 now. IIUC we'll have to update this again when Bazel v0.13 gets merged. Incidentally, even when building with |
@GrahamcOfBorg build python36Packages.tensorflow python27Packages.tensorflow |
No attempt on aarch64-linux (full log) The following builds were skipped because they don't evaluate on aarch64-linux: python36Packages.tensorflow, python27Packages.tensorflow Partial log (click to expand)
|
Success on x86_64-darwin (full log) Attempted: python36Packages.tensorflow The following builds were skipped because they don't evaluate on x86_64-darwin: python27Packages.tensorflow Partial log (click to expand)
|
Failure on x86_64-linux (full log) Attempted: python36Packages.tensorflow, python27Packages.tensorflow Partial log (click to expand)
|
What is the best way to pre-populate these external fetches done by Bazel? Nix doesn't allow the downloading because of the sandbox. |
cc @abbradar |
Shelving this for now. |
Just a note: I've independently attempted to build tensorflow 1.8 from source. Used older bazel 0.10 for this. Faced issue related to hardening: NixOS appends -D_FORTIFY_SOURCE macro to any gcc arguments unless I couldn't find how to get through |
Did you use bazel or bazel with I've hit similar issues and I think there's two different ways of going forward when using bazel in Nix:
I'm leaning towards (1), but that means bazel should use unwrapped tools in nix, not the wrappers. |
I turned nixHacks off, but I think caching or sandboxing is not the cause of my errors. Bazel seems to react on setting
Looks like this problem was very carefully planted :) I'll continue trying to wrap GCC in a way that disable hardening. Passing unwrapped CC cause some problems with |
By TF do you mean the normal bazel build process or does TF do something special? You can unwrap the various layer and test things by using |
** Edit ** I was able to overcome the
I used this wrapper manually, inside nix-shell, as following:
Not sure if hardening was the only problem or not (bazel still works) |
No luck for now. New error is about numpy. Tensorflow passes
|
@grwlf you can use |
For the gcc flags see #42832 for an example of configuring a bazel toolchain. That makes the whole nix hacks and wrappers redundant at least as far as bazel goes. |
Tried to apply the python environment advice by @globin , without success. Basically, the problem starts when Bazel executes
Internally,
At the moment, the expected origin of numpy is not clear for me. Should TF already have its own version of numpy, or is it the build environment which must provide it? If so, how one should do it, having the environment cleanup made by bazel? |
For the reference, I keep my work files here: Here I put related SO question: |
Motivation for this change
Upgrade to latest Tensorflow. Required by #40525.
cc @zimbatm @xeji
Things done
build-use-sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)