| # Description: |
| # Host-platform specific StreamExecutor support code. |
| |
| load("//tensorflow/stream_executor:build_defs.bzl", "stream_executor_friends") |
| load("//tensorflow:tensorflow.bzl", "tf_cc_test") |
| |
| package( |
| default_visibility = [":friends"], |
| licenses = ["notice"], # Apache 2.0 |
| ) |
| |
| package_group( |
| name = "friends", |
| packages = stream_executor_friends(), |
| ) |
| |
| # Filegroup used to collect source files for the dependency check. |
| filegroup( |
| name = "c_srcs", |
| data = glob([ |
| "**/*.cc", |
| "**/*.h", |
| ]), |
| ) |
| |
| cc_library( |
| name = "host_platform_id", |
| srcs = [ |
| "host_platform_id.cc", |
| ], |
| hdrs = [ |
| "host_platform_id.h", |
| ], |
| deps = [ |
| "//tensorflow/stream_executor:platform", |
| ], |
| ) |
| |
| cc_library( |
| name = "host_platform", |
| srcs = [ |
| "host_platform.cc", |
| ], |
| hdrs = [ |
| "host_platform.h", |
| ], |
| visibility = ["//visibility:public"], |
| deps = [ |
| ":host_gpu_executor", |
| ":host_platform_id", |
| "//tensorflow/stream_executor:executor_cache", |
| "//tensorflow/stream_executor:multi_platform_manager", |
| "//tensorflow/stream_executor:stream_executor_headers", |
| "//tensorflow/stream_executor/lib", |
| "//tensorflow/stream_executor/platform", |
| "@com_google_absl//absl/strings:str_format", |
| "@com_google_absl//absl/synchronization", |
| ], |
| alwayslink = True, # Registers itself with the MultiPlatformManager. |
| ) |
| |
| cc_library( |
| name = "host_stream", |
| srcs = [ |
| "host_stream.cc", |
| ], |
| hdrs = [ |
| "host_stream.h", |
| ], |
| deps = [ |
| "//tensorflow/core:lib_internal", |
| "//tensorflow/stream_executor:kernel", |
| "//tensorflow/stream_executor/lib", |
| "@com_google_absl//absl/synchronization", |
| ], |
| ) |
| |
| cc_library( |
| name = "host_timer", |
| srcs = [ |
| "host_timer.cc", |
| ], |
| hdrs = [ |
| "host_timer.h", |
| ], |
| deps = [ |
| "//tensorflow/stream_executor:stream_executor_internal", |
| "//tensorflow/stream_executor:timer", |
| "//tensorflow/stream_executor/platform", |
| ], |
| ) |
| |
| # TODO(22689637): Rename this target. |
| cc_library( |
| name = "host_gpu_executor", |
| srcs = [ |
| "host_gpu_executor.cc", |
| ], |
| hdrs = [ |
| "host_gpu_executor.h", |
| ], |
| deps = [ |
| ":host_platform_id", |
| ":host_stream", |
| ":host_timer", |
| "//tensorflow/core:lib", |
| "//tensorflow/stream_executor:kernel", |
| "//tensorflow/stream_executor:rng", |
| "//tensorflow/stream_executor:stream", |
| "//tensorflow/stream_executor:stream_executor_internal", |
| "//tensorflow/stream_executor:stream_executor_pimpl", |
| "//tensorflow/stream_executor:timer", |
| "//tensorflow/stream_executor/lib", |
| "@com_google_absl//absl/synchronization", |
| ], |
| alwayslink = True, |
| ) |
| |
| tf_cc_test( |
| name = "host_stream_test", |
| srcs = ["host_stream_test.cc"], |
| deps = [ |
| ":host_platform", |
| "//tensorflow/core:test", |
| "//tensorflow/core:test_main", |
| "//tensorflow/stream_executor", |
| "//tensorflow/stream_executor:multi_platform_manager", |
| "//tensorflow/stream_executor:platform", |
| "//tensorflow/stream_executor:stream", |
| "@com_google_absl//absl/synchronization", |
| ], |
| ) |