diff options
author | A. Unique TensorFlower <gardener@tensorflow.org> | 2018-09-27 06:19:58 -0700 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2018-09-27 06:23:37 -0700 |
commit | 77e2686a2958eb76e0164828d5d536b86c72464b (patch) | |
tree | 08dd3d4637f6fd170a5fe353853825b98e943c74 /tensorflow | |
parent | abf26356209cba1ba895a06d9ce55ad01dad7fc6 (diff) |
Reduce the size of //tensorflow/tools/pip_package:simple_console_windows
This change reduce the size of //tensorflow/tools/pip_package:simple_console_windows's zip file from 1000027677 bytes to 47690474 bytes for a CPU build. For GPU build, it will avoid going over 4GB when multiple CUDA compatibility are specified.
To fix #22390
PiperOrigin-RevId: 214764423
Diffstat (limited to 'tensorflow')
-rw-r--r-- | tensorflow/contrib/eager/python/examples/gan/BUILD | 1 | ||||
-rw-r--r-- | tensorflow/contrib/eager/python/examples/linear_regression/BUILD | 1 | ||||
-rw-r--r-- | tensorflow/contrib/eager/python/examples/rnn_colorbot/BUILD | 1 | ||||
-rw-r--r-- | tensorflow/contrib/eager/python/examples/rnn_ptb/BUILD | 1 | ||||
-rw-r--r-- | tensorflow/contrib/lite/toco/python/BUILD | 1 | ||||
-rw-r--r-- | tensorflow/contrib/timeseries/examples/BUILD | 1 | ||||
-rw-r--r-- | tensorflow/python/debug/BUILD | 1 | ||||
-rw-r--r-- | tensorflow/python/tools/BUILD | 8 | ||||
-rw-r--r-- | tensorflow/tensorflow.bzl | 23 | ||||
-rw-r--r-- | tensorflow/tools/dist_test/server/BUILD | 1 |
10 files changed, 39 insertions, 0 deletions
diff --git a/tensorflow/contrib/eager/python/examples/gan/BUILD b/tensorflow/contrib/eager/python/examples/gan/BUILD index c61ec2dbae..d64c8eb9ce 100644 --- a/tensorflow/contrib/eager/python/examples/gan/BUILD +++ b/tensorflow/contrib/eager/python/examples/gan/BUILD @@ -3,6 +3,7 @@ licenses(["notice"]) # Apache 2.0 package(default_visibility = ["//tensorflow:internal"]) load("//tensorflow:tensorflow.bzl", "cuda_py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") py_binary( name = "mnist", diff --git a/tensorflow/contrib/eager/python/examples/linear_regression/BUILD b/tensorflow/contrib/eager/python/examples/linear_regression/BUILD index 2f6cfdf31e..74ce9e84f0 100644 --- a/tensorflow/contrib/eager/python/examples/linear_regression/BUILD +++ b/tensorflow/contrib/eager/python/examples/linear_regression/BUILD @@ -3,6 +3,7 @@ licenses(["notice"]) # Apache 2.0 package(default_visibility = ["//tensorflow:internal"]) load("//tensorflow:tensorflow.bzl", "cuda_py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") py_binary( name = "linear_regression", diff --git a/tensorflow/contrib/eager/python/examples/rnn_colorbot/BUILD b/tensorflow/contrib/eager/python/examples/rnn_colorbot/BUILD index f83eb5c476..d500b632eb 100644 --- a/tensorflow/contrib/eager/python/examples/rnn_colorbot/BUILD +++ b/tensorflow/contrib/eager/python/examples/rnn_colorbot/BUILD @@ -3,6 +3,7 @@ licenses(["notice"]) # Apache 2.0 package(default_visibility = ["//tensorflow:internal"]) load("//tensorflow:tensorflow.bzl", "cuda_py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") py_binary( name = "rnn_colorbot", diff --git a/tensorflow/contrib/eager/python/examples/rnn_ptb/BUILD b/tensorflow/contrib/eager/python/examples/rnn_ptb/BUILD index 4b4792cd49..2cc2fcbfeb 100644 --- a/tensorflow/contrib/eager/python/examples/rnn_ptb/BUILD +++ b/tensorflow/contrib/eager/python/examples/rnn_ptb/BUILD @@ -3,6 +3,7 @@ licenses(["notice"]) # Apache 2.0 package(default_visibility = ["//tensorflow:internal"]) load("//tensorflow:tensorflow.bzl", "cuda_py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") py_binary( name = "rnn_ptb", diff --git a/tensorflow/contrib/lite/toco/python/BUILD b/tensorflow/contrib/lite/toco/python/BUILD index 33c5b16462..cf97ba7084 100644 --- a/tensorflow/contrib/lite/toco/python/BUILD +++ b/tensorflow/contrib/lite/toco/python/BUILD @@ -4,6 +4,7 @@ licenses(["notice"]) # Apache 2.0 load("//tensorflow:tensorflow.bzl", "tf_py_wrap_cc") load("//tensorflow:tensorflow.bzl", "tf_py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") cc_library( name = "toco_python_api", diff --git a/tensorflow/contrib/timeseries/examples/BUILD b/tensorflow/contrib/timeseries/examples/BUILD index 21c0c30c19..57797214d1 100644 --- a/tensorflow/contrib/timeseries/examples/BUILD +++ b/tensorflow/contrib/timeseries/examples/BUILD @@ -1,4 +1,5 @@ load("//tensorflow:tensorflow.bzl", "py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") package( default_visibility = ["//tensorflow:internal"], diff --git a/tensorflow/python/debug/BUILD b/tensorflow/python/debug/BUILD index 849d165bfa..e84482d2b2 100644 --- a/tensorflow/python/debug/BUILD +++ b/tensorflow/python/debug/BUILD @@ -18,6 +18,7 @@ exports_files(["LICENSE"]) load("//tensorflow:tensorflow.bzl", "cuda_py_test") load("//tensorflow:tensorflow.bzl", "py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") load("//tensorflow:tensorflow.bzl", "if_not_windows") py_library( diff --git a/tensorflow/python/tools/BUILD b/tensorflow/python/tools/BUILD index 75824d83e6..384c7a82d2 100644 --- a/tensorflow/python/tools/BUILD +++ b/tensorflow/python/tools/BUILD @@ -8,6 +8,7 @@ licenses(["notice"]) # Apache 2.0 exports_files(["LICENSE"]) load("//tensorflow:tensorflow.bzl", "py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") # Transitive dependencies of this target will be included in the pip package. py_library( @@ -21,6 +22,13 @@ py_library( ":saved_model_cli", ":saved_model_utils", ":strip_unused", + # The following py_library are needed because + # py_binary may not depend on them when --define=no_tensorflow_py_deps=true + # is specified. See https://github.com/tensorflow/tensorflow/issues/22390 + ":freeze_graph_lib", + ":optimize_for_inference_lib", + ":selective_registration_header_lib", + ":strip_unused_lib", ], ) diff --git a/tensorflow/tensorflow.bzl b/tensorflow/tensorflow.bzl index d6c75d675c..8f8bfadf78 100644 --- a/tensorflow/tensorflow.bzl +++ b/tensorflow/tensorflow.bzl @@ -1693,6 +1693,29 @@ register_extension_info( label_regex_for_dep = "{extension_name}", ) +# Similar to py_test above, this macro is used to exclude dependencies for some py_binary +# targets in order to reduce the size of //tensorflow/tools/pip_package:simple_console_windows. +# See https://github.com/tensorflow/tensorflow/issues/22390 +def py_binary(name, deps = [], **kwargs): + # Add an extra target for dependencies to avoid nested select statement. + native.py_library( + name = name + "_deps", + deps = deps, + ) + native.py_binary( + name = name, + deps = select({ + "//conditions:default": [":" + name + "_deps"], + clean_dep("//tensorflow:no_tensorflow_py_deps"): [], + }), + **kwargs + ) + +register_extension_info( + extension_name = "py_binary", + label_regex_for_dep = "{extension_name}", +) + def tf_py_test( name, srcs, diff --git a/tensorflow/tools/dist_test/server/BUILD b/tensorflow/tools/dist_test/server/BUILD index 003a19a9ab..3aa53a5615 100644 --- a/tensorflow/tools/dist_test/server/BUILD +++ b/tensorflow/tools/dist_test/server/BUILD @@ -8,6 +8,7 @@ licenses(["notice"]) # Apache 2.0 exports_files(["LICENSE"]) load("//tensorflow:tensorflow.bzl", "py_test") +load("//tensorflow:tensorflow.bzl", "py_binary") py_binary( name = "grpc_tensorflow_server", |