2023-01-02 14:28:25 +00:00
|
|
|
load("@aspect_bazel_lib//lib:copy_to_directory.bzl", "copy_to_directory")
|
|
|
|
|
load("@bazel_skylib//rules:common_settings.bzl", "bool_flag", "string_list_flag")
|
|
|
|
|
load("@zml//bazel:cc_import.bzl", "cc_import")
|
|
|
|
|
|
|
|
|
|
string_list_flag(
|
|
|
|
|
name = "gfx",
|
|
|
|
|
build_setting_default = ["all"],
|
2024-05-20 11:28:25 +00:00
|
|
|
visibility = ["//visibility:public"],
|
2023-01-02 14:28:25 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
bool_flag(
|
|
|
|
|
name = "hipblaslt",
|
|
|
|
|
build_setting_default = True,
|
2024-05-20 11:28:25 +00:00
|
|
|
visibility = ["//visibility:public"],
|
2023-01-02 14:28:25 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
config_setting(
|
|
|
|
|
name = "_hipblaslt",
|
|
|
|
|
flag_values = {":hipblaslt": "True"},
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
copy_to_directory(
|
|
|
|
|
name = "sandbox",
|
|
|
|
|
srcs = [
|
|
|
|
|
"@rocm-device-libs//:runfiles",
|
|
|
|
|
"@rocm-llvm//:lld",
|
|
|
|
|
],
|
|
|
|
|
include_external_repositories = ["*"],
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
cc_library(
|
2023-05-03 17:33:46 +00:00
|
|
|
name = "zmlxrocm_lib",
|
2023-01-02 14:28:25 +00:00
|
|
|
data = ["@rocblas//:runfiles"],
|
2023-05-03 17:33:46 +00:00
|
|
|
srcs = ["@zml//runtimes/rocm:zmlxrocm_srcs"],
|
2023-01-02 14:28:25 +00:00
|
|
|
linkopts = [
|
|
|
|
|
"-lc",
|
|
|
|
|
"-ldl",
|
|
|
|
|
],
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
cc_shared_library(
|
2023-05-03 17:33:46 +00:00
|
|
|
name = "zmlxrocm_so",
|
|
|
|
|
shared_lib_name = "libzmlxrocm.so.0",
|
|
|
|
|
deps = [":zmlxrocm_lib"],
|
2023-01-02 14:28:25 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
cc_import(
|
2023-05-03 17:33:46 +00:00
|
|
|
name = "zmlxrocm",
|
|
|
|
|
shared_library = ":zmlxrocm_so",
|
2023-01-02 14:28:25 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
cc_import(
|
|
|
|
|
name = "libpjrt_rocm",
|
|
|
|
|
data = [
|
|
|
|
|
":sandbox",
|
|
|
|
|
"@rocblas//:runfiles",
|
|
|
|
|
] + select({
|
2024-01-15 09:41:42 +00:00
|
|
|
":_hipblaslt": ["@hipblaslt//:runfiles"],
|
2023-01-02 14:28:25 +00:00
|
|
|
"//conditions:default": [],
|
|
|
|
|
}),
|
2024-01-26 13:02:23 +00:00
|
|
|
add_needed = ["libzmlxrocm.so.0"],
|
|
|
|
|
rename_dynamic_symbols = {
|
|
|
|
|
"dlopen": "zmlxrocm_dlopen",
|
|
|
|
|
},
|
2023-01-02 14:28:25 +00:00
|
|
|
shared_library = "libpjrt_rocm.so",
|
2024-03-11 10:15:22 +00:00
|
|
|
soname = "libpjrt_rocm.so",
|
2023-01-02 14:28:25 +00:00
|
|
|
visibility = ["//visibility:public"],
|
|
|
|
|
deps = [
|
|
|
|
|
"@comgr//:amd_comgr",
|
|
|
|
|
"@hip-runtime-amd//:amdhip",
|
|
|
|
|
"@hipblaslt",
|
|
|
|
|
"@hsa-amd-aqlprofile//:hsa-amd-aqlprofile",
|
|
|
|
|
"@hsa-rocr//:hsa-runtime",
|
2024-01-15 09:41:42 +00:00
|
|
|
"@libdrm-amdgpu",
|
|
|
|
|
"@libdrm",
|
|
|
|
|
"@libelf",
|
|
|
|
|
"@libnuma",
|
|
|
|
|
"@libtinfo",
|
|
|
|
|
"@libzstd",
|
2023-01-02 14:28:25 +00:00
|
|
|
"@miopen-hip//:MIOpen",
|
|
|
|
|
"@rccl",
|
|
|
|
|
"@rocblas",
|
|
|
|
|
"@rocm-core",
|
|
|
|
|
"@rocm-smi-lib//:rocm_smi",
|
|
|
|
|
"@rocprofiler-register",
|
|
|
|
|
"@roctracer",
|
|
|
|
|
"@zlib1g",
|
2024-01-15 09:41:42 +00:00
|
|
|
"@zml//runtimes/rocm:zmlxrocm",
|
2023-01-02 14:28:25 +00:00
|
|
|
],
|
|
|
|
|
)
|