-
Notifications
You must be signed in to change notification settings - Fork 58
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
3ec37f8
commit 4d49dc0
Showing
7 changed files
with
137 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
name: generate SRPM | ||
on: [push, pull_request] | ||
jobs: | ||
srpm: | ||
runs-on: ubuntu-latest | ||
container: | ||
image: fedora:rawhide | ||
options: --privileged | ||
steps: | ||
- run: dnf install -y packit git nodejs | ||
- uses: actions/checkout@v4 | ||
- run: git config --global --add safe.directory /__w/aws-ofi-nccl/aws-ofi-nccl | ||
- run: packit srpm | ||
- uses: actions/upload-artifact@v4 | ||
with: | ||
name: "libnccl-net-ofi.src.rpm" | ||
path: "*.src.rpm" | ||
if-no-files-found: 'error' | ||
compression-level: '0' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -75,3 +75,4 @@ m4/lt~obsolete.m4 | |
.idea/ | ||
.devenv/ | ||
.direnv | ||
*.src.rpm |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
--- | ||
# vi:ts=2 sw=2 et: | ||
# | ||
# Docs: https://packit.dev/docs/ | ||
|
||
|
||
srpm_build_deps: | ||
- git | ||
|
||
actions: | ||
get-current-version: | ||
- bash -c "cat .version" | ||
create-archive: | ||
- bash -c "git archive --prefix=libnccl-net-ofi/ --format=tgz --output=libnccl-net-ofi_${PACKIT_PROJECT_VERSION}.tar.gz HEAD src/ include/ doc/ m4/ tests/ topology/ configure.ac Makefile.am LICENSE NOTICE .version && echo libnccl-net-ofi_${PACKIT_PROJECT_VERSION}.tar.gz" | ||
|
||
specfile_path: libnccl-net-ofi.spec | ||
upstream_package_name: libnccl-net-ofi | ||
downstream_package_name: libnccl-net-ofi | ||
release_suffix: "{PACKIT_PROJECT_BRANCH}" | ||
update_release: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
1.12.0pre |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,7 +6,7 @@ | |
# | ||
|
||
# Initialization | ||
AC_INIT([aws-ofi-nccl], [GitHub-dev], [[email protected]], , [http://github.com/aws/aws-ofi-nccl]) | ||
AC_INIT([aws-ofi-nccl], m4_normalize(m4_include([.version])), [[email protected]], , [http://github.com/aws/aws-ofi-nccl]) | ||
AC_PREREQ([2.69]) | ||
AC_CONFIG_SRCDIR([src/nccl_ofi_net.c]) | ||
AC_CONFIG_AUX_DIR([build-aux]) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
# Whether to build with cuda support. Default: on if neuron | ||
%if "%{with_cuda}" == "1" && "%{with_neuron}" == "1" | ||
%{error:Neuron and CUDA must not be enabled together} | ||
%endif | ||
|
||
%if "%{with_cuda}" == "0" && "%{with_neuron}" == "0" | ||
%{error:One of Neuron or CUDA must be enabled} | ||
%endif | ||
|
||
%if "%{with_cuda}" == "1" | ||
%{!?target: %global target nccl} | ||
%endif | ||
%if "%{with_neuron}" == "1" | ||
%{!?target: %global target nccom} | ||
%endif | ||
|
||
%global pname_base lib%{!?with_neuron:nccl}%{?with_neuron:nccom}-net-ofi | ||
%global pname %{pname_base}%{?with_platform_aws:-aws} | ||
|
||
%if "%{with_platform_aws}" | ||
%global _prefix /opt/amazon/%{pname_base} | ||
%endif | ||
|
||
# (CUDA only) what toolkit package to declare a build dependency on. Default: 12-6 | ||
%{!?_cuda_toolkit_version: %global _cuda_toolkit_version 12-6} | ||
|
||
Name: %{pname} | ||
Version: null | ||
Release: 0%{dist} | ||
Summary: NCCL + libfabric compatibility layer | ||
License: Apache-2.0 | ||
URL: https://github.com/aws/aws-ofi-nccl | ||
Source0: null | ||
%if "%{_vendor}" == "debbuild" | ||
Group: devel | ||
%else | ||
Group: Development/Tools%{?suse_version:/Building} | ||
BuildRequires: hwloc-devel | ||
BuildRequires: libfabric-%{?with_platform_aws:aws-}devel | ||
BuildRequires: autoconf | ||
BuildRequires: automake | ||
BuildRequires: libtool | ||
%if "%{with_cuda}" == "1" | ||
BuildRequires: cuda-cudart-devel-%{_cuda_toolkit_version} | ||
%endif | ||
%endif | ||
Requires: hwloc | ||
Requires: libfabric%{?with_platform_aws:-aws} | ||
|
||
%description | ||
This is a plugin which lets EC2 developers use libfabric as network provider | ||
while running NCCL applications. | ||
|
||
|
||
%prep | ||
%setup | ||
%build | ||
autoreconf -ivf | ||
%configure \ | ||
--prefix="%{_prefix}" \ | ||
--disable-tests \ | ||
--with-mpi=no \ | ||
%if "%{with_cuda}" == "1" | ||
--with-cuda=/usr/local/cuda-12 \ | ||
--enable-neuron=no \ | ||
%else | ||
--with-cuda=no \ | ||
--enable-neuron=yes \ | ||
%endif | ||
%if "%{with_platform_aws}" == "1" | ||
--enable-platform-aws \ | ||
--with-libfabric=/opt/amazon/efa | ||
%else | ||
--disable-platform-aws | ||
%endif | ||
%make_build | ||
|
||
|
||
%install | ||
%make_install | ||
find %{buildroot} -name '*.la' -exec rm -f {} ';' | ||
%ldconfig_scriptlets | ||
|
||
|
||
%files | ||
%{_libdir}/*.so | ||
%{_datadir}/aws-ofi-nccl/xml/*.xml | ||
%license LICENSE NOTICE | ||
%doc | ||
|
||
|
||
%changelog | ||
* Thu Aug 08 2024 Nicholas Sielicki <[email protected]> | ||
Initial Package |