tensorflow / fold

Deep learning with dynamic computation graphs in TensorFlow
Apache License 2.0
1.83k stars 266 forks source link

Is the repo compatible with TensorFlow 1.0.0 ? #22

Closed ronghanghu closed 7 years ago

ronghanghu commented 7 years ago

Hi, I recently upgraded my tensorflow to 1.0.0 and tried to install tensorflow fold with tensorflow 1.0.0 (rather than 1.0.0rc0), but got some error with bazel when installing from source.

Installing from source

I've tried to install this tensorflow fold from source following https://github.com/tensorflow/fold/blob/master/tensorflow_fold/g3doc/sources.md, and everything works well. However, when I tried to replace the tensorflow submodule with the master tensorflow (rather than 1.0.0rc0) and run bazel build --config=opt //tensorflow_fold/util:build_pip_package, I got the following error:

ERROR: Failed to load Skylark extension '@io_bazel_rules_closure//closure:defs.bzl'.
It usually happens when the repository is not defined prior to being used.
Maybe repository 'io_bazel_rules_closure' was defined later in your WORKSPACE file?
ERROR: cycles detected during target parsing.
INFO: Elapsed time: 2.703s

So it seems that the bazel setup of fold is not compatible with tensorflow 1.0.0. It there a way to fix it?

Installing from binary

I also tried to install from binary following https://github.com/tensorflow/fold/blob/master/tensorflow_fold/g3doc/setup.md, but installed tensorflow 1.0.0 (instead of 1.0.0rc0) by pip install tensorflow-gpu.

After installation, I found that python -c 'import tensorflow_fold' works, and that my code can run. But I'm still worried that is the provided binary in the setup.md compatible with tensorflow 1.0.0, since (I assume) it was compiled against tensorflow 1.0.0rc0).

_So is the provided fold binary tensorflow_fold-0.0.1-py3-none-linux_x86_64.whl compatible with tensorflow 1.0.0 binary? Or is there a way to build fold against tensorflow 1.0.0? Thanks in advance!_

delesley commented 7 years ago

If you install both TensorFlow and Fold from binaries, then there will be more wiggle room -- TensorFlow maintains at least some degree of binary compatibility between similar release numbers, although I don't know how much. In general I'd say that if it runs without crashing, then you're probably okay. :-)

The problem with building from source is that Fold references the internal build files used by TensorFlow, and those can change even between minor point releases. Feel free to experiment if you want, but we only test against the particular point releases listed when building from source.

On Sun, Feb 26, 2017 at 5:05 PM, Ronghang Hu notifications@github.com wrote:

Hi, I recently upgraded my tensorflow to 1.0.0 and tried to install tensorflow fold with tensorflow 1.0.0 (rather than 1.0.0rc0), but got some error with bazel when installing from source. Installing from source

I've tried to install this tensorflow fold from source following https://github.com/tensorflow/fold/blob/master/tensorflow_ fold/g3doc/sources.md, and everything works well. However, when I tried to replace the tensorflow submodule with the master tensorflow (rather than 1.0.0rc0) and run bazel build --config=opt //tensorflowfold/util:build pip_package, I got the following error:

ERROR: Failed to load Skylark extension '@io_bazel_rules_closure//closure:defs.bzl'. It usually happens when the repository is not defined prior to being used. Maybe repository 'io_bazel_rules_closure' was defined later in your WORKSPACE file? ERROR: cycles detected during target parsing. INFO: Elapsed time: 2.703s

So it seems that the bazel setup of fold is not compatible with tensorflow 1.0.0. It there a way to fix it? Installing from binary

I also tried to install from binary following https://github.com/tensorflow/fold/blob/master/tensorflow_ fold/g3doc/setup.md, but installed tensorflow 1.0.0 (instead of 1.0.0rc0) by pip install tensorflow-gpu.

After installation, I found that python -c 'import tensorflow_fold' works, and that my can run. But I'm still worried that is the provided binary in the setup.md compatible with tensorflow 1.0.0, since (I assume) it was compiled against tensorflow 1.0.0rc0).

So is the provided fold binary tensorflow_fold-0.0.1-py3-none-linux_x86_64.whl compatible with tensorflow 1.0.0 binary? Or is there a way to build fold against tensorflow 1.0.0? Thanks in advance!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/tensorflow/fold/issues/22, or mute the thread https://github.com/notifications/unsubscribe-auth/AGGbTWBlDkFZLeRwMVX7-hxyEtkSnhu6ks5rgiFJgaJpZM4MMmHW .

-- DeLesley Hutchins | Software Engineer | delesley@google.com | 505-206-0315

ronghanghu commented 7 years ago

Thanks! I'll use the TF 1.0.0 binary then.