| # GPU executor library for data-parallel kernel launches and cross-platform |
| # HPC-library APIs. |
| # |
| # Throughout this file, all targets are built with the standard crosstool and |
| # do not link against restricted binary blobs. |
| |
| load("//tensorflow:tensorflow.bzl", "tf_cuda_library") |
| load("//tensorflow/core/platform:rules_cc.bzl", "cc_library") |
| load("//tensorflow/core/platform:build_config_root.bzl", "if_static") |
| load("//tensorflow/stream_executor:build_defs.bzl", "stream_executor_friends") |
| |
| package( |
| default_visibility = [":friends"], |
| licenses = ["notice"], |
| ) |
| |
| package_group( |
| name = "friends", |
| packages = stream_executor_friends(), |
| ) |
| |
| cc_library( |
| name = "launch_dim", |
| hdrs = [ |
| "gpu_launch_dim.h", |
| "launch_dim.h", |
| ], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:launch_dim", |
| ], |
| ) |
| |
| cc_library( |
| name = "device_description", |
| hdrs = ["device_description.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:device_description", |
| ], |
| ) |
| |
| cc_library( |
| name = "event", |
| hdrs = [ |
| "device_memory.h", |
| "event.h", |
| "kernel.h", |
| "kernel_spec.h", |
| "platform.h", |
| "stream.h", |
| "stream_executor_internal.h", |
| ], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:event", |
| ], |
| ) |
| |
| cc_library( |
| name = "kernel", |
| hdrs = [ |
| "blas.h", |
| "device_description.h", |
| "device_options.h", |
| "event.h", |
| "kernel.h", |
| "kernel_spec.h", |
| "launch_dim.h", |
| "multi_platform_manager.h", |
| "platform.h", |
| "plugin_registry.h", |
| "stream_executor.h", |
| "stream_executor_internal.h", |
| "timer.h", |
| "trace_listener.h", |
| ], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:kernel", |
| ], |
| ) |
| |
| cc_library( |
| name = "kernel_spec", |
| hdrs = ["kernel_spec.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:kernel_spec", |
| ], |
| ) |
| |
| cc_library( |
| name = "kernel_cache_config", |
| hdrs = ["kernel_cache_config.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:kernel_cache_config", |
| ], |
| ) |
| |
| cc_library( |
| name = "module_spec", |
| hdrs = ["module_spec.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:module_spec", |
| ], |
| ) |
| |
| # Aliases for backwards compatibility. |
| alias( |
| name = "stream_header", |
| actual = ":stream_executor_headers", |
| ) |
| |
| alias( |
| name = "stream", |
| actual = ":stream_executor", |
| ) |
| |
| cc_library( |
| name = "timer", |
| hdrs = [ |
| "blas.h", |
| "kernel.h", |
| "stream.h", |
| "stream_executor.h", |
| "timer.h", |
| ], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:timer", |
| ], |
| ) |
| |
| cc_library( |
| name = "platform", |
| hdrs = ["platform.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:platform", |
| ], |
| ) |
| |
| cc_library( |
| name = "rng", |
| hdrs = ["rng.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:rng", |
| ], |
| ) |
| |
| cc_library( |
| name = "temporary_device_memory", |
| hdrs = ["temporary_device_memory.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:temporary_device_memory", |
| ], |
| ) |
| |
| cc_library( |
| name = "temporary_memory_manager", |
| hdrs = ["temporary_memory_manager.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:temporary_memory_manager", |
| ], |
| ) |
| |
| cc_library( |
| name = "fft", |
| hdrs = ["fft.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:fft", |
| ], |
| ) |
| |
| cc_library( |
| name = "blas", |
| hdrs = ["blas.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:blas", |
| ], |
| ) |
| |
| cc_library( |
| name = "device_memory", |
| hdrs = ["device_memory.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:device_memory", |
| ], |
| ) |
| |
| cc_library( |
| name = "host_or_device_scalar", |
| hdrs = ["host_or_device_scalar.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:host_or_device_scalar", |
| ], |
| ) |
| |
| cc_library( |
| name = "device_options", |
| hdrs = ["device_options.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:device_options", |
| ], |
| ) |
| |
| cc_library( |
| name = "executor_cache", |
| hdrs = [ |
| "blas.h", |
| "executor_cache.h", |
| "fft.h", |
| "kernel.h", |
| "kernel_cache_config.h", |
| "kernel_spec.h", |
| "platform.h", |
| "stream.h", |
| "stream_executor_internal.h", |
| "trace_listener.h", |
| ], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:executor_cache", |
| ], |
| ) |
| |
| cc_library( |
| name = "multi_platform_manager", |
| hdrs = ["multi_platform_manager.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:multi_platform_manager", |
| ], |
| ) |
| |
| cc_library( |
| name = "plugin", |
| hdrs = ["plugin.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:plugin", |
| ], |
| ) |
| |
| cc_library( |
| name = "plugin_registry", |
| hdrs = ["plugin_registry.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:plugin_registry", |
| ], |
| ) |
| |
| cc_library( |
| name = "scratch_allocator", |
| hdrs = ["scratch_allocator.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:scratch_allocator", |
| ], |
| ) |
| |
| cc_library( |
| name = "data_type", |
| hdrs = ["data_type.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:data_type", |
| ], |
| ) |
| |
| cc_library( |
| name = "dnn", |
| hdrs = ["dnn.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:dnn", |
| ], |
| ) |
| |
| cc_library( |
| name = "stream_executor_internal", |
| hdrs = [ |
| "stream_executor_internal.h", |
| ], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:stream_executor_internal", |
| ], |
| ) |
| |
| cc_library( |
| name = "stream_executor_pimpl_header", |
| hdrs = [ |
| "device_description.h", |
| "kernel.h", |
| "kernel_cache_config.h", |
| "stream_executor_pimpl.h", |
| ], |
| visibility = ["//visibility:public"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:stream_executor_pimpl_header", |
| ], |
| ) |
| |
| # It implements :stream_executor_pimpl_header |
| tf_cuda_library( |
| name = "stream_executor_pimpl", |
| hdrs = ["stream_executor_pimpl.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:stream_executor_pimpl", |
| ], |
| ) |
| |
| # The stream_executor_headers target does not prescribe an implementation. |
| cc_library( |
| name = "stream_executor_headers", |
| textual_hdrs = [ |
| "blas.h", |
| "device_description.h", |
| "device_memory.h", |
| "device_memory_allocator.h", |
| "device_options.h", |
| "dnn.h", |
| "event.h", |
| "executor_cache.h", |
| "fft.h", |
| "gpu_launch_dim.h", |
| "kernel.h", |
| "kernel_cache_config.h", |
| "kernel_spec.h", |
| "launch_dim.h", |
| "module_spec.h", |
| "multi_platform_manager.h", |
| "platform.h", |
| "plugin.h", |
| "plugin_registry.h", |
| "rng.h", |
| "stream.h", |
| "stream_executor.h", |
| "stream_executor_internal.h", |
| "stream_executor_pimpl.h", |
| "temporary_device_memory.h", |
| "temporary_memory_manager.h", |
| "timer.h", |
| "trace_listener.h", |
| ], |
| visibility = ["//visibility:public"], |
| deps = [ |
| ":host_or_device_scalar", |
| "//tensorflow/compiler/xla/stream_executor:stream_executor_headers", |
| ], |
| ) |
| |
| cc_library( |
| name = "stream_executor", |
| textual_hdrs = [ |
| "blas.h", |
| "device_description.h", |
| "device_memory.h", |
| "device_memory_allocator.h", |
| "device_options.h", |
| "dnn.h", |
| "event.h", |
| "executor_cache.h", |
| "fft.h", |
| "gpu_launch_dim.h", |
| "kernel.h", |
| "kernel_cache_config.h", |
| "kernel_spec.h", |
| "launch_dim.h", |
| "module_spec.h", |
| "multi_platform_manager.h", |
| "platform.h", |
| "plugin.h", |
| "plugin_registry.h", |
| "rng.h", |
| "stream.h", |
| "stream_executor.h", |
| "stream_executor_internal.h", |
| "stream_executor_pimpl.h", |
| "temporary_device_memory.h", |
| "temporary_memory_manager.h", |
| "timer.h", |
| "trace_listener.h", |
| ], |
| deps = [":stream_executor_headers"] + if_static([":stream_executor_impl"]), |
| ) |
| |
| cc_library( |
| name = "stream_executor_impl", |
| deps = ["//tensorflow/compiler/xla/stream_executor:stream_executor_impl"], |
| ) |
| |
| cc_library( |
| name = "allocator_stats", |
| hdrs = ["allocator_stats.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:allocator_stats", |
| ], |
| ) |
| |
| cc_library( |
| name = "device_memory_allocator", |
| hdrs = ["device_memory_allocator.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:device_memory_allocator", |
| ], |
| ) |
| |
| cc_library( |
| name = "tf_allocator_adapter", |
| hdrs = ["tf_allocator_adapter.h"], |
| deps = [ |
| "//tensorflow/compiler/xla/stream_executor:tf_allocator_adapter", |
| ], |
| ) |
| |
| alias( |
| name = "cuda_platform", |
| actual = "//tensorflow/compiler/xla/stream_executor/cuda:all_runtime", |
| ) |
| |
| alias( |
| name = "rocm_platform", |
| actual = "//tensorflow/stream_executor/rocm:all_runtime", |
| ) |