public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/rccl/files/, dev-libs/rccl/
@ 2021-01-24  7:49 Benda XU
  0 siblings, 0 replies; 2+ messages in thread
From: Benda XU @ 2021-01-24  7:49 UTC (permalink / raw
  To: gentoo-commits

commit:     48544762ef753e69fc2a4c1e7b3adf9ead209683
Author:     Benda Xu <heroxbd <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 21 09:12:48 2021 +0000
Commit:     Benda XU <heroxbd <AT> gentoo <DOT> org>
CommitDate: Sun Jan 24 07:48:27 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48544762

dev-libs/rccl: ROCm Communication Collectives Library

Closes: https://github.com/gentoo/gentoo/pull/19143
Bug: https://bugs.gentoo.org/650804
Bug: https://github.com/gentoo/gentoo/pull/10724
Suggested-by: Yiyang Wu <xgreenlandforwyy <AT> gmail.com>
Suggested-by: Wilfried Holzke <gentoo <AT> holzke.net>
Package-Manager: Portage-3.0.12, Repoman-3.0.1
Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org>

 dev-libs/rccl/Manifest                             |  1 +
 .../files/rccl-2.7.0-change_install_location.patch | 33 ++++++++++++++++++
 dev-libs/rccl/metadata.xml                         | 19 +++++++++++
 dev-libs/rccl/rccl-4.0.0-r1.ebuild                 | 39 ++++++++++++++++++++++
 4 files changed, 92 insertions(+)

diff --git a/dev-libs/rccl/Manifest b/dev-libs/rccl/Manifest
new file mode 100644
index 00000000000..19e11e35867
--- /dev/null
+++ b/dev-libs/rccl/Manifest
@@ -0,0 +1 @@
+DIST rccl-4.0.0.tar.gz 741814 BLAKE2B c20178e45fb7787ef7f5e20326f91f11a1b2a575277b5f28591b0be6efa6730c3509b11255372648f1df50e33b5e593dbe9c3334c5001f39423fc70acfa49d07 SHA512 d25754895d7b5695e46031642c2550cf2b6b5c42628d8381a23d6d1a48699a14a4fdf842205a14b96bdd1339341f9e558492ef9366a63036d8a8a7011d2c1b05

diff --git a/dev-libs/rccl/files/rccl-2.7.0-change_install_location.patch b/dev-libs/rccl/files/rccl-2.7.0-change_install_location.patch
new file mode 100644
index 00000000000..c129e80c62c
--- /dev/null
+++ b/dev-libs/rccl/files/rccl-2.7.0-change_install_location.patch
@@ -0,0 +1,33 @@
+--- a/CMakeLists.txt	2019-09-02 18:19:53.540736052 +0200
++++ b/CMakeLists.txt	2019-09-02 18:21:14.936735741 +0200
+@@ -162,15 +162,16 @@
+ 
+ rocm_install_targets(TARGETS
+                      rccl
+-                     PREFIX
+-                     rccl)
++#                     PREFIX
++#                     rccl
++			)
+ install(FILES ${PROJECT_BINARY_DIR}/rccl.h
+-        DESTINATION rccl/${CMAKE_INSTALL_INCLUDEDIR})
++        DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+ 
+ rocm_export_targets(NAMESPACE
+                     roc::
+-                    PREFIX
+-                    rccl
++#                    PREFIX
++#                    rccl
+                     TARGETS
+                     rccl
+                     DEPENDS
+@@ -190,7 +191,7 @@
+   "<no-reply@amd.com>"
+   LDCONFIG)
+ 
+-rocm_install_symlink_subdir(rccl)
++#rocm_install_symlink_subdir(rccl)
+ 
+ if(BUILD_TESTS)
+   add_subdirectory(test)

diff --git a/dev-libs/rccl/metadata.xml b/dev-libs/rccl/metadata.xml
new file mode 100644
index 00000000000..1e0f4fb686b
--- /dev/null
+++ b/dev-libs/rccl/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+  <maintainer type="project">
+    <email>sci@gentoo.org</email>
+    <name>Gentoo Science Project</name>
+  </maintainer>
+  <maintainer type="person">
+    <email>candrews@gentoo.org</email>
+    <name>Craig Andrews</name>
+  </maintainer>
+  <maintainer type="person">
+    <email>gentoo@holzke.net</email>
+    <name>Wilfried Holzke</name>
+  </maintainer>
+  <upstream>
+    <remote-id type="github">ROCm-Developer-Tools/rccl</remote-id>
+  </upstream>
+</pkgmetadata>

diff --git a/dev-libs/rccl/rccl-4.0.0-r1.ebuild b/dev-libs/rccl/rccl-4.0.0-r1.ebuild
new file mode 100644
index 00000000000..364e12bac66
--- /dev/null
+++ b/dev-libs/rccl/rccl-4.0.0-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="ROCm Communication Collectives Library (RCCL)"
+HOMEPAGE="https://github.com/ROCmSoftwarePlatform/rccl"
+SRC_URI="https://github.com/ROCmSoftwarePlatform/rccl/archive/rocm-${PV}.tar.gz -> rccl-${PV}.tar.gz"
+
+LICENSE="BSD"
+KEYWORDS="~amd64"
+SLOT="0"
+
+RDEPEND="=dev-util/hip-$(ver_cut 1-2)*"
+DEPEND="${RDPEND}
+	dev-util/rocm-cmake"
+
+S="${WORKDIR}/rccl-rocm-${PV}"
+
+PATCHES=(
+	"${FILESDIR}/rccl-2.7.0-change_install_location.patch"
+)
+
+src_configure() {
+	addwrite /dev/kfd
+	addpredict /dev/dri/
+
+	export DEVICE_LIB_PATH="${EPREFIX}/usr/lib/amdgcn/bitcode/"
+	export CXX=hipcc
+
+	local mycmakeargs=(
+		-DBUILD_TESTS=OFF
+		-Wno-dev
+	)
+
+	cmake_src_configure
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-libs/rccl/files/, dev-libs/rccl/
@ 2024-03-08 19:22 Sam James
  0 siblings, 0 replies; 2+ messages in thread
From: Sam James @ 2024-03-08 19:22 UTC (permalink / raw
  To: gentoo-commits

commit:     2cf5fac5e9a35809a0f2eb7b4b4ad0a8caa0170a
Author:     Sv. Lockal <lockalsash <AT> gmail <DOT> com>
AuthorDate: Wed Nov  8 21:12:05 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar  8 19:21:57 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2cf5fac5

dev-libs/rccl: add 5.7.1

Signed-off-by: Sv. Lockal <lockalsash <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/rccl/Manifest                             |  1 +
 .../rccl/files/rccl-5.7.1-remove-chrpath.patch     | 17 +++++
 dev-libs/rccl/rccl-5.7.1.ebuild                    | 78 ++++++++++++++++++++++
 3 files changed, 96 insertions(+)

diff --git a/dev-libs/rccl/Manifest b/dev-libs/rccl/Manifest
index 50be3ed5b7b8..baeaa02c7d4e 100644
--- a/dev-libs/rccl/Manifest
+++ b/dev-libs/rccl/Manifest
@@ -1 +1,2 @@
 DIST rccl-5.1.3.tar.gz 908274 BLAKE2B 46bff7b6e3d60d5884ccd7e19c54b2f47f90a337a8fdc6dca1a3cfee147e3652e1f912642cc134d4a82bf8daabd9f1391edff139d0517ab1078bd3d9650481d7 SHA512 20deb27c7ef3e6b6b73409950ac0d51286b4634f7002ce36a9a02cdd1d5b1f2db51f6decf773af83364c94f58cc96837da25299f5f5494fc15d8559a1b3c7fcc
+DIST rccl-5.7.1.tar.gz 1425561 BLAKE2B 852c111ad806d5c99f48b3c65c8cf37315c68b969f9544bfa14c1faf1d5557edcc57cdc21705ced6ded4a0288d42b1076e65fb67b3f89b4fa78cfba9d317b23e SHA512 5913b8ff67fa787714713b7d5b571374898be740d56c77db9f04fe7a3e6ca74023fa930a3494d8a6f984ac9e68ee318343835e110049d08700fe773376618af4

diff --git a/dev-libs/rccl/files/rccl-5.7.1-remove-chrpath.patch b/dev-libs/rccl/files/rccl-5.7.1-remove-chrpath.patch
new file mode 100644
index 000000000000..a9184f1c7b98
--- /dev/null
+++ b/dev-libs/rccl/files/rccl-5.7.1-remove-chrpath.patch
@@ -0,0 +1,17 @@
+chrpath is not used in rccl 5.7.1
+
+Upstream fix: https://github.com/ROCmSoftwarePlatform/rccl/pull/811
+--- a/test/CMakeLists.txt
++++ b/test/CMakeLists.txt
+@@ -7,11 +7,6 @@ if(BUILD_TESTS)
+ 
+   message("Building rccl unit tests (Installed in /test/rccl-UnitTests)")
+ 
+-  find_program(CHRPATH chrpath)
+-  if(NOT CHRPATH)
+-      message(FATAL_ERROR "chrpath is required for rccl-UnitTests. Please install (e.g. sudo apt-get install chrpath)")
+-  endif()
+-
+   find_package(hsa-runtime64 PATHS /opt/rocm )
+   if(${hsa-runtime64_FOUND})
+     message("hsa-runtime64 found @  ${hsa-runtime64_DIR} ")

diff --git a/dev-libs/rccl/rccl-5.7.1.ebuild b/dev-libs/rccl/rccl-5.7.1.ebuild
new file mode 100644
index 000000000000..1ebf9619a55b
--- /dev/null
+++ b/dev-libs/rccl/rccl-5.7.1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ROCM_VERSION=${PV}
+
+inherit cmake edo rocm flag-o-matic
+
+DESCRIPTION="ROCm Communication Collectives Library (RCCL)"
+HOMEPAGE="https://github.com/ROCmSoftwarePlatform/rccl"
+SRC_URI="https://github.com/ROCmSoftwarePlatform/rccl/archive/rocm-${PV}.tar.gz -> rccl-${PV}.tar.gz"
+
+LICENSE="BSD"
+KEYWORDS="~amd64"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="test"
+
+RDEPEND="
+	=dev-util/hip-5*
+	dev-util/rocm-smi:${SLOT}"
+DEPEND="${RDEPEND}
+	sys-libs/binutils-libs"
+BDEPEND="
+	>=dev-build/cmake-3.22
+	>=dev-build/rocm-cmake-5.0.2-r1
+	dev-util/hipify-clang:${SLOT}
+	test? ( dev-cpp/gtest )"
+
+RESTRICT="!test? ( test )"
+S="${WORKDIR}/rccl-rocm-${PV}"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-5.7.1-remove-chrpath.patch"
+)
+
+src_prepare() {
+	cmake_src_prepare
+
+	# https://reviews.llvm.org/D69582 - clang does not support parallel jobs
+	sed -i 's/-parallel-jobs=[0-9][0-9]//g' CMakeLists.txt || die
+
+	# https://github.com/ROCmSoftwarePlatform/rccl/pull/860 - bad escape
+	sed -i 's/\\%/%/' src/include/msccl/msccl_struct.h || die
+
+	# https://github.com/ROCmSoftwarePlatform/rccl/issues/958 - fix AMDGPU_TARGETS
+	sed -i '/set(AMDGPU_TARGETS/s/ FORCE//' CMakeLists.txt || die
+}
+
+src_configure() {
+	addpredict /dev/kfd
+	addpredict /dev/dri/
+
+	# https://github.com/llvm/llvm-project/issues/71711 - fix issue of clang
+	append-ldflags -Wl,-z,noexecstack
+
+	local mycmakeargs=(
+		-DCMAKE_SKIP_RPATH=ON
+		-DAMDGPU_TARGETS="$(get_amdgpu_flags)"
+		-DBUILD_TESTS=$(usex test ON OFF)
+		-DROCM_SYMLINK_LIBS=OFF
+		-Wno-dev
+	)
+
+	CXX=hipcc cmake_src_configure
+}
+
+src_test() {
+	CHECK_AMDGPU
+	LD_LIBRARY_PATH="${BUILD_DIR}" edob test/rccl-UnitTests
+}
+
+src_install() {
+	cmake_src_install
+
+	# remove extra copy of headers
+	rm -r "${ED}"/usr/rccl || die
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-03-08 19:22 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-24  7:49 [gentoo-commits] repo/gentoo:master commit in: dev-libs/rccl/files/, dev-libs/rccl/ Benda XU
  -- strict thread matches above, loose matches on Subject: below --
2024-03-08 19:22 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox