Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[tensorpipe] update to latest #23569

Merged
merged 8 commits into from
May 18, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 0 additions & 71 deletions ports/tensorpipe/fix-cmakelists.patch

This file was deleted.

27 changes: 18 additions & 9 deletions ports/tensorpipe/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,14 +1,20 @@
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)

vcpkg_download_distfile(INSTALL_PACKAGE_CONFIG_PATCH
URLS "https://patch-diff.githubusercontent.com/raw/pytorch/tensorpipe/pull/435.diff"
FILENAME tensorpipe-pr-435.patch
SHA512 7bcf604a967da36b8af936f8b8ab87b442834024b0b2cb886811c15e80893be842fbee2667bbbc39886814ec9b2f4ed0c2527de51fdb7dc293b25cce515f5e4b
)

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO pytorch/tensorpipe
REF c5a21994bc766659f7f85edb75478e13f429f46c
SHA512 05a3989286610edea2f0fcfb9197c563e947f0386f2b52110dd060053d68b62477fcd4778a45a3030b9a53b6ceccead91e4dd96c9f0153023e97414459fbd8dd
REF 52791a2fd214b2a9dc5759d36725909c1daa7f2e
SHA512 1e5faf17a7236c5506c08cb28be16069b11bb929bbca64ed9745ce4277d46739186ab7d6597da7437d90ed2d166d4c37ef2f3bceabe8083ef3adbb0e8e5f227e
PATCHES
fix-cmakelists.patch
"${INSTALL_PACKAGE_CONFIG_PATCH}"
use-vcpkg.patch
support-test.patch
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not a fan of patches in support of tests we generally don't want to build in the first place, but this is preexsisting. :)

support-pybind11.patch
)

vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
Expand All @@ -25,20 +31,23 @@ if("pybind11" IN_LIST FEATURES)
endif()
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know this is preexisting, but FYI this is almost certainly wrong: that this depends on building a Python suggests that it's building a Python plugin and should be using the built one, rather than one from the system.


vcpkg_cmake_configure(
SOURCE_PATH ${SOURCE_PATH}
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
${FEATURE_OPTIONS}
-DTP_ENABLE_SHM=${VCPKG_TARGET_IS_LINUX}
-DTP_ENABLE_IBV=OFF
-DTP_ENABLE_CMA=OFF
-DTP_BUILD_LIBUV=OFF # will use libuv package
-DTP_ENABLE_CUDA_GDR=OFF
MAYBE_UNUSED_VARIABLES
TP_ENABLE_CUDA_GDR
TP_ENABLE_CUDA_IPC
)
vcpkg_cmake_install()
vcpkg_copy_pdbs()
vcpkg_cmake_config_fixup()
vcpkg_cmake_config_fixup(CONFIG_PATH "share/cmake/Tensorpipe")

file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include
${CURRENT_PACKAGES_DIR}/debug/share
file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include"
"${CURRENT_PACKAGES_DIR}/debug/share"
)
30 changes: 0 additions & 30 deletions ports/tensorpipe/support-pybind11.patch

This file was deleted.

46 changes: 23 additions & 23 deletions ports/tensorpipe/support-test.patch
Original file line number Diff line number Diff line change
@@ -1,39 +1,39 @@
diff --git a/tensorpipe/test/CMakeLists.txt b/tensorpipe/test/CMakeLists.txt
index c0320aa..1414bdd 100644
index 53e8643..c49ada6 100644
--- a/tensorpipe/test/CMakeLists.txt
+++ b/tensorpipe/test/CMakeLists.txt
@@ -86,11 +86,8 @@ if(TP_USE_CUDA)
endif()


-add_subdirectory(${PROJECT_SOURCE_DIR}/third_party/googletest
- ${PROJECT_BINARY_DIR}/third_party/googletest)
+find_package(GTest CONFIG REQUIRED)

target_link_libraries(tensorpipe_test PRIVATE
tensorpipe
- uv::uv
- gmock
- gtest_main)
+ unofficial::libuv::libuv GTest::gmock GTest::gtest_main)

diff --git a/tensorpipe/test/CMakeLists.txt b/tensorpipe/test/CMakeLists.txt
index fecc731..031e40d 100644
--- a/tensorpipe/test/CMakeLists.txt
+++ b/tensorpipe/test/CMakeLists.txt
@@ -80,10 +80,11 @@ if(TP_USE_CUDA)
@@ -93,25 +93,24 @@ if(TP_USE_CUDA)
channel/cuda_ipc/cuda_ipc_test.cc
)
endif()
-
- target_sources(tensorpipe_test PRIVATE
- list(APPEND TP_TEST_SRCS
- channel/cuda_gdr/cuda_gdr_test.cc
- )
-
+ if(TP_ENABLE_CUDA_GDR)
+ target_sources(tensorpipe_test PRIVATE
+ list(APPEND TP_TEST_SRCS
+ channel/cuda_gdr/cuda_gdr_test.cc
+ )
+ endif()
cuda_add_library(tensorpipe_cuda_kernel channel/kernel.cu)
list(APPEND TP_TEST_LINK_LIBRARIES tensorpipe_cuda_kernel)

list(APPEND TP_TEST_LINK_LIBRARIES tensorpipe_cuda)
endif()

-add_subdirectory(${PROJECT_SOURCE_DIR}/third_party/googletest
- ${PROJECT_BINARY_DIR}/third_party/googletest EXCLUDE_FROM_ALL)
+find_package(GTest CONFIG REQUIRED)

list(APPEND TP_TEST_LINK_LIBRARIES
tensorpipe
- uv::uv
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are there official libuv targets we should be providing instead now?

- gmock
- gtest_main)
+ unofficial::libuv::libuv
+ GTest::gmock
+ GTest::gtest_main)

add_executable(tensorpipe_test ${TP_TEST_SRCS})

48 changes: 48 additions & 0 deletions ports/tensorpipe/use-vcpkg.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
diff --git a/tensorpipe/CMakeLists.txt b/tensorpipe/CMakeLists.txt
index efcffc2..e167fae 100644
--- a/tensorpipe/CMakeLists.txt
+++ b/tensorpipe/CMakeLists.txt
@@ -119,8 +119,8 @@ list(APPEND TP_PUBLIC_HDRS
transport/uv/utility.h)

# Add uv package
-find_package(uv REQUIRED)
-list(APPEND TP_LINK_LIBRARIES uv::uv)
+find_package(unofficial-libuv CONFIG REQUIRED)
+list(APPEND TP_LINK_LIBRARIES unofficial::libuv::libuv)

### shm

@@ -184,7 +184,8 @@ configure_file(config.h.in config.h)
# We should keep libnop headers private as they should not be exposed to downstream users,
# but they're currently transitively included by tensorpipe/transport/connection.h (which
# is still unclear whether it should be a public or private header).
-list(APPEND TP_INCLUDE_DIRS $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/third_party/libnop/include>)
+find_path(LIBNOP_INCLUDE_DIRS "nop/serializer.h" REQUIRED)
+list(APPEND TP_INCLUDE_DIRS $<BUILD_INTERFACE:${LIBNOP_INCLUDE_DIRS}>)


## Target
diff --git a/tensorpipe/python/CMakeLists.txt b/tensorpipe/python/CMakeLists.txt
index b722381..688886a 100644
--- a/tensorpipe/python/CMakeLists.txt
+++ b/tensorpipe/python/CMakeLists.txt
@@ -4,16 +4,11 @@
# This source code is licensed under the BSD-style license found in the
# LICENSE file in the root directory of this source tree.

-if(NOT (COMMAND pybind11_add_module))
- add_subdirectory(
- ${PROJECT_SOURCE_DIR}/third_party/pybind11
- ${PROJECT_BINARY_DIR}/third_party/pybind11
- EXCLUDE_FROM_ALL)
-endif()
+find_package(pybind11 CONFIG REQUIRED)

set(PYBIND11_CPP_STANDARD -std=c++14)
pybind11_add_module(pytensorpipe tensorpipe.cc)
-target_link_libraries(pytensorpipe PRIVATE tensorpipe)
+target_link_libraries(pytensorpipe PRIVATE tensorpipe pybind11::module)

install(TARGETS pytensorpipe
EXPORT TensorpipeTargets
4 changes: 2 additions & 2 deletions ports/tensorpipe/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"name": "tensorpipe",
"version-date": "2021-04-26",
"port-version": 1,
"version-date": "2022-03-16",
"description": "A tensor-aware point-to-point communication primitive for machine learning",
"homepage": "https://github.com/pytorch/tensorpipe",
"license": "BSD-3-Clause",
"supports": "linux | osx",
"dependencies": [
"libnop",
Expand Down
4 changes: 2 additions & 2 deletions versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -6917,8 +6917,8 @@
"port-version": 2
},
"tensorpipe": {
"baseline": "2021-04-26",
"port-version": 1
"baseline": "2022-03-16",
"port-version": 0
},
"termcolor": {
"baseline": "2.1.0",
Expand Down
5 changes: 5 additions & 0 deletions versions/t-/tensorpipe.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "f78594bb71084f0ea1b9e0bba9b9804696e4c011",
"version-date": "2022-03-16",
"port-version": 0
},
{
"git-tree": "fc442cfbc144a4fc95ca41d9349ef04564d7ce5a",
"version-date": "2021-04-26",
Expand Down