diff options
Diffstat (limited to 'tensorflow/contrib/mpi/BUILD')
-rw-r--r-- | tensorflow/contrib/mpi/BUILD | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/tensorflow/contrib/mpi/BUILD b/tensorflow/contrib/mpi/BUILD new file mode 100644 index 0000000000..20ceef5004 --- /dev/null +++ b/tensorflow/contrib/mpi/BUILD @@ -0,0 +1,90 @@ +# Description: +# MPI based communication interfaces and implementations for TensorFlow. + +package(default_visibility = [ + "//tensorflow:__subpackages__", +]) + +licenses(["notice"]) # Apache 2.0 + +exports_files(["LICENSE"]) + +filegroup( + name = "all_files", + srcs = glob( + ["**/*"], + exclude = [ + "**/METADATA", + "**/OWNERS", + ], + ), + visibility = ["//tensorflow:__subpackages__"], +) + +filegroup( + name = "c_srcs", + data = glob([ + "**/*.cc", + "**/*.h", + ]), +) + +# For platform specific build config +load( + "//tensorflow/core:platform/default/build_config.bzl", + "tf_proto_library_cc", +) + +tf_proto_library_cc( + name = "mpi_msg_proto", + srcs = ["mpi_msg.proto"], + cc_api_version = 2, + protodeps = ["//tensorflow/core:worker_proto"], + visibility = [ + "//tensorflow:__subpackages__", + ], +) + +cc_library( + name = "mpi_utils", + srcs = ["mpi_utils.cc"], + hdrs = ["mpi_utils.h"], + deps = [ + "//tensorflow/core:core_cpu_internal", + "//tensorflow/core:framework", + "//tensorflow/core:lib", + "//third_party/mpi", + ], +) + +cc_library( + name = "mpi_rendezvous_mgr", + srcs = ["mpi_rendezvous_mgr.cc"], + hdrs = ["mpi_rendezvous_mgr.h"], + deps = [ + ":mpi_msg_proto_cc", + ":mpi_utils", + "//tensorflow/core:core_cpu_internal", + "//tensorflow/core:framework", + "//tensorflow/core:gpu_runtime", + "//tensorflow/core:lib", + "//tensorflow/core:protos_cc", + "//tensorflow/core:worker_proto_cc", + "//tensorflow/core/distributed_runtime:base_rendezvous_mgr", + "//tensorflow/core/distributed_runtime:session_mgr", + "//tensorflow/core/distributed_runtime:worker_env", + "//third_party/mpi", + ], +) + +cc_library( + name = "mpi_server_lib", + srcs = ["mpi_server_lib.cc"], + hdrs = ["mpi_server_lib.h"], + linkstatic = 1, # Seems to be needed since alwayslink is broken in bazel + deps = [ + ":mpi_rendezvous_mgr", + "//tensorflow/core/distributed_runtime/rpc:grpc_server_lib", + ], + alwayslink = 1, +) |