From b5e65d62cec1b851ee60aff985b717fbc3babc2e Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 30 Jan 2023 16:20:02 -0800 Subject: [PATCH 01/65] Add libcufile recipe --- recipes/libcufile/Makefile.patch | 14 +++++++ recipes/libcufile/build.bat | 17 ++++++++ recipes/libcufile/meta.yaml | 71 ++++++++++++++++++++++++++++++++ 3 files changed, 102 insertions(+) create mode 100644 recipes/libcufile/Makefile.patch create mode 100644 recipes/libcufile/build.bat create mode 100644 recipes/libcufile/meta.yaml diff --git a/recipes/libcufile/Makefile.patch b/recipes/libcufile/Makefile.patch new file mode 100644 index 0000000000000..f97c7e0a2e191 --- /dev/null +++ b/recipes/libcufile/Makefile.patch @@ -0,0 +1,14 @@ +--- samples/Makefile 2022-06-24 00:23:23.000000000 +0000 ++++ samples/Makefile.new 2022-06-27 15:04:32.235125647 +0000 +@@ -35,8 +35,8 @@ + + # Common includes and paths for CUDA + CUDA_PATH := /usr/local/cuda +-CUFILE_PATH ?= /usr/local/cuda/targets/x86_64-linux/lib/ +-CUFILE_INCLUDE_PATH ?= /usr/local/cuda/targets/x86_64-linux/include/ ++CUFILE_PATH ?= /usr/local/cuda/lib/ ++CUFILE_INCLUDE_PATH ?= /usr/local/cuda/include/ + CXXFLAGS := -Wall + CXXFLAGS += -I $(CUDA_PATH)/include/ + CXXFLAGS += -I $(CUFILE_INCLUDE_PATH) + diff --git a/recipes/libcufile/build.bat b/recipes/libcufile/build.bat new file mode 100644 index 0000000000000..6af6c302f87a4 --- /dev/null +++ b/recipes/libcufile/build.bat @@ -0,0 +1,17 @@ +if not exist %PREFIX% mkdir %PREFIX% + +rem Directories... +for /D %%i in (.\*) do ( + robocopy /E %%i %PREFIX%\%%i +) + +rem Files... +for %%i in (.\*) do ( + if not %%~ni==build_env_setup ( + if not %%~ni==conda_build ( + if not %%~ni==metadata_conda_debug ( + xcopy %%i %PREFIX% + ) + ) + ) +) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml new file mode 100644 index 0000000000000..898320850598e --- /dev/null +++ b/recipes/libcufile/meta.yaml @@ -0,0 +1,71 @@ +{% set name = "libcufile" %} +{% set version = "1.5.0.59" %} +{% set platform = "linux-x86_64" %} # [linux64] + +package: + name: {{ name|lower }} + version: {{ version }} + +source: + url: https://developer.download.nvidia.com/compute/cuda/redist/{{ name }}/{{ platform }}/{{ name }}-{{ platform }}-{{ version }}-archive.tar.xz + sha256: 222c49b29afb544c69542c4e658b0a1bd01fd2306f2136ad6990ccfff482a097 # [linux64] + patches: + - Makefile.patch + +build: + # uncomment the following line if the package is pure python and the recipe is exactly the same for all platforms. + # it is okay if the dependencies are not built for all platforms/versions, although selectors are still not allowed. + # see https://conda-forge.org/docs/maintainer/knowledge_base.html#noarch-python for more details. + # noarch: python + # if the installation is complex, or different between unix and windows, use separate bld.bat and build.sh files instead of this key. + # by default, the package will be built for the python versions supported by conda-forge and for all major oss. + # add the line "skip: true # [py<35]" (for example) to limit to python 3.5 and newer, or "skip: true # [not win]" to limit to windows. + # more info about selectors can be found in the conda-build docs: + # https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#preprocessing-selectors + #script: {{ python }} -m pip install . -vv + number: 0 + skip: true # [osx] + skip: true # [ppc64le] + skip: true # [aarch64] + skip: true # [win] + +outputs: + - name: libcufile + files: + - lib/libcufile*.so.* + - etc/cufile.json + + - name: libcufile-dev + requirements: + run: + - libcufile >={{ version }} + files: + - lib/libcufile*.so + - include/cufile* + - man + + - name: libcufile-static + requirements: + run: + - libcufile-dev >={{ version }} + files: + - lib/libcufile*_static.a + + - name: gds-tools + requirements: + run: + - libcufile >={{ version }} + files: + - gds/samples + - gds/tools + +about: + home: https://developer.nvidia.com/cuda-toolkit + license_url: https://docs.nvidia.com/cuda/eula/index.html + description: | + Library for GPU Direct Storage with CUDA + doc_url: https://docs.nvidia.com/cuda/index.html + +extra: + recipe-maintainers: + - adibbley From c9f1fc102f1263194598b4377fd89a311997d74c Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 30 Jan 2023 16:33:09 -0800 Subject: [PATCH 02/65] Add Licence metadata --- recipes/libcufile/meta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 898320850598e..3af7d4852c9d1 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -61,6 +61,8 @@ outputs: about: home: https://developer.nvidia.com/cuda-toolkit + license: LicenseRef-NVIDIA-End-User-License-Agreement + license_file: LICENSE license_url: https://docs.nvidia.com/cuda/eula/index.html description: | Library for GPU Direct Storage with CUDA From 372f26e1f39b06e2e9b41ab94560110e24846247 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 30 Jan 2023 16:34:01 -0800 Subject: [PATCH 03/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 3af7d4852c9d1..8618aaf4b6cf3 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -1,6 +1,11 @@ {% set name = "libcufile" %} {% set version = "1.5.0.59" %} -{% set platform = "linux-x86_64" %} # [linux64] + {% set platform = "linux-x86_64" %} # [linux64] + {% set platform = "linux-ppc64le" %} # [ppc64le] + {% set platform = "linux-sbsa" %} # [aarch64] + {% set platform = "windows-x86_64" %} # [win] + {% set extension = "tar.xz" %} # [not win] + {% set extension = "zip" %} # [win] package: name: {{ name|lower }} From 488dbdaee35f43e97de7dbfa15475acd895434d7 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 30 Jan 2023 16:34:07 -0800 Subject: [PATCH 04/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 8618aaf4b6cf3..a743be0d02b9a 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -12,7 +12,7 @@ package: version: {{ version }} source: - url: https://developer.download.nvidia.com/compute/cuda/redist/{{ name }}/{{ platform }}/{{ name }}-{{ platform }}-{{ version }}-archive.tar.xz + url: https://developer.download.nvidia.com/compute/cuda/redist/{{ name }}/{{ platform }}/{{ name }}-{{ platform }}-{{ version }}-archive.{{ extension }} sha256: 222c49b29afb544c69542c4e658b0a1bd01fd2306f2136ad6990ccfff482a097 # [linux64] patches: - Makefile.patch From 42797631082bff8690cf87754b50386844b9b91e Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 30 Jan 2023 16:46:59 -0800 Subject: [PATCH 05/65] Add summary --- recipes/libcufile/meta.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index a743be0d02b9a..65e58c346b2fc 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -69,9 +69,10 @@ about: license: LicenseRef-NVIDIA-End-User-License-Agreement license_file: LICENSE license_url: https://docs.nvidia.com/cuda/eula/index.html + summary: The cuFile library provides a mechanism for cuFile reads and writes to use compatibility mode using POSIX pread and pwrite APIS respectively to system memory and copying to GPU memory. description: | Library for GPU Direct Storage with CUDA - doc_url: https://docs.nvidia.com/cuda/index.html + doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html extra: recipe-maintainers: From 1a4969eafd2babfd27e4974dc05872fbf6a7e368 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 30 Jan 2023 16:48:33 -0800 Subject: [PATCH 06/65] Change description to summary --- recipes/libcufile/meta.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 65e58c346b2fc..e98e9f4a35c5a 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -69,8 +69,7 @@ about: license: LicenseRef-NVIDIA-End-User-License-Agreement license_file: LICENSE license_url: https://docs.nvidia.com/cuda/eula/index.html - summary: The cuFile library provides a mechanism for cuFile reads and writes to use compatibility mode using POSIX pread and pwrite APIS respectively to system memory and copying to GPU memory. - description: | + summary: | Library for GPU Direct Storage with CUDA doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html From 0c20a354e77782b834817f758e42fd09e6213901 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 30 Jan 2023 16:51:48 -0800 Subject: [PATCH 07/65] Add file tests --- recipes/libcufile/meta.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index e98e9f4a35c5a..c4dd2588fc9af 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -39,6 +39,10 @@ outputs: files: - lib/libcufile*.so.* - etc/cufile.json + test: + commands: + - test -f $PREFIX/lib/libcufile*.so.* + - test -f $PREFIX/etc/cufile.json - name: libcufile-dev requirements: @@ -48,6 +52,11 @@ outputs: - lib/libcufile*.so - include/cufile* - man + test: + commands: + - test -f $PREFIX/lib/libcufile*.so + - test -f $PREFIX/include/cufile* + - test -f $PREFIX/man - name: libcufile-static requirements: @@ -55,6 +64,9 @@ outputs: - libcufile-dev >={{ version }} files: - lib/libcufile*_static.a + test: + commands: + - test -f $PREFIX/lib/libcufile*_static.a - name: gds-tools requirements: @@ -63,6 +75,10 @@ outputs: files: - gds/samples - gds/tools + test: + commands: + - test -f $PREFIX/gds/samples + - test -f $PREFIX/gds/tools about: home: https://developer.nvidia.com/cuda-toolkit From fbac483fa6da7fa9d04b637cd6e5f16905c91f8c Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Tue, 31 Jan 2023 14:45:36 -0800 Subject: [PATCH 08/65] Update recipes/libcufile/meta.yaml Co-authored-by: adibbley <103537006+adibbley@users.noreply.github.com> --- recipes/libcufile/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index c4dd2588fc9af..2fb5a50427137 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -64,6 +64,7 @@ outputs: - libcufile-dev >={{ version }} files: - lib/libcufile*_static.a + - targets/*/lib/libcufile*_static.a test: commands: - test -f $PREFIX/lib/libcufile*_static.a From e41a0ac7ce6717a931d97687e09c7ec3c5941cb0 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Tue, 31 Jan 2023 14:45:45 -0800 Subject: [PATCH 09/65] Update recipes/libcufile/meta.yaml Co-authored-by: adibbley <103537006+adibbley@users.noreply.github.com> --- recipes/libcufile/meta.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 2fb5a50427137..8a70f4b1c1905 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -1,11 +1,8 @@ {% set name = "libcufile" %} {% set version = "1.5.0.59" %} {% set platform = "linux-x86_64" %} # [linux64] - {% set platform = "linux-ppc64le" %} # [ppc64le] {% set platform = "linux-sbsa" %} # [aarch64] - {% set platform = "windows-x86_64" %} # [win] {% set extension = "tar.xz" %} # [not win] - {% set extension = "zip" %} # [win] package: name: {{ name|lower }} From 5d1892114c6acdbcd84fe2ab5f6a2549e2332bf4 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Tue, 31 Jan 2023 14:45:58 -0800 Subject: [PATCH 10/65] Update recipes/libcufile/meta.yaml Co-authored-by: adibbley <103537006+adibbley@users.noreply.github.com> --- recipes/libcufile/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 8a70f4b1c1905..ecf17d8791408 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -11,6 +11,7 @@ package: source: url: https://developer.download.nvidia.com/compute/cuda/redist/{{ name }}/{{ platform }}/{{ name }}-{{ platform }}-{{ version }}-archive.{{ extension }} sha256: 222c49b29afb544c69542c4e658b0a1bd01fd2306f2136ad6990ccfff482a097 # [linux64] + sha256: 4e8d2b525322be9ab6ae574bd1d0325a4bf9c6c3bbdaa1611b5b969b7b34b0c4 # [aarch64] patches: - Makefile.patch From cdbcdba7ea3e0b2c86f42454cd9bff9a5c98c69c Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Tue, 31 Jan 2023 14:46:08 -0800 Subject: [PATCH 11/65] Update recipes/libcufile/meta.yaml Co-authored-by: adibbley <103537006+adibbley@users.noreply.github.com> --- recipes/libcufile/meta.yaml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index ecf17d8791408..44ba24df22d60 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -16,16 +16,6 @@ source: - Makefile.patch build: - # uncomment the following line if the package is pure python and the recipe is exactly the same for all platforms. - # it is okay if the dependencies are not built for all platforms/versions, although selectors are still not allowed. - # see https://conda-forge.org/docs/maintainer/knowledge_base.html#noarch-python for more details. - # noarch: python - # if the installation is complex, or different between unix and windows, use separate bld.bat and build.sh files instead of this key. - # by default, the package will be built for the python versions supported by conda-forge and for all major oss. - # add the line "skip: true # [py<35]" (for example) to limit to python 3.5 and newer, or "skip: true # [not win]" to limit to windows. - # more info about selectors can be found in the conda-build docs: - # https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#preprocessing-selectors - #script: {{ python }} -m pip install . -vv number: 0 skip: true # [osx] skip: true # [ppc64le] From 9e6d832375acc9b3f5997693b459fe83e082eb6f Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Tue, 31 Jan 2023 14:46:34 -0800 Subject: [PATCH 12/65] Update recipes/libcufile/meta.yaml Co-authored-by: adibbley <103537006+adibbley@users.noreply.github.com> --- recipes/libcufile/meta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 44ba24df22d60..0b5342293dbf4 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -38,7 +38,9 @@ outputs: - libcufile >={{ version }} files: - lib/libcufile*.so - - include/cufile* + - targets/*/lib/libcufile*.so + - include/cufile* + - targets/*/include/cufile* - man test: commands: From ee146b640ec6d30eea280f1484de9e08376cc391 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 31 Jan 2023 16:43:53 -0800 Subject: [PATCH 13/65] Add build.sh instead of build.bat --- recipes/libcufile/build.bat | 17 ----------------- recipes/libcufile/build.sh | 25 +++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 17 deletions(-) delete mode 100644 recipes/libcufile/build.bat create mode 100644 recipes/libcufile/build.sh diff --git a/recipes/libcufile/build.bat b/recipes/libcufile/build.bat deleted file mode 100644 index 6af6c302f87a4..0000000000000 --- a/recipes/libcufile/build.bat +++ /dev/null @@ -1,17 +0,0 @@ -if not exist %PREFIX% mkdir %PREFIX% - -rem Directories... -for /D %%i in (.\*) do ( - robocopy /E %%i %PREFIX%\%%i -) - -rem Files... -for %%i in (.\*) do ( - if not %%~ni==build_env_setup ( - if not %%~ni==conda_build ( - if not %%~ni==metadata_conda_debug ( - xcopy %%i %PREFIX% - ) - ) - ) -) diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh new file mode 100644 index 0000000000000..6966695de38d7 --- /dev/null +++ b/recipes/libcufile/build.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +# Install to conda style directories +[[ -d lib64 ]] && mv lib64 lib +[[ -d pkg-config ]] && mv pkg-config ${PREFIX}/lib/pkgconfig +[[ -d "$PREFIX/lib/pkgconfig" ]] && sed -E -i "s|cudaroot=.+|cudaroot=$PREFIX|g" $PREFIX/lib/pkgconfig/cufile*.pc + +[[ ${target_platform} == "linux-64" ]] && targetsDir="targets/x86_64-linux" +[[ ${target_platform} == "linux-aarch64" ]] && targetsDir="targets/sbsa-linux" + +for i in `ls`; do + [[ $i == "build_env_setup.sh" ]] && continue + [[ $i == "conda_build.sh" ]] && continue + [[ $i == "metadata_conda_debug.yaml" ]] && continue + if [[ $i == "lib" ]] || [[ $i == "include" ]]; then + mkdir -p ${PREFIX}/${targetsDir} + mkdir -p ${PREFIX}/$i + cp -rv $i ${PREFIX}/${targetsDir} + for j in `ls $i`; do + ln -s ../${targetsDir}/$i/$j ${PREFIX}/$i/$j + done + else + cp -rv $i ${PREFIX} + fi +done From 9ad326fab4b3b80a21133f39e3e3be39bd6a3316 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 3 Feb 2023 14:33:12 -0800 Subject: [PATCH 14/65] Update recipes/libcufile/Makefile.patch Co-authored-by: adibbley <103537006+adibbley@users.noreply.github.com> --- recipes/libcufile/Makefile.patch | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/libcufile/Makefile.patch b/recipes/libcufile/Makefile.patch index f97c7e0a2e191..3b93e5a6f0092 100644 --- a/recipes/libcufile/Makefile.patch +++ b/recipes/libcufile/Makefile.patch @@ -3,11 +3,11 @@ @@ -35,8 +35,8 @@ # Common includes and paths for CUDA - CUDA_PATH := /usr/local/cuda + CUDA_PATH := ${PREFIX} -CUFILE_PATH ?= /usr/local/cuda/targets/x86_64-linux/lib/ -CUFILE_INCLUDE_PATH ?= /usr/local/cuda/targets/x86_64-linux/include/ -+CUFILE_PATH ?= /usr/local/cuda/lib/ -+CUFILE_INCLUDE_PATH ?= /usr/local/cuda/include/ ++CUFILE_PATH ?= $(CUDA_PATH)/targets/x86_64-linux/lib/ ++CUFILE_INCLUDE_PATH ?= $(CUDA_PATH)/targets/x86_64-linux/include/ CXXFLAGS := -Wall CXXFLAGS += -I $(CUDA_PATH)/include/ CXXFLAGS += -I $(CUFILE_INCLUDE_PATH) From 64b3393cfbff76366c66194d1b51529e0e8677d7 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Fri, 3 Feb 2023 14:57:26 -0800 Subject: [PATCH 15/65] some formatting --- recipes/libcufile/meta.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 0b5342293dbf4..e1634e58010f7 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -1,8 +1,8 @@ {% set name = "libcufile" %} {% set version = "1.5.0.59" %} - {% set platform = "linux-x86_64" %} # [linux64] - {% set platform = "linux-sbsa" %} # [aarch64] - {% set extension = "tar.xz" %} # [not win] +{% set platform = "linux-x86_64" %} # [linux64] +{% set platform = "linux-sbsa" %} # [aarch64] +{% set extension = "tar.xz" %} # [not win] package: name: {{ name|lower }} @@ -38,9 +38,9 @@ outputs: - libcufile >={{ version }} files: - lib/libcufile*.so - - targets/*/lib/libcufile*.so - - include/cufile* - - targets/*/include/cufile* + - targets/*/lib/libcufile*.so + - include/cufile* + - targets/*/include/cufile* - man test: commands: From a90df31e5c66ec738633b87e926ba21d00d72ea3 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Fri, 3 Feb 2023 16:10:53 -0800 Subject: [PATCH 16/65] Try patchfile fix --- recipes/libcufile/Makefile.patch | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/Makefile.patch b/recipes/libcufile/Makefile.patch index 3b93e5a6f0092..eaecd4fde4879 100644 --- a/recipes/libcufile/Makefile.patch +++ b/recipes/libcufile/Makefile.patch @@ -3,9 +3,10 @@ @@ -35,8 +35,8 @@ # Common includes and paths for CUDA - CUDA_PATH := ${PREFIX} +-CUDA_PATH := /usr/local/cuda -CUFILE_PATH ?= /usr/local/cuda/targets/x86_64-linux/lib/ -CUFILE_INCLUDE_PATH ?= /usr/local/cuda/targets/x86_64-linux/include/ ++CUDA_PATH := ${PREFIX} +CUFILE_PATH ?= $(CUDA_PATH)/targets/x86_64-linux/lib/ +CUFILE_INCLUDE_PATH ?= $(CUDA_PATH)/targets/x86_64-linux/include/ CXXFLAGS := -Wall From 702a290284f0aa9b9bf6b2878bcbed38d835358b Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Fri, 3 Feb 2023 16:38:53 -0800 Subject: [PATCH 17/65] Add directory --- recipes/libcufile/build.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh index 6966695de38d7..32938d3fb857b 100644 --- a/recipes/libcufile/build.sh +++ b/recipes/libcufile/build.sh @@ -2,6 +2,7 @@ # Install to conda style directories [[ -d lib64 ]] && mv lib64 lib +mkdir -p ${PREFIX}/lib [[ -d pkg-config ]] && mv pkg-config ${PREFIX}/lib/pkgconfig [[ -d "$PREFIX/lib/pkgconfig" ]] && sed -E -i "s|cudaroot=.+|cudaroot=$PREFIX|g" $PREFIX/lib/pkgconfig/cufile*.pc From dbbd113b22ebcb6b3e083fe047c91efa02801f40 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 7 Feb 2023 14:31:23 -0800 Subject: [PATCH 18/65] Create and move tools and samples to gds dir --- recipes/libcufile/build.sh | 3 +++ recipes/libcufile/meta.yaml | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh index 32938d3fb857b..6f5a794f5809c 100644 --- a/recipes/libcufile/build.sh +++ b/recipes/libcufile/build.sh @@ -3,6 +3,9 @@ # Install to conda style directories [[ -d lib64 ]] && mv lib64 lib mkdir -p ${PREFIX}/lib +mkdir -p ${PREFIX}/gds +mv samples -p ${PREFIX}/gds/samples +mv tools -p ${PREFIX}/gds/tools [[ -d pkg-config ]] && mv pkg-config ${PREFIX}/lib/pkgconfig [[ -d "$PREFIX/lib/pkgconfig" ]] && sed -E -i "s|cudaroot=.+|cudaroot=$PREFIX|g" $PREFIX/lib/pkgconfig/cufile*.pc diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index e1634e58010f7..ab899a57b0268 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -68,8 +68,8 @@ outputs: - gds/tools test: commands: - - test -f $PREFIX/gds/samples - - test -f $PREFIX/gds/tools + - test -f -d $PREFIX/gds/samples + - test -f -d $PREFIX/gds/tools about: home: https://developer.nvidia.com/cuda-toolkit From 1970a5380ae26b850ca0c9b81f6da1fdece51ded Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 7 Feb 2023 14:38:30 -0800 Subject: [PATCH 19/65] typo -p --- recipes/libcufile/build.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh index 6f5a794f5809c..be56939ccabf3 100644 --- a/recipes/libcufile/build.sh +++ b/recipes/libcufile/build.sh @@ -4,8 +4,8 @@ [[ -d lib64 ]] && mv lib64 lib mkdir -p ${PREFIX}/lib mkdir -p ${PREFIX}/gds -mv samples -p ${PREFIX}/gds/samples -mv tools -p ${PREFIX}/gds/tools +mv samples ${PREFIX}/gds/samples +mv tools ${PREFIX}/gds/tools [[ -d pkg-config ]] && mv pkg-config ${PREFIX}/lib/pkgconfig [[ -d "$PREFIX/lib/pkgconfig" ]] && sed -E -i "s|cudaroot=.+|cudaroot=$PREFIX|g" $PREFIX/lib/pkgconfig/cufile*.pc From 6158a969d4fd8d6b1c3a06d6124db5c3ac0d4290 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 7 Feb 2023 14:48:20 -0800 Subject: [PATCH 20/65] just -d --- recipes/libcufile/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index ab899a57b0268..e2288cbca4cb3 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -68,8 +68,8 @@ outputs: - gds/tools test: commands: - - test -f -d $PREFIX/gds/samples - - test -f -d $PREFIX/gds/tools + - test -d $PREFIX/gds/samples + - test -d $PREFIX/gds/tools about: home: https://developer.nvidia.com/cuda-toolkit From 7497aed671f52208357a913930ddd86b000fb84c Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 7 Feb 2023 15:01:11 -0800 Subject: [PATCH 21/65] Move man --- recipes/libcufile/meta.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index e2288cbca4cb3..e55287d29089a 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -27,6 +27,7 @@ outputs: files: - lib/libcufile*.so.* - etc/cufile.json + - man test: commands: - test -f $PREFIX/lib/libcufile*.so.* @@ -41,12 +42,10 @@ outputs: - targets/*/lib/libcufile*.so - include/cufile* - targets/*/include/cufile* - - man test: commands: - test -f $PREFIX/lib/libcufile*.so - test -f $PREFIX/include/cufile* - - test -f $PREFIX/man - name: libcufile-static requirements: From c8e9e4253476f071fbeec7a11bc67874a7180d94 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 7 Feb 2023 15:02:17 -0800 Subject: [PATCH 22/65] include new gds dir --- recipes/libcufile/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh index be56939ccabf3..528b449bb9826 100644 --- a/recipes/libcufile/build.sh +++ b/recipes/libcufile/build.sh @@ -16,7 +16,7 @@ for i in `ls`; do [[ $i == "build_env_setup.sh" ]] && continue [[ $i == "conda_build.sh" ]] && continue [[ $i == "metadata_conda_debug.yaml" ]] && continue - if [[ $i == "lib" ]] || [[ $i == "include" ]]; then + if [[ $i == "lib" ]] || [[ $i == "gds" ]] || [[ $i == "include" ]]; then mkdir -p ${PREFIX}/${targetsDir} mkdir -p ${PREFIX}/$i cp -rv $i ${PREFIX}/${targetsDir} From a17812aa06a248cf089019bac4bceb12f1ab04fe Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Tue, 7 Feb 2023 16:15:18 -0800 Subject: [PATCH 23/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index e55287d29089a..60723b9c8e85a 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -24,6 +24,18 @@ build: outputs: - name: libcufile + missing_dso_whitelist: + - "*/libcuda.so.*" # [linux] + requirements: + build: + - {{ compiler("c") }} + - {{ compiler("cxx") }} + host: # [linux] + - sysroot_{{ target_platform }} 2.17 # [linux] + - __glibc >=2.17 # [linux] + run: # [linux] + - sysroot_{{ target_platform }} 2.17 # [linux] + - __glibc >=2.17 # [linux] files: - lib/libcufile*.so.* - etc/cufile.json From 5317c4456ee066a1d3ad37de7a243575e348090b Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 7 Feb 2023 16:31:53 -0800 Subject: [PATCH 24/65] Move to difference section --- recipes/libcufile/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 60723b9c8e85a..5364a0c1592fc 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -21,11 +21,11 @@ build: skip: true # [ppc64le] skip: true # [aarch64] skip: true # [win] + missing_dso_whitelist: + - "*/libcuda.so.*" # [linux] outputs: - name: libcufile - missing_dso_whitelist: - - "*/libcuda.so.*" # [linux] requirements: build: - {{ compiler("c") }} From f2646273c78020c566352938e641e526f451b6de Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Wed, 8 Feb 2023 14:40:54 -0800 Subject: [PATCH 25/65] Move to outputs build --- recipes/libcufile/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 5364a0c1592fc..10e3e251ff2f8 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -21,8 +21,6 @@ build: skip: true # [ppc64le] skip: true # [aarch64] skip: true # [win] - missing_dso_whitelist: - - "*/libcuda.so.*" # [linux] outputs: - name: libcufile @@ -30,6 +28,8 @@ outputs: build: - {{ compiler("c") }} - {{ compiler("cxx") }} + missing_dso_whitelist: + - "*/libcuda.so.*" # [linux] host: # [linux] - sysroot_{{ target_platform }} 2.17 # [linux] - __glibc >=2.17 # [linux] From f93c0b2ebafc2cc0addd19d8fb82921fa1553933 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Wed, 8 Feb 2023 14:44:16 -0800 Subject: [PATCH 26/65] New build section --- recipes/libcufile/meta.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 10e3e251ff2f8..0e99d3dcd84a7 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -24,12 +24,13 @@ build: outputs: - name: libcufile + build: + missing_dso_whitelist: + - "*/libcuda.so.*" # [linux] requirements: build: - {{ compiler("c") }} - {{ compiler("cxx") }} - missing_dso_whitelist: - - "*/libcuda.so.*" # [linux] host: # [linux] - sysroot_{{ target_platform }} 2.17 # [linux] - __glibc >=2.17 # [linux] From 11ee0dc51b589bddaf813674dd0e184ee0f1e485 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Thu, 9 Feb 2023 15:07:41 -0800 Subject: [PATCH 27/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 0e99d3dcd84a7..97775099750b2 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -27,6 +27,8 @@ outputs: build: missing_dso_whitelist: - "*/libcuda.so.*" # [linux] + run_exports: + - {{ pin_subpackage("libcufile", max_pin="x") }} requirements: build: - {{ compiler("c") }} From 79c750a0ff73f5cec8b43c0ca09bd064a6b97500 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Thu, 9 Feb 2023 15:07:51 -0800 Subject: [PATCH 28/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 97775099750b2..01131e48f0221 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -75,8 +75,10 @@ outputs: - name: gds-tools requirements: + host: + - libcufile-dev {{ version }} run: - - libcufile >={{ version }} + - {{ pin_subpackage("libcufile", max_pin="x") }} files: - gds/samples - gds/tools From c8de857eba364a69a681c73f81fb661281c96fdf Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Thu, 9 Feb 2023 15:08:03 -0800 Subject: [PATCH 29/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 01131e48f0221..9938b34b6b084 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -49,6 +49,8 @@ outputs: - test -f $PREFIX/etc/cufile.json - name: libcufile-dev + run_exports: + - {{ pin_subpackage("libcufile", max_pin="x") }} requirements: run: - libcufile >={{ version }} From 54a340af36736c596807eefbbec538b459360683 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Thu, 9 Feb 2023 15:08:20 -0800 Subject: [PATCH 30/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 9938b34b6b084..9d0f1d616e0f6 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -54,6 +54,8 @@ outputs: requirements: run: - libcufile >={{ version }} + run_contrained: + - libcufile-static >={{ version }} files: - lib/libcufile*.so - targets/*/lib/libcufile*.so From 178099f5b016ab5caa3b021859f82bb15d5d0704 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Thu, 9 Feb 2023 15:08:35 -0800 Subject: [PATCH 31/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 9d0f1d616e0f6..b6dd14221812a 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -68,8 +68,10 @@ outputs: - name: libcufile-static requirements: + host: + - libcufile-dev {{ version }} run: - - libcufile-dev >={{ version }} + - {{ pin_subpackage("libcufile", max_pin="x") }} files: - lib/libcufile*_static.a - targets/*/lib/libcufile*_static.a From 1ba2afe434eb8970395389d22d81dd20d67195e4 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 10 Feb 2023 16:01:13 -0800 Subject: [PATCH 32/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index b6dd14221812a..14479f9d4f231 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -81,9 +81,17 @@ outputs: - name: gds-tools requirements: - host: + build: + - {{ compiler("c") }} + - {{ compiler("cxx") }} + host: # [linux] + - sysroot_{{ target_platform }} 2.17 # [linux] + - __glibc >=2.17 # [linux] - libcufile-dev {{ version }} - run: + - libnuma # [linux] + run: # [linux] + - sysroot_{{ target_platform }} 2.17 # [linux] + - __glibc >=2.17 # [linux] - {{ pin_subpackage("libcufile", max_pin="x") }} files: - gds/samples From 61ab85d1347ccd4e16e09a4be33e7105b93af975 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 13 Feb 2023 13:41:23 -0800 Subject: [PATCH 33/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 14479f9d4f231..5e11af1694ba1 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -45,7 +45,8 @@ outputs: - man test: commands: - - test -f $PREFIX/lib/libcufile*.so.* + - test -f $PREFIX/lib/libcufile.so.* + - test -f $PREFIX/lib/libcufile_rdma.so.* - test -f $PREFIX/etc/cufile.json - name: libcufile-dev From 93593ce1895216641d9e487aebd5ab3e1245af70 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 13 Feb 2023 13:41:34 -0800 Subject: [PATCH 34/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 5e11af1694ba1..ad6f1b49c601c 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -64,7 +64,8 @@ outputs: - targets/*/include/cufile* test: commands: - - test -f $PREFIX/lib/libcufile*.so + - test -f $PREFIX/lib/libcufile.so + - test -f $PREFIX/lib/libcufile_rdma.so - test -f $PREFIX/include/cufile* - name: libcufile-static From 498ac3a03e0bff37191281e1454488a7073c7d0e Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 13 Feb 2023 13:41:45 -0800 Subject: [PATCH 35/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index ad6f1b49c601c..327acdd623f38 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -79,7 +79,8 @@ outputs: - targets/*/lib/libcufile*_static.a test: commands: - - test -f $PREFIX/lib/libcufile*_static.a + - test -f $PREFIX/lib/libcufile_static.a + - test -f $PREFIX/lib/libcufile_rdma_static.a - name: gds-tools requirements: From 89875b49d97516b7581493cca8912c763598f16a Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 13 Feb 2023 16:42:48 -0800 Subject: [PATCH 36/65] wildcards missing? --- recipes/libcufile/meta.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 327acdd623f38..26a1929982acc 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -58,14 +58,14 @@ outputs: run_contrained: - libcufile-static >={{ version }} files: - - lib/libcufile*.so + - lib/libcufile*.so.* - targets/*/lib/libcufile*.so - include/cufile* - targets/*/include/cufile* test: commands: - - test -f $PREFIX/lib/libcufile.so - - test -f $PREFIX/lib/libcufile_rdma.so + - test -f $PREFIX/lib/libcufile.so.* + - test -f $PREFIX/lib/libcufile_rdma.so.* - test -f $PREFIX/include/cufile* - name: libcufile-static From 86b9763792fa259964bfac129d31d28872037dfd Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Wed, 15 Feb 2023 17:51:25 -0800 Subject: [PATCH 37/65] Revert "wildcards missing?" This reverts commit 89875b49d97516b7581493cca8912c763598f16a. --- recipes/libcufile/meta.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 26a1929982acc..327acdd623f38 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -58,14 +58,14 @@ outputs: run_contrained: - libcufile-static >={{ version }} files: - - lib/libcufile*.so.* + - lib/libcufile*.so - targets/*/lib/libcufile*.so - include/cufile* - targets/*/include/cufile* test: commands: - - test -f $PREFIX/lib/libcufile.so.* - - test -f $PREFIX/lib/libcufile_rdma.so.* + - test -f $PREFIX/lib/libcufile.so + - test -f $PREFIX/lib/libcufile_rdma.so - test -f $PREFIX/include/cufile* - name: libcufile-static From 7939393317ff96a385228483ed652fce7616b110 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 22 Mar 2023 11:14:11 -0700 Subject: [PATCH 38/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 327acdd623f38..0ccd770cbef80 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -17,10 +17,7 @@ source: build: number: 0 - skip: true # [osx] - skip: true # [ppc64le] - skip: true # [aarch64] - skip: true # [win] + skip: true # [not linux64] outputs: - name: libcufile From 9cd334576dcdc82d88c26afacc41f452dcdecc6f Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 22 Mar 2023 11:14:26 -0700 Subject: [PATCH 39/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 0ccd770cbef80..f23ba36caaebb 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -1,5 +1,6 @@ {% set name = "libcufile" %} {% set version = "1.5.0.59" %} +{% set cuda_version = "12.0" %} {% set platform = "linux-x86_64" %} # [linux64] {% set platform = "linux-sbsa" %} # [aarch64] {% set extension = "tar.xz" %} # [not win] From 2556d271f7832c594f602c2f8dc3fb1d42c423aa Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 22 Mar 2023 11:14:53 -0700 Subject: [PATCH 40/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index f23ba36caaebb..48b34bba41d90 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -25,8 +25,8 @@ outputs: build: missing_dso_whitelist: - "*/libcuda.so.*" # [linux] - run_exports: - - {{ pin_subpackage("libcufile", max_pin="x") }} + run_exports: + - {{ pin_subpackage("libcufile", max_pin="x") }} requirements: build: - {{ compiler("c") }} From 9d4601f13912ea5e834d1ce513894ea3802c84a4 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 22 Mar 2023 11:15:53 -0700 Subject: [PATCH 41/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 48b34bba41d90..a9475967c9f17 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -31,12 +31,11 @@ outputs: build: - {{ compiler("c") }} - {{ compiler("cxx") }} - host: # [linux] - - sysroot_{{ target_platform }} 2.17 # [linux] - - __glibc >=2.17 # [linux] - run: # [linux] - sysroot_{{ target_platform }} 2.17 # [linux] - - __glibc >=2.17 # [linux] + host: + - cuda-version {{ cuda_version }} + run: + - {{ pin_compatible("cuda-version", max_pin="x.x") }} files: - lib/libcufile*.so.* - etc/cufile.json From 04527666a2a513393712dcfa520f1644312f06f6 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 22 Mar 2023 11:16:27 -0700 Subject: [PATCH 42/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index a9475967c9f17..b4c5f480b66d5 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -47,12 +47,16 @@ outputs: - test -f $PREFIX/etc/cufile.json - name: libcufile-dev - run_exports: - - {{ pin_subpackage("libcufile", max_pin="x") }} + build: + run_exports: + - {{ pin_subpackage("libcufile", max_pin="x") }} requirements: + host: + - cuda-version {{ cuda_version }} run: + - {{ pin_compatible("cuda-version", max_pin="x.x") }} - libcufile >={{ version }} - run_contrained: + run_constrained: - libcufile-static >={{ version }} files: - lib/libcufile*.so From 28723e1cbc317f7cf05cc09257c8fc1b47b671d8 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 22 Mar 2023 11:16:56 -0700 Subject: [PATCH 43/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index b4c5f480b66d5..e3aff63c8300c 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -72,8 +72,10 @@ outputs: - name: libcufile-static requirements: host: + - cuda-version {{ cuda_version }} - libcufile-dev {{ version }} run: + - {{ pin_compatible("cuda-version", max_pin="x.x") }} - {{ pin_subpackage("libcufile", max_pin="x") }} files: - lib/libcufile*_static.a From f03b6c1c1381c177eefe109b30d68890acea785a Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 22 Mar 2023 11:17:16 -0700 Subject: [PATCH 44/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index e3aff63c8300c..427611f71b840 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -90,14 +90,13 @@ outputs: build: - {{ compiler("c") }} - {{ compiler("cxx") }} - host: # [linux] - sysroot_{{ target_platform }} 2.17 # [linux] - - __glibc >=2.17 # [linux] + host: + - cuda-version {{ cuda_version }} - libcufile-dev {{ version }} - libnuma # [linux] - run: # [linux] - - sysroot_{{ target_platform }} 2.17 # [linux] - - __glibc >=2.17 # [linux] + run: + - {{ pin_compatible("cuda-version", max_pin="x.x") }} - {{ pin_subpackage("libcufile", max_pin="x") }} files: - gds/samples From 25ee3e55328e514c87348c5551267ca4e25909f3 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 5 Apr 2023 14:26:04 -0700 Subject: [PATCH 45/65] Make changes to meta and build files --- recipes/libcufile/build.sh | 31 +++++---- recipes/libcufile/conda_build_config.yaml | 2 + recipes/libcufile/meta.yaml | 79 ++++++++++++++++------- 3 files changed, 75 insertions(+), 37 deletions(-) create mode 100644 recipes/libcufile/conda_build_config.yaml diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh index 528b449bb9826..23940a69f9ff0 100644 --- a/recipes/libcufile/build.sh +++ b/recipes/libcufile/build.sh @@ -13,17 +13,22 @@ mv tools ${PREFIX}/gds/tools [[ ${target_platform} == "linux-aarch64" ]] && targetsDir="targets/sbsa-linux" for i in `ls`; do - [[ $i == "build_env_setup.sh" ]] && continue - [[ $i == "conda_build.sh" ]] && continue - [[ $i == "metadata_conda_debug.yaml" ]] && continue - if [[ $i == "lib" ]] || [[ $i == "gds" ]] || [[ $i == "include" ]]; then - mkdir -p ${PREFIX}/${targetsDir} - mkdir -p ${PREFIX}/$i - cp -rv $i ${PREFIX}/${targetsDir} - for j in `ls $i`; do - ln -s ../${targetsDir}/$i/$j ${PREFIX}/$i/$j - done - else - cp -rv $i ${PREFIX} - fi + [[ $i == "build_env_setup.sh" ]] && continue + [[ $i == "conda_build.sh" ]] && continue + [[ $i == "metadata_conda_debug.yaml" ]] && continue + if [[ $i == "lib" ]] || [[ $i == "gds" ]] || [[ $i == "include" ]]; then + mkdir -p ${PREFIX}/${targetsDir} + mkdir -p ${PREFIX}/$i + cp -rv $i ${PREFIX}/${targetsDir} + if [[ $i == "lib" ]]; then + for j in "$i"/*.so*; do + # Shared libraries are symlinked in $PREFIX/lib + ln -s ${PREFIX}/${targetsDir}/$j ${PREFIX}/$j + done + fi + else + # Put all other files in targetsDir + mkdir -p ${PREFIX}/${targetsDir}/${PKG_NAME} + cp -rv $i ${PREFIX}/${targetsDir}/${PKG_NAME} + fi done diff --git a/recipes/libcufile/conda_build_config.yaml b/recipes/libcufile/conda_build_config.yaml new file mode 100644 index 0000000000000..7d454be2be541 --- /dev/null +++ b/recipes/libcufile/conda_build_config.yaml @@ -0,0 +1,2 @@ +arm_variant_type: # [aarch64] + - sbsa # [aarch64] \ No newline at end of file diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 427611f71b840..46f290416d2d5 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -3,6 +3,8 @@ {% set cuda_version = "12.0" %} {% set platform = "linux-x86_64" %} # [linux64] {% set platform = "linux-sbsa" %} # [aarch64] +{% set target_name = "x86_64-linux" %} # [linux64] +{% set target_name = "sbsa-linux" %} # [aarch64] {% set extension = "tar.xz" %} # [not win] package: @@ -27,29 +29,45 @@ outputs: - "*/libcuda.so.*" # [linux] run_exports: - {{ pin_subpackage("libcufile", max_pin="x") }} + files: + - lib/libcufile*.so.* + - etc/cufile.json + - man requirements: build: - {{ compiler("c") }} - {{ compiler("cxx") }} + - arm-variant * {{ arm_variant_type }} # [aarch64] - sysroot_{{ target_platform }} 2.17 # [linux] host: - cuda-version {{ cuda_version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - files: - - lib/libcufile*.so.* - - etc/cufile.json - - man + run_constrained: + - arm-variant * {{ arm_variant_type }} # [aarch64] test: commands: - test -f $PREFIX/lib/libcufile.so.* - test -f $PREFIX/lib/libcufile_rdma.so.* - test -f $PREFIX/etc/cufile.json + about: + home: https://developer.nvidia.com/cuda-toolkit + license: LicenseRef-NVIDIA-End-User-License-Agreement + license_file: LICENSE + license_url: https://docs.nvidia.com/cuda/eula/index.html + summary: | + Library for GPU Direct Storage with CUDA + doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html - name: libcufile-dev build: run_exports: - {{ pin_subpackage("libcufile", max_pin="x") }} + files: + - lib/libcufile*.so + - targets/*/lib/libcufile*.so + - include/cufile* + - targets/*/include/cufile* requirements: host: - cuda-version {{ cuda_version }} @@ -58,18 +76,24 @@ outputs: - libcufile >={{ version }} run_constrained: - libcufile-static >={{ version }} - files: - - lib/libcufile*.so - - targets/*/lib/libcufile*.so - - include/cufile* - - targets/*/include/cufile* test: commands: - test -f $PREFIX/lib/libcufile.so - test -f $PREFIX/lib/libcufile_rdma.so - test -f $PREFIX/include/cufile* + about: + home: https://developer.nvidia.com/cuda-toolkit + license: LicenseRef-NVIDIA-End-User-License-Agreement + license_file: LICENSE + license_url: https://docs.nvidia.com/cuda/eula/index.html + summary: | + Library for GPU Direct Storage with CUDA + doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html - name: libcufile-static + files: + - lib/libcufile*_static.a + - targets/*/lib/libcufile*_static.a requirements: host: - cuda-version {{ cuda_version }} @@ -77,19 +101,28 @@ outputs: run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - {{ pin_subpackage("libcufile", max_pin="x") }} - files: - - lib/libcufile*_static.a - - targets/*/lib/libcufile*_static.a test: commands: - test -f $PREFIX/lib/libcufile_static.a - test -f $PREFIX/lib/libcufile_rdma_static.a + about: + home: https://developer.nvidia.com/cuda-toolkit + license: LicenseRef-NVIDIA-End-User-License-Agreement + license_file: LICENSE + license_url: https://docs.nvidia.com/cuda/eula/index.html + summary: | + Library for GPU Direct Storage with CUDA + doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html - name: gds-tools + files: + - gds/samples + - gds/tools requirements: build: - {{ compiler("c") }} - {{ compiler("cxx") }} + - arm-variant * {{ arm_variant_type }} # [aarch64] - sysroot_{{ target_platform }} 2.17 # [linux] host: - cuda-version {{ cuda_version }} @@ -98,22 +131,20 @@ outputs: run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - {{ pin_subpackage("libcufile", max_pin="x") }} - files: - - gds/samples - - gds/tools + run_constrained: + - arm-variant * {{ arm_variant_type }} # [aarch64] test: commands: - test -d $PREFIX/gds/samples - test -d $PREFIX/gds/tools - -about: - home: https://developer.nvidia.com/cuda-toolkit - license: LicenseRef-NVIDIA-End-User-License-Agreement - license_file: LICENSE - license_url: https://docs.nvidia.com/cuda/eula/index.html - summary: | - Library for GPU Direct Storage with CUDA - doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html + about: + home: https://developer.nvidia.com/cuda-toolkit + license: LicenseRef-NVIDIA-End-User-License-Agreement + license_file: LICENSE + license_url: https://docs.nvidia.com/cuda/eula/index.html + summary: | + Library for GPU Direct Storage with CUDA + doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html extra: recipe-maintainers: From c6715198e6fe75ed948d6e7d72707dfeb95148d1 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Wed, 5 Apr 2023 14:29:35 -0700 Subject: [PATCH 46/65] Keep top level about section --- recipes/libcufile/meta.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 46f290416d2d5..7a2fccbe087c6 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -146,6 +146,15 @@ outputs: Library for GPU Direct Storage with CUDA doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html +about: + home: https://developer.nvidia.com/cuda-toolkit + license: LicenseRef-NVIDIA-End-User-License-Agreement + license_file: LICENSE + license_url: https://docs.nvidia.com/cuda/eula/index.html + summary: | + Library for GPU Direct Storage with CUDA + doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html + extra: recipe-maintainers: - adibbley From ba1e05d380db6e5450625bc1dec7c1db484f857b Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 7 Apr 2023 13:20:00 -0700 Subject: [PATCH 47/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 7a2fccbe087c6..4af257923da0a 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -73,7 +73,7 @@ outputs: - cuda-version {{ cuda_version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - - libcufile >={{ version }} + - {{ pin_subpackage("libcublas", exact=True) }} run_constrained: - libcufile-static >={{ version }} test: From ca53dd36dccb07521e7223fbfe79fc8ee175898f Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 7 Apr 2023 13:20:28 -0700 Subject: [PATCH 48/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 4af257923da0a..dcb66089e267f 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -97,10 +97,8 @@ outputs: requirements: host: - cuda-version {{ cuda_version }} - - libcufile-dev {{ version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - - {{ pin_subpackage("libcufile", max_pin="x") }} test: commands: - test -f $PREFIX/lib/libcufile_static.a From 21f096d861091dff0f26b3d13c6e273a7cc238c6 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 7 Apr 2023 13:20:41 -0700 Subject: [PATCH 49/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index dcb66089e267f..54991d44b3405 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -92,7 +92,6 @@ outputs: - name: libcufile-static files: - - lib/libcufile*_static.a - targets/*/lib/libcufile*_static.a requirements: host: From 694ac62cb0a8d0b2ee35b7a049848c8c27c9c3c1 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 7 Apr 2023 13:20:51 -0700 Subject: [PATCH 50/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 54991d44b3405..3c236099f3d5e 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -92,7 +92,7 @@ outputs: - name: libcufile-static files: - - targets/*/lib/libcufile*_static.a + - targets/{{ target_name }}/lib/libcufile*_static.a requirements: host: - cuda-version {{ cuda_version }} From 32b88d047ddfc49209b076fe1969fe68d3165b6e Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 7 Apr 2023 13:21:02 -0700 Subject: [PATCH 51/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 3c236099f3d5e..249ff94ace6f8 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -64,10 +64,10 @@ outputs: run_exports: - {{ pin_subpackage("libcufile", max_pin="x") }} files: - - lib/libcufile*.so - - targets/*/lib/libcufile*.so - include/cufile* - - targets/*/include/cufile* + - lib/libcufile*.so + - targets/{{ target_name }}/lib/libcufile*.so + - targets/{{ target_name }}/include/cufile* requirements: host: - cuda-version {{ cuda_version }} From 3cda9c86ab1c841a02070e57c7f9ff8c78cba4b3 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 7 Apr 2023 13:21:24 -0700 Subject: [PATCH 52/65] Update recipes/libcufile/meta.yaml Co-authored-by: Bradley Dice --- recipes/libcufile/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 249ff94ace6f8..c349a85e9b80a 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -20,7 +20,7 @@ source: build: number: 0 - skip: true # [not linux64] + skip: true # [not linux] outputs: - name: libcufile From 23d673cffde15752619dbb2c124f0b894072cb06 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 7 Apr 2023 14:13:01 -0700 Subject: [PATCH 53/65] Refactor -dev tests --- recipes/libcufile/meta.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index c349a85e9b80a..77918af92b645 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -78,9 +78,9 @@ outputs: - libcufile-static >={{ version }} test: commands: - - test -f $PREFIX/lib/libcufile.so - - test -f $PREFIX/lib/libcufile_rdma.so - - test -f $PREFIX/include/cufile* + - test -L $PREFIX/lib/libcufile.so + - test -f $PREFIX/targets/{{ target_name }}/include/cufile.h + - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile.so about: home: https://developer.nvidia.com/cuda-toolkit license: LicenseRef-NVIDIA-End-User-License-Agreement From ebfbf07b4924324c4531f6cc700322fdfa071308 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Fri, 7 Apr 2023 16:51:47 -0700 Subject: [PATCH 54/65] pin_compatible? --- recipes/libcufile/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 77918af92b645..66da85f94fd63 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -73,7 +73,7 @@ outputs: - cuda-version {{ cuda_version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - - {{ pin_subpackage("libcublas", exact=True) }} + - {{ pin_compatible("libcublas", exact=True) }} run_constrained: - libcufile-static >={{ version }} test: From f32c3063d50e8acca8312fc30ec232a9ce6e8cd5 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 10 Apr 2023 09:45:37 -0700 Subject: [PATCH 55/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 66da85f94fd63..aef2f1bda40a4 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -73,7 +73,7 @@ outputs: - cuda-version {{ cuda_version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - - {{ pin_compatible("libcublas", exact=True) }} + - {{ pin_subpackage("libcufile", exact=True) }} run_constrained: - libcufile-static >={{ version }} test: From 7456ba7f222d46fe69f19473b4d9d18c519dad6e Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 10 Apr 2023 10:37:46 -0700 Subject: [PATCH 56/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index aef2f1bda40a4..64e631bb3a639 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -100,8 +100,8 @@ outputs: - {{ pin_compatible("cuda-version", max_pin="x.x") }} test: commands: - - test -f $PREFIX/lib/libcufile_static.a - - test -f $PREFIX/lib/libcufile_rdma_static.a + - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile_static.a + - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma_static.a about: home: https://developer.nvidia.com/cuda-toolkit license: LicenseRef-NVIDIA-End-User-License-Agreement From 296b97539f8ef3f6abf2e702f9ce77046ef5f280 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 10 Apr 2023 13:17:15 -0700 Subject: [PATCH 57/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 64e631bb3a639..2eaa35ad1a051 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -32,7 +32,6 @@ outputs: files: - lib/libcufile*.so.* - etc/cufile.json - - man requirements: build: - {{ compiler("c") }} From 08a0182931f57f9e9b483a5b3305a7858b9f2c2d Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 10 Apr 2023 13:17:29 -0700 Subject: [PATCH 58/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 2eaa35ad1a051..b1895efc02095 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -67,6 +67,7 @@ outputs: - lib/libcufile*.so - targets/{{ target_name }}/lib/libcufile*.so - targets/{{ target_name }}/include/cufile* + - man/man3 requirements: host: - cuda-version {{ cuda_version }} From 4b402b1abb1fcc507ba8331818002e5ab51f774f Mon Sep 17 00:00:00 2001 From: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> Date: Mon, 10 Apr 2023 13:17:41 -0700 Subject: [PATCH 59/65] Update recipes/libcufile/meta.yaml Co-authored-by: jakirkham --- recipes/libcufile/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index b1895efc02095..16f3c613761d3 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -81,6 +81,7 @@ outputs: - test -L $PREFIX/lib/libcufile.so - test -f $PREFIX/targets/{{ target_name }}/include/cufile.h - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile.so + - test -d $PREFIX/man/man3 about: home: https://developer.nvidia.com/cuda-toolkit license: LicenseRef-NVIDIA-End-User-License-Agreement From 9e35a54aca0b9032871cc1bb644ac97edea959fd Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Tue, 11 Apr 2023 23:56:36 -0500 Subject: [PATCH 60/65] Fix libcufile tests and packaging. --- recipes/libcufile/build.sh | 4 +- recipes/libcufile/conda_build_config.yaml | 4 +- recipes/libcufile/meta.yaml | 77 +++++++++++++++-------- 3 files changed, 56 insertions(+), 29 deletions(-) diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh index 23940a69f9ff0..82acd0f373746 100644 --- a/recipes/libcufile/build.sh +++ b/recipes/libcufile/build.sh @@ -4,8 +4,8 @@ [[ -d lib64 ]] && mv lib64 lib mkdir -p ${PREFIX}/lib mkdir -p ${PREFIX}/gds -mv samples ${PREFIX}/gds/samples -mv tools ${PREFIX}/gds/tools +mv -v samples ${PREFIX}/gds/samples +mv -v tools ${PREFIX}/gds/tools [[ -d pkg-config ]] && mv pkg-config ${PREFIX}/lib/pkgconfig [[ -d "$PREFIX/lib/pkgconfig" ]] && sed -E -i "s|cudaroot=.+|cudaroot=$PREFIX|g" $PREFIX/lib/pkgconfig/cufile*.pc diff --git a/recipes/libcufile/conda_build_config.yaml b/recipes/libcufile/conda_build_config.yaml index 7d454be2be541..f0f19b6329c4a 100644 --- a/recipes/libcufile/conda_build_config.yaml +++ b/recipes/libcufile/conda_build_config.yaml @@ -1,2 +1,2 @@ -arm_variant_type: # [aarch64] - - sbsa # [aarch64] \ No newline at end of file +arm_variant_type: # [aarch64] + - sbsa # [aarch64] diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 16f3c613761d3..fd41a7e03715d 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -20,18 +20,29 @@ source: build: number: 0 - skip: true # [not linux] + skip: true # [not (linux64 or aarch64)] + +test: + commands: + - test -f $PREFIX/etc/cufile.json + - test -L $PREFIX/lib/libcufile.so.{{ version.split(".")[0] }} + - test -L $PREFIX/lib/libcufile_rdma.so.{{ version.split(".")[0] }} + - test -L $PREFIX/lib/libcufile.so.{{ version }} + - test -L $PREFIX/lib/libcufile_rdma.so.{{ version }} + - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile.so.{{ version.split(".")[0] }} + - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ version.split(".")[0] }} + - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile.so.{{ version }} + - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ version }} outputs: - name: libcufile build: missing_dso_whitelist: - - "*/libcuda.so.*" # [linux] - run_exports: - - {{ pin_subpackage("libcufile", max_pin="x") }} + - "*/libcuda.so.*" # [linux] files: - - lib/libcufile*.so.* - etc/cufile.json + - lib/libcufile*.so.* + - targets/{{ target_name }}/lib/libcufile*.so.* requirements: build: - {{ compiler("c") }} @@ -44,18 +55,15 @@ outputs: - {{ pin_compatible("cuda-version", max_pin="x.x") }} run_constrained: - arm-variant * {{ arm_variant_type }} # [aarch64] - test: - commands: - - test -f $PREFIX/lib/libcufile.so.* - - test -f $PREFIX/lib/libcufile_rdma.so.* - - test -f $PREFIX/etc/cufile.json + # Tests are defined at the top level, due to package/output name conflicts. about: home: https://developer.nvidia.com/cuda-toolkit license: LicenseRef-NVIDIA-End-User-License-Agreement license_file: LICENSE license_url: https://docs.nvidia.com/cuda/eula/index.html - summary: | - Library for GPU Direct Storage with CUDA + summary: Library for NVIDIA GPUDirect Storage + description: | + The cuFile library provides a direct data path between GPU memory and storage. doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html - name: libcufile-dev @@ -63,42 +71,58 @@ outputs: run_exports: - {{ pin_subpackage("libcufile", max_pin="x") }} files: - - include/cufile* - lib/libcufile*.so + - lib/pkgconfig + - targets/{{ target_name }}/include - targets/{{ target_name }}/lib/libcufile*.so - - targets/{{ target_name }}/include/cufile* - man/man3 requirements: + build: + - {{ compiler("c") }} + - {{ compiler("cxx") }} + - arm-variant * {{ arm_variant_type }} # [aarch64] + - sysroot_{{ target_platform }} 2.17 # [linux] host: - cuda-version {{ cuda_version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - {{ pin_subpackage("libcufile", exact=True) }} run_constrained: + - arm-variant * {{ arm_variant_type }} # [aarch64] - libcufile-static >={{ version }} test: commands: - test -L $PREFIX/lib/libcufile.so + - test -L $PREFIX/lib/libcufile_rdma.so - test -f $PREFIX/targets/{{ target_name }}/include/cufile.h - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile.so + - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so - test -d $PREFIX/man/man3 about: home: https://developer.nvidia.com/cuda-toolkit license: LicenseRef-NVIDIA-End-User-License-Agreement license_file: LICENSE license_url: https://docs.nvidia.com/cuda/eula/index.html - summary: | - Library for GPU Direct Storage with CUDA + summary: Library for NVIDIA GPUDirect Storage + description: | + The cuFile library provides a direct data path between GPU memory and storage. doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html - name: libcufile-static files: - - targets/{{ target_name }}/lib/libcufile*_static.a + - targets/{{ target_name }}/lib/libcufile*_static.a requirements: + build: + - {{ compiler("c") }} + - {{ compiler("cxx") }} + - arm-variant * {{ arm_variant_type }} # [aarch64] + - sysroot_{{ target_platform }} 2.17 # [linux] host: - cuda-version {{ cuda_version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} + run_constrained: + - arm-variant * {{ arm_variant_type }} # [aarch64] test: commands: - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile_static.a @@ -108,14 +132,15 @@ outputs: license: LicenseRef-NVIDIA-End-User-License-Agreement license_file: LICENSE license_url: https://docs.nvidia.com/cuda/eula/index.html - summary: | - Library for GPU Direct Storage with CUDA + summary: Library for NVIDIA GPUDirect Storage + description: | + The cuFile library provides a direct data path between GPU memory and storage. doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html - name: gds-tools files: - gds/samples - - gds/tools + - gds/tools requirements: build: - {{ compiler("c") }} @@ -125,7 +150,7 @@ outputs: host: - cuda-version {{ cuda_version }} - libcufile-dev {{ version }} - - libnuma # [linux] + - libnuma # [linux] run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - {{ pin_subpackage("libcufile", max_pin="x") }} @@ -140,8 +165,9 @@ outputs: license: LicenseRef-NVIDIA-End-User-License-Agreement license_file: LICENSE license_url: https://docs.nvidia.com/cuda/eula/index.html - summary: | - Library for GPU Direct Storage with CUDA + summary: Library for NVIDIA GPUDirect Storage + description: | + The cuFile library provides a direct data path between GPU memory and storage. doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html about: @@ -149,8 +175,9 @@ about: license: LicenseRef-NVIDIA-End-User-License-Agreement license_file: LICENSE license_url: https://docs.nvidia.com/cuda/eula/index.html - summary: | - Library for GPU Direct Storage with CUDA + summary: Library for NVIDIA GPUDirect Storage + description: | + The cuFile library provides a direct data path between GPU memory and storage. doc_url: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html extra: From c1f3c4b8befbf5c265e585eeb63b2f7166585d36 Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Wed, 12 Apr 2023 00:34:52 -0500 Subject: [PATCH 61/65] Attempt to fix RDMA issue. --- recipes/libcufile/meta.yaml | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index fd41a7e03715d..45839800a48c6 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -26,19 +26,26 @@ test: commands: - test -f $PREFIX/etc/cufile.json - test -L $PREFIX/lib/libcufile.so.{{ version.split(".")[0] }} - - test -L $PREFIX/lib/libcufile_rdma.so.{{ version.split(".")[0] }} + - test -L $PREFIX/lib/libcufile_rdma.so.{{ version.split(".")[0] }} # [linux64] - test -L $PREFIX/lib/libcufile.so.{{ version }} - - test -L $PREFIX/lib/libcufile_rdma.so.{{ version }} + - test -L $PREFIX/lib/libcufile_rdma.so.{{ version }} # [linux64] - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile.so.{{ version.split(".")[0] }} - - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ version.split(".")[0] }} + - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ version.split(".")[0] }} # [linux64] - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile.so.{{ version }} - - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ version }} + - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ version }} # [linux64] outputs: - name: libcufile build: missing_dso_whitelist: - - "*/libcuda.so.*" # [linux] + - "*/libcuda.so.*" + # TODO: The following libraries are required for libcufile_rdma, which + # is only linux64 (not aarch64). What provides these? + # rdma-core-devel-cos7-x86_64 is close, but lacks the ".so.1" suffix. + # Only the ".so" files are provided by that package. + - "*/libmlx5.so.1" + - "*/librdmacm.so.1" + - "*/libibverbs.so.1" files: - etc/cufile.json - lib/libcufile*.so.* @@ -53,6 +60,7 @@ outputs: - cuda-version {{ cuda_version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} + - rdma-core-devel-cos7-x86_64 # [linux64] run_constrained: - arm-variant * {{ arm_variant_type }} # [aarch64] # Tests are defined at the top level, due to package/output name conflicts. From 5b28f1be2cf9a4a712117dfbfd4630ad82aa8e59 Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Wed, 12 Apr 2023 01:49:04 -0500 Subject: [PATCH 62/65] Make tests pass. --- recipes/libcufile/build.sh | 2 ++ recipes/libcufile/meta.yaml | 32 ++++++++++++++++++-------------- 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh index 82acd0f373746..3cdaea3619cc8 100644 --- a/recipes/libcufile/build.sh +++ b/recipes/libcufile/build.sh @@ -4,6 +4,8 @@ [[ -d lib64 ]] && mv lib64 lib mkdir -p ${PREFIX}/lib mkdir -p ${PREFIX}/gds +mv -v etc ${PREFIX}/etc +mv -v man ${PREFIX}/man mv -v samples ${PREFIX}/gds/samples mv -v tools ${PREFIX}/gds/tools [[ -d pkg-config ]] && mv pkg-config ${PREFIX}/lib/pkgconfig diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 45839800a48c6..26e1615f4ec27 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -24,28 +24,33 @@ build: test: commands: + # Note that the version of libcufile does not match + # {{ version.split(".")[0] }} but the major version of libcufile_rdma does + # match that. Also we must drop the last component of the version when + # finding the versioned .so file. + {% set full_version = version.split(".")[:-1] | join(".") %} - test -f $PREFIX/etc/cufile.json - - test -L $PREFIX/lib/libcufile.so.{{ version.split(".")[0] }} + - test -L $PREFIX/lib/libcufile.so.0 - test -L $PREFIX/lib/libcufile_rdma.so.{{ version.split(".")[0] }} # [linux64] - - test -L $PREFIX/lib/libcufile.so.{{ version }} - - test -L $PREFIX/lib/libcufile_rdma.so.{{ version }} # [linux64] - - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile.so.{{ version.split(".")[0] }} + - test -L $PREFIX/lib/libcufile.so.{{ full_version }} + - test -L $PREFIX/lib/libcufile_rdma.so.{{ full_version }} # [linux64] + - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile.so.0 - test -L $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ version.split(".")[0] }} # [linux64] - - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile.so.{{ version }} - - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ version }} # [linux64] + - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile.so.{{ full_version }} + - test -f $PREFIX/targets/{{ target_name }}/lib/libcufile_rdma.so.{{ full_version }} # [linux64] outputs: - name: libcufile build: missing_dso_whitelist: - "*/libcuda.so.*" - # TODO: The following libraries are required for libcufile_rdma, which - # is only linux64 (not aarch64). What provides these? - # rdma-core-devel-cos7-x86_64 is close, but lacks the ".so.1" suffix. - # Only the ".so" files are provided by that package. - - "*/libmlx5.so.1" - - "*/librdmacm.so.1" - - "*/libibverbs.so.1" + # TODO: The following libraries are required for libcufile_rdma.so, + # which is only for linux64 (not aarch64). What provides these? + # rdma-core-devel-cos7-x86_64 is close, but doesn't seem to work. + # Perhaps because the files are in a sysroot location? + - "*/libmlx5.so.*" + - "*/librdmacm.so.*" + - "*/libibverbs.so.*" files: - etc/cufile.json - lib/libcufile*.so.* @@ -60,7 +65,6 @@ outputs: - cuda-version {{ cuda_version }} run: - {{ pin_compatible("cuda-version", max_pin="x.x") }} - - rdma-core-devel-cos7-x86_64 # [linux64] run_constrained: - arm-variant * {{ arm_variant_type }} # [aarch64] # Tests are defined at the top level, due to package/output name conflicts. From 08a70e18c953bf0430f93e49430c3d7310f0805e Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Wed, 12 Apr 2023 15:48:43 -0500 Subject: [PATCH 63/65] Fix RDMA cdt dependency. --- recipes/libcufile/meta.yaml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index 26e1615f4ec27..a8b7d44ea0076 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -44,13 +44,6 @@ outputs: build: missing_dso_whitelist: - "*/libcuda.so.*" - # TODO: The following libraries are required for libcufile_rdma.so, - # which is only for linux64 (not aarch64). What provides these? - # rdma-core-devel-cos7-x86_64 is close, but doesn't seem to work. - # Perhaps because the files are in a sysroot location? - - "*/libmlx5.so.*" - - "*/librdmacm.so.*" - - "*/libibverbs.so.*" files: - etc/cufile.json - lib/libcufile*.so.* @@ -61,6 +54,7 @@ outputs: - {{ compiler("cxx") }} - arm-variant * {{ arm_variant_type }} # [aarch64] - sysroot_{{ target_platform }} 2.17 # [linux] + - {{ cdt("rdma-core-devel") }} # [linux64] host: - cuda-version {{ cuda_version }} run: From e1d5f02f0b0527083156bb42443fee76b70cb67d Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Wed, 12 Apr 2023 15:49:23 -0500 Subject: [PATCH 64/65] Don't ship etc/cufile.json. --- recipes/libcufile/build.sh | 2 +- recipes/libcufile/meta.yaml | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/recipes/libcufile/build.sh b/recipes/libcufile/build.sh index 3cdaea3619cc8..449a421247dd3 100644 --- a/recipes/libcufile/build.sh +++ b/recipes/libcufile/build.sh @@ -4,7 +4,7 @@ [[ -d lib64 ]] && mv lib64 lib mkdir -p ${PREFIX}/lib mkdir -p ${PREFIX}/gds -mv -v etc ${PREFIX}/etc +rm -rv etc mv -v man ${PREFIX}/man mv -v samples ${PREFIX}/gds/samples mv -v tools ${PREFIX}/gds/tools diff --git a/recipes/libcufile/meta.yaml b/recipes/libcufile/meta.yaml index a8b7d44ea0076..01ff6fe84902c 100644 --- a/recipes/libcufile/meta.yaml +++ b/recipes/libcufile/meta.yaml @@ -29,7 +29,6 @@ test: # match that. Also we must drop the last component of the version when # finding the versioned .so file. {% set full_version = version.split(".")[:-1] | join(".") %} - - test -f $PREFIX/etc/cufile.json - test -L $PREFIX/lib/libcufile.so.0 - test -L $PREFIX/lib/libcufile_rdma.so.{{ version.split(".")[0] }} # [linux64] - test -L $PREFIX/lib/libcufile.so.{{ full_version }} @@ -45,7 +44,6 @@ outputs: missing_dso_whitelist: - "*/libcuda.so.*" files: - - etc/cufile.json - lib/libcufile*.so.* - targets/{{ target_name }}/lib/libcufile*.so.* requirements: From 16cfcdd08871d3d90cc57307d7ad603e998d8b87 Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Wed, 12 Apr 2023 15:50:54 -0500 Subject: [PATCH 65/65] Rerun CI.