345 lines
8.5 KiB
Python
345 lines
8.5 KiB
Python
workspace(name = "pytorch")
|
|
|
|
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
|
load("//tools/rules:workspace.bzl", "new_patched_local_repository")
|
|
|
|
http_archive(
|
|
name = "rules_cc",
|
|
patches = [
|
|
"//:tools/rules_cc/cuda_support.patch",
|
|
],
|
|
strip_prefix = "rules_cc-40548a2974f1aea06215272d9c2b47a14a24e556",
|
|
urls = [
|
|
"https://mirror.bazel.build/github.com/bazelbuild/rules_cc/archive/40548a2974f1aea06215272d9c2b47a14a24e556.tar.gz",
|
|
"https://github.com/bazelbuild/rules_cc/archive/40548a2974f1aea06215272d9c2b47a14a24e556.tar.gz",
|
|
],
|
|
)
|
|
|
|
http_archive(
|
|
name = "rules_cuda",
|
|
strip_prefix = "runtime-b1c7cce21ba4661c17ac72421c6a0e2015e7bef3/third_party/rules_cuda",
|
|
urls = ["https://github.com/tensorflow/runtime/archive/b1c7cce21ba4661c17ac72421c6a0e2015e7bef3.tar.gz"],
|
|
)
|
|
|
|
load("@rules_cuda//cuda:dependencies.bzl", "rules_cuda_dependencies")
|
|
|
|
rules_cuda_dependencies(with_rules_cc = False)
|
|
|
|
load("@rules_cc//cc:repositories.bzl", "rules_cc_toolchains")
|
|
|
|
rules_cc_toolchains()
|
|
|
|
http_archive(
|
|
name = "bazel_skylib",
|
|
urls = [
|
|
"https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.2/bazel-skylib-1.0.2.tar.gz",
|
|
],
|
|
)
|
|
|
|
http_archive(
|
|
name = "pybind11_bazel",
|
|
strip_prefix = "pybind11_bazel-b162c7c88a253e3f6b673df0c621aca27596ce6b",
|
|
urls = ["https://github.com/pybind/pybind11_bazel/archive/b162c7c88a253e3f6b673df0c621aca27596ce6b.zip"],
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "pybind11",
|
|
build_file = "@pybind11_bazel//:pybind11.BUILD",
|
|
path = "third_party/pybind11",
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_github_glog",
|
|
build_file_content = """
|
|
licenses(['notice'])
|
|
|
|
load(':bazel/glog.bzl', 'glog_library')
|
|
# TODO: figure out why enabling gflags leads to SIGSEV on the logging init
|
|
glog_library(with_gflags=0)
|
|
""",
|
|
strip_prefix = "glog-0.4.0",
|
|
urls = [
|
|
"https://github.com/google/glog/archive/v0.4.0.tar.gz",
|
|
],
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_github_gflags_gflags",
|
|
strip_prefix = "gflags-2.2.2",
|
|
urls = [
|
|
"https://github.com/gflags/gflags/archive/v2.2.2.tar.gz",
|
|
],
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "gloo",
|
|
build_file = "//third_party:gloo.BUILD",
|
|
path = "third_party/gloo",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "onnx",
|
|
build_file = "//third_party:onnx.BUILD",
|
|
path = "third_party/onnx",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "foxi",
|
|
build_file = "//third_party:foxi.BUILD",
|
|
path = "third_party/foxi",
|
|
)
|
|
|
|
local_repository(
|
|
name = "com_google_protobuf",
|
|
path = "third_party/protobuf",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "eigen",
|
|
build_file = "//third_party:eigen.BUILD",
|
|
path = "third_party/eigen",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "cutlass",
|
|
build_file = "//third_party:cutlass.BUILD",
|
|
path = "third_party/cutlass",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "fbgemm",
|
|
build_file = "//third_party:fbgemm/BUILD.bazel",
|
|
path = "third_party/fbgemm",
|
|
repo_mapping = {"@cpuinfo": "@org_pytorch_cpuinfo"},
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "ideep",
|
|
build_file = "//third_party:ideep.BUILD",
|
|
path = "third_party/ideep",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "mkl_dnn",
|
|
build_file = "//third_party:mkl-dnn.BUILD",
|
|
path = "third_party/ideep/mkl-dnn",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "org_pytorch_cpuinfo",
|
|
build_file = "//third_party:cpuinfo/BUILD.bazel",
|
|
path = "third_party/cpuinfo",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "asmjit",
|
|
build_file = "//third_party:fbgemm/third_party/asmjit.BUILD",
|
|
path = "third_party/fbgemm/third_party/asmjit",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "sleef",
|
|
build_file = "//third_party:sleef.BUILD",
|
|
path = "third_party/sleef",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "fmt",
|
|
build_file = "//third_party:fmt.BUILD",
|
|
path = "third_party/fmt",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "kineto",
|
|
build_file = "//third_party:kineto.BUILD",
|
|
path = "third_party/kineto",
|
|
)
|
|
|
|
new_patched_local_repository(
|
|
name = "tbb",
|
|
build_file = "//third_party:tbb.BUILD",
|
|
patch_strip = 1,
|
|
patches = [
|
|
"@//third_party:tbb.patch",
|
|
],
|
|
path = "third_party/tbb",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "tensorpipe",
|
|
build_file = "//third_party:tensorpipe.BUILD",
|
|
path = "third_party/tensorpipe",
|
|
)
|
|
|
|
http_archive(
|
|
name = "mkl",
|
|
build_file = "//third_party:mkl.BUILD",
|
|
sha256 = "59154b30dd74561e90d547f9a3af26c75b6f4546210888f09c9d4db8f4bf9d4c",
|
|
strip_prefix = "lib",
|
|
urls = [
|
|
"https://anaconda.org/anaconda/mkl/2020.0/download/linux-64/mkl-2020.0-166.tar.bz2",
|
|
],
|
|
)
|
|
|
|
http_archive(
|
|
name = "mkl_headers",
|
|
build_file = "//third_party:mkl_headers.BUILD",
|
|
sha256 = "2af3494a4bebe5ddccfdc43bacc80fcd78d14c1954b81d2c8e3d73b55527af90",
|
|
urls = [
|
|
"https://anaconda.org/anaconda/mkl-include/2020.0/download/linux-64/mkl-include-2020.0-166.tar.bz2",
|
|
],
|
|
)
|
|
|
|
http_archive(
|
|
name = "rules_python",
|
|
# TODO Fix bazel linter to support hashes for release tarballs.
|
|
#
|
|
# sha256 = "94750828b18044533e98a129003b6a68001204038dc4749f40b195b24c38f49f",
|
|
strip_prefix = "rules_python-0.21.0",
|
|
url = "https://github.com/bazelbuild/rules_python/releases/download/0.21.0/rules_python-0.21.0.tar.gz",
|
|
)
|
|
|
|
load("@rules_python//python:repositories.bzl", "py_repositories")
|
|
|
|
py_repositories()
|
|
|
|
load("@rules_python//python:repositories.bzl", "python_register_toolchains")
|
|
|
|
python_register_toolchains(
|
|
name = "python3_8",
|
|
python_version = "3.8",
|
|
)
|
|
|
|
load("@python3_8//:defs.bzl", "interpreter")
|
|
load("@rules_python//python:pip.bzl", "pip_parse")
|
|
|
|
pip_parse(
|
|
name = "pip_deps",
|
|
python_interpreter_target = interpreter,
|
|
requirements_lock = "//:tools/build/bazel/requirements.txt",
|
|
)
|
|
|
|
load("@pip_deps//:requirements.bzl", "install_deps")
|
|
|
|
install_deps()
|
|
|
|
load("@pybind11_bazel//:python_configure.bzl", "python_configure")
|
|
|
|
python_configure(
|
|
name = "local_config_python",
|
|
python_interpreter_target = interpreter,
|
|
)
|
|
|
|
load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps")
|
|
|
|
protobuf_deps()
|
|
|
|
new_local_repository(
|
|
name = "cuda",
|
|
build_file = "@//third_party:cuda.BUILD",
|
|
path = "/usr/local/cuda",
|
|
)
|
|
|
|
new_local_repository(
|
|
name = "cudnn",
|
|
build_file = "@//third_party:cudnn.BUILD",
|
|
path = "/usr/",
|
|
)
|
|
|
|
local_repository(
|
|
name = "com_github_google_flatbuffers",
|
|
path = "third_party/flatbuffers",
|
|
)
|
|
|
|
local_repository(
|
|
name = "google_benchmark",
|
|
path = "third_party/benchmark",
|
|
)
|
|
|
|
local_repository(
|
|
name = "com_google_googletest",
|
|
path = "third_party/googletest",
|
|
)
|
|
|
|
local_repository(
|
|
name = "pthreadpool",
|
|
path = "third_party/pthreadpool",
|
|
repo_mapping = {"@com_google_benchmark": "@google_benchmark"},
|
|
)
|
|
|
|
local_repository(
|
|
name = "FXdiv",
|
|
path = "third_party/FXdiv",
|
|
repo_mapping = {"@com_google_benchmark": "@google_benchmark"},
|
|
)
|
|
|
|
local_repository(
|
|
name = "XNNPACK",
|
|
path = "third_party/XNNPACK",
|
|
repo_mapping = {"@com_google_benchmark": "@google_benchmark"},
|
|
)
|
|
|
|
local_repository(
|
|
name = "gemmlowp",
|
|
path = "third_party/gemmlowp/gemmlowp",
|
|
)
|
|
|
|
### Unused repos start
|
|
|
|
# `unused` repos are defined to hide bazel files from submodules of submodules.
|
|
# This allows us to run `bazel build //...` and not worry about the submodules madness.
|
|
# Otherwise everything traverses recursively and a lot of submodules of submodules have
|
|
# they own bazel build files.
|
|
|
|
local_repository(
|
|
name = "unused_tensorpipe_googletest",
|
|
path = "third_party/tensorpipe/third_party/googletest",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_fbgemm",
|
|
path = "third_party/fbgemm",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_ftm_bazel",
|
|
path = "third_party/fmt/support/bazel",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_kineto_fmt_bazel",
|
|
path = "third_party/kineto/libkineto/third_party/fmt/support/bazel",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_kineto_dynolog_googletest",
|
|
path = "third_party/kineto/libkineto/third_party/dynolog/third_party/googletest",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_kineto_dynolog_gflags",
|
|
path = "third_party/kineto/libkineto/third_party/dynolog/third_party/gflags",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_kineto_dynolog_glog",
|
|
path = "third_party/kineto/libkineto/third_party/dynolog/third_party/glog",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_kineto_googletest",
|
|
path = "third_party/kineto/libkineto/third_party/googletest",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_onnx_benchmark",
|
|
path = "third_party/onnx/third_party/benchmark",
|
|
)
|
|
|
|
local_repository(
|
|
name = "unused_onnx_tensorrt_benchmark",
|
|
path = "third_party/onnx-tensorrt/third_party/onnx/third_party/benchmark",
|
|
)
|
|
|
|
### Unused repos end
|