Skip to content

Commit

Permalink
Enable cuFile on ARM (#405)
Browse files Browse the repository at this point in the history
Fixes #339

Builds CUDA 12.2+ ARM packages with cuFile and adds cuFile as a dependency. Continues to build CUDA 11 ARM packages without cuFile.

As cuFile already has the needed logic to `dlopen` cuFile at runtime (with fallbacks for when it is missing), there shouldn't be any additional handling needed for legacy CUDA versions with ARM support.

Authors:
  - https://github.com/jakirkham

Approvers:
  - Mads R. B. Kristensen (https://github.com/madsbk)
  - Mike Sarahan (https://github.com/msarahan)
  - Bradley Dice (https://github.com/bdice)

URL: #405
  • Loading branch information
jakirkham authored Jul 24, 2024
1 parent 89a3343 commit 72da86c
Show file tree
Hide file tree
Showing 4 changed files with 87 additions and 11 deletions.
38 changes: 38 additions & 0 deletions conda/environments/all_cuda-118_arch-aarch64.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# This file is generated by `rapids-dependency-file-generator`.
# To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`.
channels:
- rapidsai
- rapidsai-nightly
- conda-forge
- nvidia
dependencies:
- c-compiler
- cmake>=3.26.4,!=3.30.0
- cuda-python>=11.7.1,<12.0a0
- cuda-version=11.8
- cudatoolkit
- cupy>=12.0.0
- cxx-compiler
- cython>=3.0.0
- dask>=2022.05.2
- doxygen=1.9.1
- gcc_linux-aarch64=11.*
- ninja
- numcodecs <0.12.0
- numpy>=1.23,<2.0a0
- numpydoc
- nvcc_linux-aarch64=11.8
- nvcomp==3.0.6
- packaging
- pre-commit
- pytest
- pytest-cov
- python>=3.9,<3.12
- rapids-build-backend>=0.3.0,<0.4.0.dev0
- scikit-build-core>=0.7.0
- sphinx
- sphinx-click
- sphinx_rtd_theme
- sysroot_linux-aarch64=2.17
- zarr
name: all_cuda-118_arch-aarch64
38 changes: 38 additions & 0 deletions conda/environments/all_cuda-125_arch-aarch64.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# This file is generated by `rapids-dependency-file-generator`.
# To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`.
channels:
- rapidsai
- rapidsai-nightly
- conda-forge
- nvidia
dependencies:
- c-compiler
- cmake>=3.26.4,!=3.30.0
- cuda-nvcc
- cuda-python>=12.0,<13.0a0
- cuda-version=12.5
- cupy>=12.0.0
- cxx-compiler
- cython>=3.0.0
- dask>=2022.05.2
- doxygen=1.9.1
- gcc_linux-aarch64=11.*
- libcufile-dev
- ninja
- numcodecs <0.12.0
- numpy>=1.23,<2.0a0
- numpydoc
- nvcomp==3.0.6
- packaging
- pre-commit
- pytest
- pytest-cov
- python>=3.9,<3.12
- rapids-build-backend>=0.3.0,<0.4.0.dev0
- scikit-build-core>=0.7.0
- sphinx
- sphinx-click
- sphinx_rtd_theme
- sysroot_linux-aarch64=2.17
- zarr
name: all_cuda-125_arch-aarch64
12 changes: 6 additions & 6 deletions conda/recipes/libkvikio/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ requirements:
- libcufile {{ cuda11_libcufile_host_version }} # [linux64]
- libcufile-dev {{ cuda11_libcufile_host_version }} # [linux64]
{% else %}
- libcufile-dev # [linux64]
- libcufile-dev # [linux]
{% endif %}

outputs:
Expand All @@ -67,7 +67,7 @@ outputs:
- {{ compiler('cuda11') }}
{% else %}
- {{ compiler('cuda') }}
- libcufile-dev # [linux64]
- libcufile-dev # [linux]
{% endif %}
requirements:
build:
Expand All @@ -81,7 +81,7 @@ outputs:
- libcufile {{ cuda11_libcufile_run_version }} # [linux64]
- libcufile-dev {{ cuda11_libcufile_run_version }} # [linux64]
{% else %}
- libcufile-dev # [linux64]
- libcufile-dev # [linux]
{% endif %}
test:
commands:
Expand All @@ -104,7 +104,7 @@ outputs:
{% else %}
- {{ compiler('cuda') }}
- cuda-cudart-dev
- libcufile-dev # [linux64]
- libcufile-dev # [linux]
{% endif %}
requirements:
build:
Expand All @@ -116,7 +116,7 @@ outputs:
- libcufile {{ cuda11_libcufile_run_version }} # [linux64]
{% else %}
- cuda-cudart-dev
- libcufile-dev # [linux64]
- libcufile-dev # [linux]
{% endif %}
run:
- {{ pin_compatible('cuda-version', max_pin='x', min_pin='x') }}
Expand All @@ -125,7 +125,7 @@ outputs:
- libcufile {{ cuda11_libcufile_run_version }} # [linux64]
{% else %}
- cuda-cudart
- libcufile # [linux64]
- libcufile # [linux]
{% endif %}
about:
home: https://rapids.ai
Expand Down
10 changes: 5 additions & 5 deletions dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ files:
output: conda
matrix:
cuda: ["11.8", "12.5"]
arch: [x86_64]
arch: [aarch64, x86_64]
includes:
- build-universal
- build-cpp
Expand Down Expand Up @@ -209,14 +209,14 @@ dependencies:
packages:
- output_types: conda
matrices:
- matrix:
arch: aarch64
packages:
- matrix:
cuda: "12.*"
arch: x86_64
packages:
- libcufile-dev
- matrix:
arch: aarch64
cuda: "11.*"
packages:
- matrix:
cuda: "11.8"
arch: x86_64
Expand Down

0 comments on commit 72da86c

Please sign in to comment.