blob: c8f833f87771b3c3d9bc35a927c12d1f0ac4fdda [file] [log] [blame]
# 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",
],
)