├── .gitignore ├── .github ├── CODEOWNERS └── workflows │ ├── webservices.yml │ └── automerge.yml ├── recipe ├── post-link.bat ├── post-link.sh ├── test_load_elf.c ├── conda_build_config.yaml └── meta.yaml ├── conda-forge.yml ├── azure-pipelines.yml ├── .ci_support ├── win_64_cuda_compiler_version11.2.yaml ├── win_64_cuda_compiler_version11.8.yaml ├── README ├── linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10.yaml ├── linux_64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11.yaml ├── linux_64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12.yaml ├── linux_ppc64le_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12.yaml ├── linux_ppc64le_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10.yaml ├── linux_ppc64le_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11.yaml ├── linux_aarch64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10.yaml ├── linux_aarch64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11.yaml ├── linux_aarch64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12.yaml └── migrations │ ├── cuda120.yaml │ └── cuda118.yaml ├── .circleci └── config.yml ├── .gitattributes ├── .scripts ├── logging_utils.sh ├── build_steps.sh └── run_docker_build.sh ├── .travis.yml ├── LICENSE.txt ├── .azure-pipelines ├── azure-pipelines-linux.yml └── azure-pipelines-win.yml └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | 3 | build_artifacts 4 | -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @adibbley @bdice @jakirkham @vyasr -------------------------------------------------------------------------------- /recipe/post-link.bat: -------------------------------------------------------------------------------- 1 | echo "By downloading and using the cuDNN conda packages, you accept the terms and conditions of the NVIDIA cuDNN EULA - https://docs.nvidia.com/deeplearning/cudnn/sla/index.html" >> "%PREFIX%"\.messages.txt 2 | -------------------------------------------------------------------------------- /recipe/post-link.sh: -------------------------------------------------------------------------------- 1 | echo "By downloading and using the cuDNN conda packages, you accept the terms and conditions of the NVIDIA cuDNN EULA - 2 | https://docs.nvidia.com/deeplearning/cudnn/sla/index.html" >> "$PREFIX"/.messages.txt 3 | -------------------------------------------------------------------------------- /conda-forge.yml: -------------------------------------------------------------------------------- 1 | conda_forge_output_validation: true 2 | provider: 3 | linux_ppc64le: azure 4 | linux_aarch64: default 5 | os_version: 6 | linux_64: cos7 7 | github: 8 | branch_name: main 9 | tooling_branch_name: main 10 | conda_build: 11 | pkg_format: '2' 12 | -------------------------------------------------------------------------------- /azure-pipelines.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - template: ./.azure-pipelines/azure-pipelines-linux.yml 7 | - template: ./.azure-pipelines/azure-pipelines-win.yml -------------------------------------------------------------------------------- /.ci_support/win_64_cuda_compiler_version11.2.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - vs2019 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cuda_compiler: 8 | - nvcc 9 | cuda_compiler_version: 10 | - '11.2' 11 | cxx_compiler: 12 | - vs2019 13 | target_platform: 14 | - win-64 15 | zip_keys: 16 | - - cuda_compiler 17 | - cuda_compiler_version 18 | -------------------------------------------------------------------------------- /.ci_support/win_64_cuda_compiler_version11.8.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - vs2019 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cuda_compiler: 8 | - nvcc 9 | cuda_compiler_version: 10 | - '11.8' 11 | cxx_compiler: 12 | - vs2019 13 | target_platform: 14 | - win-64 15 | zip_keys: 16 | - - cuda_compiler 17 | - cuda_compiler_version 18 | -------------------------------------------------------------------------------- /.ci_support/README: -------------------------------------------------------------------------------- 1 | This file is automatically generated by conda-smithy. If any 2 | particular build configuration is expected, but it is not found, 3 | please make sure all dependencies are satisfiable. To add/modify any 4 | matrix elements, you should create/change conda-smithy's input 5 | recipe/conda_build_config.yaml and re-render the recipe, rather than 6 | editing these files directly. 7 | -------------------------------------------------------------------------------- /.github/workflows/webservices.yml: -------------------------------------------------------------------------------- 1 | on: repository_dispatch 2 | 3 | jobs: 4 | webservices: 5 | runs-on: ubuntu-latest 6 | name: webservices 7 | steps: 8 | - name: webservices 9 | id: webservices 10 | uses: conda-forge/webservices-dispatch-action@main 11 | with: 12 | github_token: ${{ secrets.GITHUB_TOKEN }} 13 | rerendering_github_token: ${{ secrets.RERENDERING_GITHUB_TOKEN }} 14 | -------------------------------------------------------------------------------- /.github/workflows/automerge.yml: -------------------------------------------------------------------------------- 1 | on: 2 | status: {} 3 | check_suite: 4 | types: 5 | - completed 6 | 7 | jobs: 8 | automerge-action: 9 | runs-on: ubuntu-latest 10 | name: automerge 11 | steps: 12 | - name: checkout 13 | uses: actions/checkout@v3 14 | - name: automerge-action 15 | id: automerge-action 16 | uses: conda-forge/automerge-action@main 17 | with: 18 | github_token: ${{ secrets.GITHUB_TOKEN }} 19 | rerendering_github_token: ${{ secrets.RERENDERING_GITHUB_TOKEN }} 20 | -------------------------------------------------------------------------------- /recipe/test_load_elf.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | int main(int argc, char** argv) { 6 | void* handle; 7 | char* full_lib; 8 | 9 | if (argc != 2) { 10 | fprintf(stderr, "usage: test_load_elf mylib.so\n"); 11 | exit(EXIT_FAILURE); 12 | } 13 | full_lib = argv[1]; 14 | 15 | handle = dlopen(full_lib, RTLD_NOW); 16 | if (!handle) { 17 | fprintf(stderr, "error: %s\n", dlerror()); 18 | exit(EXIT_FAILURE); 19 | } else { 20 | printf("success: %s\n", full_lib); 21 | dlclose(handle); 22 | } 23 | 24 | return EXIT_SUCCESS; 25 | } 26 | -------------------------------------------------------------------------------- /.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - gcc 3 | c_compiler_version: 4 | - '10' 5 | cdt_name: 6 | - cos7 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cuda_compiler: 12 | - nvcc 13 | cuda_compiler_version: 14 | - '11.2' 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '10' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cuda:11.2 21 | target_platform: 22 | - linux-64 23 | zip_keys: 24 | - - c_compiler_version 25 | - cxx_compiler_version 26 | - cuda_compiler 27 | - cuda_compiler_version 28 | - cdt_name 29 | - docker_image 30 | -------------------------------------------------------------------------------- /.ci_support/linux_64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - gcc 3 | c_compiler_version: 4 | - '11' 5 | cdt_name: 6 | - cos7 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cuda_compiler: 12 | - nvcc 13 | cuda_compiler_version: 14 | - '11.8' 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '11' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cuda:11.8 21 | target_platform: 22 | - linux-64 23 | zip_keys: 24 | - - c_compiler_version 25 | - cxx_compiler_version 26 | - cuda_compiler 27 | - cuda_compiler_version 28 | - cdt_name 29 | - docker_image 30 | -------------------------------------------------------------------------------- /.ci_support/linux_64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - gcc 3 | c_compiler_version: 4 | - '12' 5 | cdt_name: 6 | - cos7 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cuda_compiler: 12 | - nvcc 13 | cuda_compiler_version: 14 | - '12.0' 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '12' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | target_platform: 22 | - linux-64 23 | zip_keys: 24 | - - c_compiler_version 25 | - cxx_compiler_version 26 | - cuda_compiler 27 | - cuda_compiler_version 28 | - cdt_name 29 | - docker_image 30 | -------------------------------------------------------------------------------- /.ci_support/linux_ppc64le_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - gcc 3 | c_compiler_version: 4 | - '12' 5 | cdt_name: 6 | - cos7 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cuda_compiler: 12 | - nvcc 13 | cuda_compiler_version: 14 | - '12.0' 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '12' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-ppc64le 21 | target_platform: 22 | - linux-ppc64le 23 | zip_keys: 24 | - - c_compiler_version 25 | - cxx_compiler_version 26 | - cuda_compiler 27 | - cuda_compiler_version 28 | - cdt_name 29 | - docker_image 30 | -------------------------------------------------------------------------------- /.ci_support/linux_ppc64le_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - gcc 3 | c_compiler_version: 4 | - '10' 5 | cdt_name: 6 | - cos7 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cuda_compiler: 12 | - nvcc 13 | cuda_compiler_version: 14 | - '11.2' 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '10' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.2 21 | target_platform: 22 | - linux-ppc64le 23 | zip_keys: 24 | - - c_compiler_version 25 | - cxx_compiler_version 26 | - cuda_compiler 27 | - cuda_compiler_version 28 | - cdt_name 29 | - docker_image 30 | -------------------------------------------------------------------------------- /.ci_support/linux_ppc64le_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - gcc 3 | c_compiler_version: 4 | - '11' 5 | cdt_name: 6 | - cos7 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cuda_compiler: 12 | - nvcc 13 | cuda_compiler_version: 14 | - '11.8' 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '11' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.8 21 | target_platform: 22 | - linux-ppc64le 23 | zip_keys: 24 | - - c_compiler_version 25 | - cxx_compiler_version 26 | - cuda_compiler 27 | - cuda_compiler_version 28 | - cdt_name 29 | - docker_image 30 | -------------------------------------------------------------------------------- /.circleci/config.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: jinja-yaml -*- 4 | 5 | version: 2 6 | 7 | jobs: 8 | build: 9 | working_directory: ~/test 10 | machine: 11 | image: ubuntu-2004:current 12 | steps: 13 | - run: 14 | # The Circle-CI build should not be active, but if this is not true for some reason, do a fast finish. 15 | command: exit 0 16 | 17 | workflows: 18 | version: 2 19 | build_and_test: 20 | jobs: 21 | - build: 22 | filters: 23 | branches: 24 | ignore: 25 | - /.*/ 26 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | arm_variant_type: 4 | - sbsa 5 | c_compiler: 6 | - gcc 7 | c_compiler_version: 8 | - '10' 9 | cdt_arch: 10 | - aarch64 11 | cdt_name: 12 | - cos7 13 | channel_sources: 14 | - conda-forge 15 | channel_targets: 16 | - conda-forge main 17 | cuda_compiler: 18 | - nvcc 19 | cuda_compiler_version: 20 | - '11.2' 21 | cxx_compiler: 22 | - gxx 23 | cxx_compiler_version: 24 | - '10' 25 | docker_image: 26 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.2 27 | target_platform: 28 | - linux-aarch64 29 | zip_keys: 30 | - - c_compiler_version 31 | - cxx_compiler_version 32 | - cuda_compiler 33 | - cuda_compiler_version 34 | - cdt_name 35 | - docker_image 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | arm_variant_type: 4 | - sbsa 5 | c_compiler: 6 | - gcc 7 | c_compiler_version: 8 | - '11' 9 | cdt_arch: 10 | - aarch64 11 | cdt_name: 12 | - cos7 13 | channel_sources: 14 | - conda-forge 15 | channel_targets: 16 | - conda-forge main 17 | cuda_compiler: 18 | - nvcc 19 | cuda_compiler_version: 20 | - '11.8' 21 | cxx_compiler: 22 | - gxx 23 | cxx_compiler_version: 24 | - '11' 25 | docker_image: 26 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.8 27 | target_platform: 28 | - linux-aarch64 29 | zip_keys: 30 | - - c_compiler_version 31 | - cxx_compiler_version 32 | - cuda_compiler 33 | - cuda_compiler_version 34 | - cdt_name 35 | - docker_image 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | arm_variant_type: 4 | - sbsa 5 | c_compiler: 6 | - gcc 7 | c_compiler_version: 8 | - '12' 9 | cdt_arch: 10 | - aarch64 11 | cdt_name: 12 | - cos7 13 | channel_sources: 14 | - conda-forge 15 | channel_targets: 16 | - conda-forge main 17 | cuda_compiler: 18 | - nvcc 19 | cuda_compiler_version: 20 | - '12.0' 21 | cxx_compiler: 22 | - gxx 23 | cxx_compiler_version: 24 | - '12' 25 | docker_image: 26 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.8 27 | target_platform: 28 | - linux-aarch64 29 | zip_keys: 30 | - - c_compiler_version 31 | - cxx_compiler_version 32 | - cuda_compiler 33 | - cuda_compiler_version 34 | - cdt_name 35 | - docker_image 36 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | 3 | *.patch binary 4 | *.diff binary 5 | meta.yaml text eol=lf 6 | build.sh text eol=lf 7 | bld.bat text eol=crlf 8 | 9 | # github helper pieces to make some files not show up in diffs automatically 10 | .azure-pipelines/* linguist-generated=true 11 | .circleci/* linguist-generated=true 12 | .ci_support/README linguist-generated=true 13 | .drone/* linguist-generated=true 14 | .drone.yml linguist-generated=true 15 | .github/* linguist-generated=true 16 | .travis/* linguist-generated=true 17 | .appveyor.yml linguist-generated=true 18 | .gitattributes linguist-generated=true 19 | .gitignore linguist-generated=true 20 | .travis.yml linguist-generated=true 21 | .scripts/* linguist-generated=true 22 | .woodpecker.yml linguist-generated=true 23 | LICENSE.txt linguist-generated=true 24 | README.md linguist-generated=true 25 | azure-pipelines.yml linguist-generated=true 26 | build-locally.py linguist-generated=true 27 | shippable.yml linguist-generated=true 28 | -------------------------------------------------------------------------------- /.scripts/logging_utils.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Provide a unified interface for the different logging 4 | # utilities CI providers offer. If unavailable, provide 5 | # a compatible fallback (e.g. bare `echo xxxxxx`). 6 | 7 | function startgroup { 8 | # Start a foldable group of log lines 9 | # Pass a single argument, quoted 10 | case ${CI:-} in 11 | azure ) 12 | echo "##[group]$1";; 13 | travis ) 14 | echo "$1" 15 | echo -en 'travis_fold:start:'"${1// /}"'\\r';; 16 | github_actions ) 17 | echo "::group::$1";; 18 | * ) 19 | echo "$1";; 20 | esac 21 | } 2> /dev/null 22 | 23 | function endgroup { 24 | # End a foldable group of log lines 25 | # Pass a single argument, quoted 26 | 27 | case ${CI:-} in 28 | azure ) 29 | echo "##[endgroup]";; 30 | travis ) 31 | echo -en 'travis_fold:end:'"${1// /}"'\\r';; 32 | github_actions ) 33 | echo "::endgroup::";; 34 | esac 35 | } 2> /dev/null 36 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | 4 | language: generic 5 | 6 | 7 | 8 | matrix: 9 | include: 10 | - env: CONFIG=linux_aarch64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10 UPLOAD_PACKAGES=True PLATFORM=linux-aarch64 DOCKER_IMAGE=quay.io/condaforge/linux-anvil-aarch64-cuda:11.2 11 | os: linux 12 | arch: arm64 13 | dist: focal 14 | 15 | - env: CONFIG=linux_aarch64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11 UPLOAD_PACKAGES=True PLATFORM=linux-aarch64 DOCKER_IMAGE=quay.io/condaforge/linux-anvil-aarch64-cuda:11.8 16 | os: linux 17 | arch: arm64 18 | dist: focal 19 | 20 | - env: CONFIG=linux_aarch64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12 UPLOAD_PACKAGES=True PLATFORM=linux-aarch64 DOCKER_IMAGE=quay.io/condaforge/linux-anvil-aarch64-cuda:11.8 21 | os: linux 22 | arch: arm64 23 | dist: focal 24 | 25 | script: 26 | - export CI=travis 27 | - export GIT_BRANCH="$TRAVIS_BRANCH" 28 | - export FEEDSTOCK_NAME=$(basename ${TRAVIS_REPO_SLUG}) 29 | - if [[ "${TRAVIS_PULL_REQUEST:-}" == "false" ]]; then export IS_PR_BUILD="False"; else export IS_PR_BUILD="True"; fi 30 | 31 | 32 | - if [[ ${PLATFORM} =~ .*linux.* ]]; then CONDA_FORGE_DOCKER_RUN_ARGS="--network=host --security-opt=seccomp=unconfined" ./.scripts/run_docker_build.sh; fi -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | BSD-3-Clause license 2 | Copyright (c) 2015-2022, conda-forge contributors 3 | All rights reserved. 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions are met: 7 | 8 | 1. Redistributions of source code must retain the above copyright notice, 9 | this list of conditions and the following disclaimer. 10 | 2. Redistributions in binary form must reproduce the above copyright 11 | notice, this list of conditions and the following disclaimer in the 12 | documentation and/or other materials provided with the distribution. 13 | 3. Neither the name of the copyright holder nor the names of its 14 | contributors may be used to endorse or promote products derived from 15 | this software without specific prior written permission. 16 | 17 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 18 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 | ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR 21 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 23 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 24 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 | LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 | OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 27 | DAMAGE. 28 | -------------------------------------------------------------------------------- /recipe/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | arm_variant_type: # [aarch64] 2 | - sbsa # [aarch64] 3 | 4 | c_compiler_version: 5 | - 12 # [linux and aarch64] 6 | - 12 # [linux and ppc64le] 7 | - 12 # [linux and x86_64] 8 | - 10 # [linux and aarch64] 9 | - 10 # [linux and ppc64le] 10 | - 10 # [linux and x86_64] 11 | 12 | cxx_compiler_version: 13 | - 12 # [linux and aarch64] 14 | - 12 # [linux and ppc64le] 15 | - 12 # [linux and x86_64] 16 | - 10 # [linux and aarch64] 17 | - 10 # [linux and ppc64le] 18 | - 10 # [linux and x86_64] 19 | 20 | fortran_compiler_version: 21 | - 10 # [linux and aarch64] 22 | - 10 # [linux and ppc64le] 23 | - 10 # [linux and x86_64] 24 | - 10 # [linux and aarch64] 25 | - 10 # [linux and ppc64le] 26 | - 10 # [linux and x86_64] 27 | 28 | cuda_compiler_version: 29 | - 12.0 # [linux and aarch64] 30 | - 12.0 # [linux and ppc64le] 31 | - 12.0 # [linux and x86_64] 32 | - 11.2 # [linux and aarch64] 33 | - 11.2 # [linux and ppc64le] 34 | - 11.2 # [linux and x86_64] 35 | - 11.2 # [win] 36 | 37 | cuda_compiler: 38 | - nvcc # [linux and aarch64] 39 | - nvcc # [linux and ppc64le] 40 | - nvcc # [linux and x86_64] 41 | - nvcc # [linux and aarch64] 42 | - nvcc # [linux and ppc64le] 43 | - nvcc # [linux and x86_64] 44 | - nvcc # [win] 45 | 46 | cudnn: 47 | - undefined # [linux and aarch64] 48 | - undefined # [linux and ppc64le] 49 | - undefined # [linux and x86_64] 50 | - undefined # [linux and aarch64] 51 | - undefined # [linux and ppc64le] 52 | - undefined # [linux and x86_64] 53 | - undefined # [win] 54 | 55 | cdt_name: 56 | - cos7 # [linux and aarch64] 57 | - cos7 # [linux and ppc64le] 58 | - cos7 # [linux and x86_64] 59 | - cos7 # [linux and aarch64] 60 | - cos7 # [linux and ppc64le] 61 | - cos7 # [linux and x86_64] 62 | 63 | docker_image: 64 | # TODO: We're using the aarch64-cuda:11.8 image, based on ubi8, only to get a 65 | # newer glibc for the CUDA 12 builds. For some reason, aarch64 + CUDA 12 is 66 | # expecting GLIBC_2.27. 67 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.8 # [linux and aarch64] 68 | - quay.io/condaforge/linux-anvil-ppc64le # [linux and ppc64le] 69 | - quay.io/condaforge/linux-anvil-cos7-x86_64 # [linux and x86_64] 70 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.2 # [linux and aarch64] 71 | - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.2 # [linux and ppc64le] 72 | - quay.io/condaforge/linux-anvil-cuda:11.2 # [linux and x86_64] 73 | -------------------------------------------------------------------------------- /.azure-pipelines/azure-pipelines-linux.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - job: linux 7 | pool: 8 | vmImage: ubuntu-latest 9 | strategy: 10 | matrix: 11 | linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10: 12 | CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10 13 | UPLOAD_PACKAGES: 'True' 14 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.2 15 | linux_64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11: 16 | CONFIG: linux_64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11 17 | UPLOAD_PACKAGES: 'True' 18 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 19 | linux_64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12: 20 | CONFIG: linux_64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12 21 | UPLOAD_PACKAGES: 'True' 22 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 23 | linux_ppc64le_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10: 24 | CONFIG: linux_ppc64le_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10 25 | UPLOAD_PACKAGES: 'True' 26 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-ppc64le-cuda:11.2 27 | linux_ppc64le_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11: 28 | CONFIG: linux_ppc64le_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11 29 | UPLOAD_PACKAGES: 'True' 30 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-ppc64le-cuda:11.8 31 | linux_ppc64le_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12: 32 | CONFIG: linux_ppc64le_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12 33 | UPLOAD_PACKAGES: 'True' 34 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-ppc64le 35 | timeoutInMinutes: 360 36 | 37 | steps: 38 | # configure qemu binfmt-misc running. This allows us to run docker containers 39 | # embedded qemu-static 40 | - script: | 41 | docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes 42 | ls /proc/sys/fs/binfmt_misc/ 43 | condition: not(startsWith(variables['CONFIG'], 'linux_64')) 44 | displayName: Configure binfmt_misc 45 | 46 | - script: | 47 | export CI=azure 48 | export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME 49 | export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) 50 | if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then 51 | export IS_PR_BUILD="True" 52 | else 53 | export IS_PR_BUILD="False" 54 | fi 55 | .scripts/run_docker_build.sh 56 | displayName: Run docker build 57 | env: 58 | BINSTAR_TOKEN: $(BINSTAR_TOKEN) 59 | FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) 60 | STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) -------------------------------------------------------------------------------- /.scripts/build_steps.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here 4 | # will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent 5 | # changes to this script, consider a proposal to conda-smithy so that other feedstocks can also 6 | # benefit from the improvement. 7 | 8 | # -*- mode: jinja-shell -*- 9 | 10 | set -xeuo pipefail 11 | export FEEDSTOCK_ROOT="${FEEDSTOCK_ROOT:-/home/conda/feedstock_root}" 12 | source ${FEEDSTOCK_ROOT}/.scripts/logging_utils.sh 13 | 14 | 15 | ( endgroup "Start Docker" ) 2> /dev/null 16 | 17 | ( startgroup "Configuring conda" ) 2> /dev/null 18 | 19 | export PYTHONUNBUFFERED=1 20 | export RECIPE_ROOT="${RECIPE_ROOT:-/home/conda/recipe_root}" 21 | export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" 22 | export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" 23 | 24 | cat >~/.condarc < /dev/null 51 | 52 | if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then 53 | cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt" 54 | fi 55 | 56 | if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then 57 | if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then 58 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" 59 | fi 60 | conda debug "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ 61 | ${EXTRA_CB_OPTIONS:-} \ 62 | --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" 63 | 64 | # Drop into an interactive shell 65 | /bin/bash 66 | else 67 | conda mambabuild "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ 68 | --suppress-variables ${EXTRA_CB_OPTIONS:-} \ 69 | --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" 70 | ( startgroup "Validating outputs" ) 2> /dev/null 71 | 72 | validate_recipe_outputs "${FEEDSTOCK_NAME}" 73 | 74 | ( endgroup "Validating outputs" ) 2> /dev/null 75 | 76 | ( startgroup "Uploading packages" ) 2> /dev/null 77 | 78 | if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then 79 | upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" 80 | fi 81 | 82 | ( endgroup "Uploading packages" ) 2> /dev/null 83 | fi 84 | 85 | ( startgroup "Final checks" ) 2> /dev/null 86 | 87 | touch "${FEEDSTOCK_ROOT}/build_artifacts/conda-forge-build-done-${CONFIG}" -------------------------------------------------------------------------------- /.azure-pipelines/azure-pipelines-win.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - job: win 7 | pool: 8 | vmImage: windows-2022 9 | strategy: 10 | matrix: 11 | win_64_cuda_compiler_version11.2: 12 | CONFIG: win_64_cuda_compiler_version11.2 13 | UPLOAD_PACKAGES: 'True' 14 | win_64_cuda_compiler_version11.8: 15 | CONFIG: win_64_cuda_compiler_version11.8 16 | UPLOAD_PACKAGES: 'True' 17 | timeoutInMinutes: 360 18 | variables: 19 | CONDA_BLD_PATH: D:\\bld\\ 20 | UPLOAD_TEMP: D:\\tmp 21 | 22 | steps: 23 | - task: PythonScript@0 24 | displayName: 'Download Miniforge' 25 | inputs: 26 | scriptSource: inline 27 | script: | 28 | import urllib.request 29 | url = 'https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Windows-x86_64.exe' 30 | path = r"$(Build.ArtifactStagingDirectory)/Miniforge.exe" 31 | urllib.request.urlretrieve(url, path) 32 | 33 | - script: | 34 | start /wait "" %BUILD_ARTIFACTSTAGINGDIRECTORY%\Miniforge.exe /InstallationType=JustMe /RegisterPython=0 /S /D=C:\Miniforge 35 | displayName: Install Miniforge 36 | 37 | - powershell: Write-Host "##vso[task.prependpath]C:\Miniforge\Scripts" 38 | displayName: Add conda to PATH 39 | 40 | - script: | 41 | call activate base 42 | mamba.exe install "python=3.10" conda-build conda pip boa conda-forge-ci-setup=3 -c conda-forge --strict-channel-priority --yes 43 | displayName: Install conda-build 44 | 45 | - script: set PYTHONUNBUFFERED=1 46 | displayName: Set PYTHONUNBUFFERED 47 | 48 | # Configure the VM 49 | - script: | 50 | call activate base 51 | setup_conda_rc .\ ".\recipe" .\.ci_support\%CONFIG%.yaml 52 | displayName: conda-forge CI setup 53 | 54 | # Configure the VM. 55 | - script: | 56 | set "CI=azure" 57 | call activate base 58 | run_conda_forge_build_setup 59 | displayName: conda-forge build setup 60 | 61 | - script: | 62 | call activate base 63 | if EXIST LICENSE.txt ( 64 | copy LICENSE.txt "recipe\\recipe-scripts-license.txt" 65 | ) 66 | conda.exe mambabuild "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% 67 | displayName: Build recipe 68 | env: 69 | PYTHONUNBUFFERED: 1 70 | - script: | 71 | set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" 72 | call activate base 73 | validate_recipe_outputs "%FEEDSTOCK_NAME%" 74 | displayName: Validate Recipe Outputs 75 | 76 | - script: | 77 | set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" 78 | set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" 79 | set "TEMP=$(UPLOAD_TEMP)" 80 | if not exist "%TEMP%\" md "%TEMP%" 81 | set "TMP=%TEMP%" 82 | call activate base 83 | upload_package --validate --feedstock-name="%FEEDSTOCK_NAME%" .\ ".\recipe" .ci_support\%CONFIG%.yaml 84 | displayName: Upload package 85 | env: 86 | BINSTAR_TOKEN: $(BINSTAR_TOKEN) 87 | FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) 88 | STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) 89 | condition: and(succeeded(), not(eq(variables['UPLOAD_PACKAGES'], 'False')), not(eq(variables['Build.Reason'], 'PullRequest'))) -------------------------------------------------------------------------------- /.scripts/run_docker_build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here 4 | # will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent 5 | # changes to this script, consider a proposal to conda-smithy so that other feedstocks can also 6 | # benefit from the improvement. 7 | 8 | source .scripts/logging_utils.sh 9 | 10 | ( startgroup "Configure Docker" ) 2> /dev/null 11 | 12 | set -xeo pipefail 13 | 14 | THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )" 15 | PROVIDER_DIR="$(basename $THISDIR)" 16 | 17 | FEEDSTOCK_ROOT="$( cd "$( dirname "$0" )/.." >/dev/null && pwd )" 18 | RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" 19 | 20 | if [ -z ${FEEDSTOCK_NAME} ]; then 21 | export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT}) 22 | fi 23 | 24 | docker info 25 | 26 | # In order for the conda-build process in the container to write to the mounted 27 | # volumes, we need to run with the same id as the host machine, which is 28 | # normally the owner of the mounted volumes, or at least has write permission 29 | export HOST_USER_ID=$(id -u) 30 | # Check if docker-machine is being used (normally on OSX) and get the uid from 31 | # the VM 32 | if hash docker-machine 2> /dev/null && docker-machine active > /dev/null; then 33 | export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u) 34 | fi 35 | 36 | ARTIFACTS="$FEEDSTOCK_ROOT/build_artifacts" 37 | 38 | if [ -z "$CONFIG" ]; then 39 | set +x 40 | FILES=`ls .ci_support/linux_*` 41 | CONFIGS="" 42 | for file in $FILES; do 43 | CONFIGS="${CONFIGS}'${file:12:-5}' or "; 44 | done 45 | echo "Need to set CONFIG env variable. Value can be one of ${CONFIGS:0:-4}" 46 | exit 1 47 | fi 48 | 49 | if [ -z "${DOCKER_IMAGE}" ]; then 50 | SHYAML_INSTALLED="$(shyaml -h || echo NO)" 51 | if [ "${SHYAML_INSTALLED}" == "NO" ]; then 52 | echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Trying to parse with coreutils" 53 | DOCKER_IMAGE=$(cat .ci_support/${CONFIG}.yaml | grep '^docker_image:$' -A 1 | tail -n 1 | cut -b 3-) 54 | if [ "${DOCKER_IMAGE}" = "" ]; then 55 | echo "No docker_image entry found in ${CONFIG}. Falling back to quay.io/condaforge/linux-anvil-comp7" 56 | DOCKER_IMAGE="quay.io/condaforge/linux-anvil-comp7" 57 | fi 58 | else 59 | DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 quay.io/condaforge/linux-anvil-comp7 )" 60 | fi 61 | fi 62 | 63 | mkdir -p "$ARTIFACTS" 64 | DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" 65 | rm -f "$DONE_CANARY" 66 | 67 | # Allow people to specify extra default arguments to `docker run` (e.g. `--rm`) 68 | DOCKER_RUN_ARGS="${CONDA_FORGE_DOCKER_RUN_ARGS}" 69 | if [ -z "${CI}" ]; then 70 | DOCKER_RUN_ARGS="-it ${DOCKER_RUN_ARGS}" 71 | fi 72 | 73 | ( endgroup "Configure Docker" ) 2> /dev/null 74 | 75 | ( startgroup "Start Docker" ) 2> /dev/null 76 | 77 | export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" 78 | export IS_PR_BUILD="${IS_PR_BUILD:-False}" 79 | docker pull "${DOCKER_IMAGE}" 80 | docker run ${DOCKER_RUN_ARGS} \ 81 | -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \ 82 | -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \ 83 | -e CONFIG \ 84 | -e HOST_USER_ID \ 85 | -e UPLOAD_PACKAGES \ 86 | -e IS_PR_BUILD \ 87 | -e GIT_BRANCH \ 88 | -e UPLOAD_ON_BRANCH \ 89 | -e CI \ 90 | -e FEEDSTOCK_NAME \ 91 | -e CPU_COUNT \ 92 | -e BUILD_WITH_CONDA_DEBUG \ 93 | -e BUILD_OUTPUT_ID \ 94 | -e BINSTAR_TOKEN \ 95 | -e FEEDSTOCK_TOKEN \ 96 | -e STAGING_BINSTAR_TOKEN \ 97 | "${DOCKER_IMAGE}" \ 98 | bash \ 99 | "/home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh" 100 | 101 | # verify that the end of the script was reached 102 | test -f "$DONE_CANARY" 103 | 104 | # This closes the last group opened in `build_steps.sh` 105 | ( endgroup "Final checks" ) 2> /dev/null -------------------------------------------------------------------------------- /recipe/meta.yaml: -------------------------------------------------------------------------------- 1 | {% set version = "8.8.0.121" %} 2 | {% set cuda_major = (cuda_compiler_version|default("12.0.0")).split(".")[0] %} 3 | {% set platform = "linux-x86_64" %} # [linux64] 4 | {% set platform = "linux-ppc64le" %} # [ppc64le] 5 | {% set platform = "linux-sbsa" %} # [aarch64] 6 | {% set platform = "windows-x86_64" %} # [win] 7 | {% set extension = "tar.xz" %} # [not win] 8 | {% set extension = "zip" %} # [win] 9 | 10 | package: 11 | name: cudnn 12 | version: {{ version }} 13 | 14 | source: 15 | url: https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/{{ platform }}/cudnn-{{ platform }}-{{ version }}_cuda{{ cuda_major }}-archive.{{ extension }} 16 | sha256: 62046476076d1b455fb13fb78b38d3496bacafbfdbb0494fb3392240a04466ea # [linux64 and cuda_major == "11"] 17 | sha256: a0792b666caaf593a9dd4130979578fd3a78230f4407645c295700ef8e7aaaf2 # [linux64 and cuda_major == "12"] 18 | sha256: a019f2c8a300991d94d718a3524377d978efadaa62349858741f17ef859a9e55 # [aarch64 and cuda_major == "11"] 19 | sha256: fc668519a8344e9d05335bad4bc5d23a504cdc7579aea41f12d6aa0f3079e709 # [aarch64 and cuda_major == "12"] 20 | sha256: 521c4b6ef579582953e4df2f5fe95a106bfc6d9dc30c6ac26ed6fd92fd0767b9 # [ppc64le and cuda_major == "11"] 21 | sha256: cd41ab8b61f5beb54e32c3668ecd311ce926c39006fba256b053dd7d248419d4 # [ppc64le and cuda_major == "12"] 22 | sha256: 4f0105a51ac6ea947154e252c8b220baf3345803f55644b5aad84e22ae4f8986 # [win and cuda_major == "11"] 23 | sha256: e362e1fbf6b101ad71aa5314f21d00a4353b90efbe5cdedc5fcfb0f3b68cd791 # [win and cuda_major == "12"] 24 | 25 | build: 26 | number: 3 27 | # TODO: Enable Windows with CUDA 12 when it is supported in CI 28 | skip: True # [win32 or osx or (win and cuda_major == "12")] 29 | # Disable binary relocation to workaround patchelf issue 30 | # xref: https://github.com/NixOS/patchelf/issues/492 31 | binary_relocation: false 32 | script: 33 | - mkdir -p $PREFIX/include # [linux] 34 | - cp include/cudnn*.h $PREFIX/include/ # [linux] 35 | - mkdir -p $PREFIX/lib # [linux] 36 | - mv lib/libcudnn*.so* $PREFIX/lib/ # [linux] 37 | 38 | - mkdir %LIBRARY_INC% # [win] 39 | - copy %SRC_DIR%\\include\\cudnn*.h %LIBRARY_INC%\\ # [win] 40 | - mkdir %LIBRARY_LIB% # [win] 41 | - copy %SRC_DIR%\\lib\\x64\\cudnn*.lib %LIBRARY_LIB%\\ # [win] 42 | - mkdir %LIBRARY_BIN% # [win] 43 | - copy %SRC_DIR%\\bin\\cudnn*.dll %LIBRARY_BIN%\\ # [win] 44 | ignore_run_exports: 45 | - cudatoolkit 46 | run_exports: 47 | - {{ pin_subpackage('cudnn') }} 48 | 49 | requirements: 50 | build: 51 | - {{ compiler('c') }} 52 | - {{ compiler('cxx') }} 53 | - {{ compiler('cuda') }} # [cuda_compiler_version != "12.0"] 54 | - arm-variant * {{ arm_variant_type }} # [aarch64] 55 | - sysroot_{{ target_platform }} 2.17 # [linux] 56 | host: 57 | - cuda-version {{ cuda_major }}.0 58 | - patchelf >=0.12 # [linux] 59 | # to suppress ".so not found" errors 60 | - libzlib # [linux] 61 | - libzlib-wapi # [win64] 62 | run: 63 | - {{ pin_compatible("cuda-version", max_pin="x") }} 64 | {% if cuda_major == "11" %} 65 | - cudatoolkit 11.* 66 | {% else %} 67 | - cuda-nvrtc 68 | - libcublas 69 | {% endif %} 70 | run_constrained: 71 | - __glibc >=2.17 # [linux and not aarch64] 72 | - __glibc >=2.28 # [linux and aarch64] 73 | - arm-variant * {{ arm_variant_type }} # [aarch64] 74 | 75 | test: 76 | requires: 77 | - {{ compiler('c') }} # [linux] 78 | files: 79 | - test_load_elf.c # [linux] 80 | commands: 81 | - if not exist %LIBRARY_INC%/cudnn.h exit 1 # [win] 82 | - if not exist %LIBRARY_INC%/cudnn_adv_train.h exit 1 # [win] 83 | - if not exist %LIBRARY_LIB%/cudnn.lib exit 1 # [win] 84 | - if not exist %LIBRARY_LIB%/cudnn_adv_train.lib exit 1 # [win] 85 | - if not exist %LIBRARY_BIN%/cudnn64_8.dll exit 1 # [win] 86 | - if not exist %LIBRARY_BIN%/cudnn_adv_train64_8.dll exit 1 # [win] 87 | - test -f $PREFIX/include/cudnn.h # [linux] 88 | - test -f $PREFIX/include/cudnn_adv_train.h # [linux] 89 | - test -f $PREFIX/lib/libcudnn.so # [linux] 90 | - test -f $PREFIX/lib/libcudnn_adv_train.so # [linux] 91 | - ${GCC} test_load_elf.c -std=c99 -Werror -ldl -o test_load_elf # [linux] 92 | - for f in $PREFIX/lib/libcudnn*.so; do ./test_load_elf $f; done # [linux] 93 | 94 | about: 95 | home: https://developer.nvidia.com/cudnn 96 | license: LicenseRef-cuDNN-Software-License-Agreement 97 | license_file: LICENSE 98 | license_url: https://docs.nvidia.com/deeplearning/cudnn/sla/index.html 99 | summary: "NVIDIA's cuDNN deep neural network acceleration library" 100 | description: | 101 | NVIDIA CUDA Deep Neural Network (cuDNN) is a GPU-accelerated library of 102 | primitives for deep neural networks. It provides highly tuned 103 | implementations of routines arising frequently in DNN applications. 104 | 105 | License Agreements:- The packages are governed by the NVIDIA cuDNN 106 | Software License Agreement (EULA). By downloading and using the packages, 107 | you accept the terms and conditions of the NVIDIA cuDNN EULA - 108 | https://docs.nvidia.com/deeplearning/cudnn/sla/index.html 109 | doc_url: https://docs.nvidia.com/deeplearning/cudnn/ 110 | dev_url: https://developer.nvidia.com/rdp/cudnn-download 111 | 112 | extra: 113 | recipe-maintainers: 114 | - adibbley 115 | - bdice 116 | - jakirkham 117 | - vyasr 118 | -------------------------------------------------------------------------------- /.ci_support/migrations/cuda120.yaml: -------------------------------------------------------------------------------- 1 | migrator_ts: 1682985063 2 | __migrator: 3 | kind: 4 | version 5 | migration_number: 6 | 2 7 | build_number: 8 | 1 9 | paused: false 10 | override_cbc_keys: 11 | - cuda_compiler_stub 12 | operation: key_add 13 | check_solvable: false 14 | primary_key: cuda_compiler_version 15 | ordering: 16 | cxx_compiler_version: 17 | - 9 18 | - 8 19 | - 7 20 | c_compiler_version: 21 | - 9 22 | - 8 23 | - 7 24 | fortran_compiler_version: 25 | - 9 26 | - 8 27 | - 7 28 | docker_image: 29 | - quay.io/condaforge/linux-anvil-comp7 # [os.environ.get("BUILD_PLATFORM") == "linux-64"] 30 | - quay.io/condaforge/linux-anvil-aarch64 # [os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] 31 | - quay.io/condaforge/linux-anvil-ppc64le # [os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] 32 | - quay.io/condaforge/linux-anvil-armv7l # [os.environ.get("BUILD_PLATFORM") == "linux-armv7l"] 33 | - quay.io/condaforge/linux-anvil-cuda:9.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 34 | - quay.io/condaforge/linux-anvil-cuda:10.0 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 35 | - quay.io/condaforge/linux-anvil-cuda:10.1 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 36 | - quay.io/condaforge/linux-anvil-cuda:10.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 37 | - quay.io/condaforge/linux-anvil-cuda:11.0 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 38 | - quay.io/condaforge/linux-anvil-cuda:11.1 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 39 | - quay.io/condaforge/linux-anvil-cuda:11.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 40 | # case: native compilation (build == target) 41 | - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.2 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] 42 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.2 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] 43 | # case: cross-compilation (build != target) 44 | - quay.io/condaforge/linux-anvil-cuda:11.2 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-64"] 45 | - quay.io/condaforge/linux-anvil-cuda:11.2 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 46 | # case: non-CUDA builds 47 | - quay.io/condaforge/linux-anvil-cos7-x86_64 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 48 | cuda_compiler_version: 49 | - None 50 | - 10.2 # [(linux64 or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 51 | - 11.0 # [(linux64 or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 52 | - 11.1 # [(linux64 or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 53 | - 11.2 # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 54 | - 12.0 # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 55 | commit_message: | 56 | Rebuild for CUDA 12 w/arch support 57 | 58 | The transition to CUDA 12 SDK includes new packages for all CUDA libraries and 59 | build tools. Notably, the cudatoolkit package no longer exists, and packages 60 | should depend directly on the specific CUDA libraries (libcublas, libcusolver, 61 | etc) as needed. For an in-depth overview of the changes and to report problems 62 | [see this issue]( https://github.com/conda-forge/conda-forge.github.io/issues/1963 ). 63 | Please feel free to raise any issues encountered there. Thank you! :pray: 64 | 65 | cuda_compiler: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 66 | - cuda-nvcc # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 67 | 68 | cuda_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 69 | - 12.0 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 70 | 71 | c_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 72 | - 12 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 73 | 74 | cxx_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 75 | - 12 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 76 | 77 | fortran_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 78 | - 12 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 79 | 80 | cdt_name: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 81 | - cos7 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 82 | 83 | docker_image: # [os.environ.get("BUILD_PLATFORM", "").startswith("linux-") and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 84 | - quay.io/condaforge/linux-anvil-cos7-x86_64 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64" and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 85 | # case: native compilation (build == target) 86 | - quay.io/condaforge/linux-anvil-ppc64le # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] 87 | - quay.io/condaforge/linux-anvil-aarch64 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] 88 | # case: cross-compilation (build != target) 89 | - quay.io/condaforge/linux-anvil-cos7-x86_64 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-64"] 90 | - quay.io/condaforge/linux-anvil-cos7-x86_64 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 91 | -------------------------------------------------------------------------------- /.ci_support/migrations/cuda118.yaml: -------------------------------------------------------------------------------- 1 | migrator_ts: 1692828152 2 | __migrator: 3 | kind: 4 | version 5 | migration_number: 6 | 1 7 | build_number: 8 | 1 9 | paused: false 10 | override_cbc_keys: 11 | - cuda_compiler_stub 12 | operation: key_add 13 | check_solvable: false 14 | primary_key: cuda_compiler_version 15 | ordering: 16 | cxx_compiler_version: 17 | - 9 18 | - 8 19 | - 7 20 | c_compiler_version: 21 | - 9 22 | - 8 23 | - 7 24 | fortran_compiler_version: 25 | - 9 26 | - 8 27 | - 7 28 | docker_image: 29 | # Native builds 30 | - quay.io/condaforge/linux-anvil-comp7 # [os.environ.get("BUILD_PLATFORM") == "linux-64"] 31 | - quay.io/condaforge/linux-anvil-aarch64 # [os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] 32 | - quay.io/condaforge/linux-anvil-ppc64le # [os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] 33 | - quay.io/condaforge/linux-anvil-armv7l # [os.environ.get("BUILD_PLATFORM") == "linux-armv7l"] 34 | 35 | # Legacy CUDAs 36 | - quay.io/condaforge/linux-anvil-cuda:9.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 37 | - quay.io/condaforge/linux-anvil-cuda:10.0 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 38 | - quay.io/condaforge/linux-anvil-cuda:10.1 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 39 | - quay.io/condaforge/linux-anvil-cuda:10.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 40 | - quay.io/condaforge/linux-anvil-cuda:11.0 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 41 | - quay.io/condaforge/linux-anvil-cuda:11.1 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 42 | 43 | # CUDA 11.2 44 | - quay.io/condaforge/linux-anvil-cuda:11.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 45 | # CUDA 11.2 arch: native compilation (build == target) 46 | - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.2 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] 47 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.2 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] 48 | # CUDA 11.2 arch: cross-compilation (build != target) 49 | - quay.io/condaforge/linux-anvil-cuda:11.2 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-64"] 50 | - quay.io/condaforge/linux-anvil-cuda:11.2 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 51 | 52 | # CUDA 11.8 53 | - quay.io/condaforge/linux-anvil-cuda:11.8 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 54 | # CUDA 11.8 arch: native compilation (build == target) 55 | - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.8 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] 56 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.8 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] 57 | # CUDA 11.8 arch: cross-compilation (build != target) 58 | - quay.io/condaforge/linux-anvil-cuda:11.8 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-64"] 59 | - quay.io/condaforge/linux-anvil-cuda:11.8 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 60 | 61 | # Native CentOS 7 image 62 | - quay.io/condaforge/linux-anvil-cos7-x86_64 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 63 | cuda_compiler_version: 64 | - None 65 | - 10.2 # [(linux64 or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 66 | - 11.0 # [(linux64 or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 67 | - 11.1 # [(linux64 or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 68 | - 11.2 # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 69 | - 11.8 # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 70 | - 12.0 # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 71 | commit_message: | 72 | Rebuild for CUDA 11.8 w/arch support 73 | 74 | cuda_compiler: # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 75 | - nvcc # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 76 | 77 | cuda_compiler_version: # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 78 | - 11.8 # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 79 | 80 | c_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 81 | - 11 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 82 | 83 | cxx_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 84 | - 11 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 85 | 86 | fortran_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 87 | - 11 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 88 | 89 | cdt_name: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 90 | - cos7 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 91 | 92 | docker_image: # [os.environ.get("BUILD_PLATFORM", "").startswith("linux-") and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] 93 | - quay.io/condaforge/linux-anvil-cuda:11.8 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 94 | # case: native compilation (build == target) 95 | - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.8 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] 96 | - quay.io/condaforge/linux-anvil-aarch64-cuda:11.8 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] 97 | # case: cross-compilation (build != target) 98 | - quay.io/condaforge/linux-anvil-cuda:11.8 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-64"] 99 | - quay.io/condaforge/linux-anvil-cuda:11.8 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] 100 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | About cudnn-feedstock 2 | ===================== 3 | 4 | Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/cudnn-feedstock/blob/main/LICENSE.txt) 5 | 6 | Home: https://developer.nvidia.com/cudnn 7 | 8 | Package license: [LicenseRef-cuDNN-Software-License-Agreement](https://docs.nvidia.com/deeplearning/cudnn/sla/index.html) 9 | 10 | Summary: NVIDIA's cuDNN deep neural network acceleration library 11 | 12 | Development: https://developer.nvidia.com/rdp/cudnn-download 13 | 14 | Documentation: https://docs.nvidia.com/deeplearning/cudnn/ 15 | 16 | NVIDIA CUDA Deep Neural Network (cuDNN) is a GPU-accelerated library of 17 | primitives for deep neural networks. It provides highly tuned 18 | implementations of routines arising frequently in DNN applications. 19 | 20 | License Agreements:- The packages are governed by the NVIDIA cuDNN 21 | Software License Agreement (EULA). By downloading and using the packages, 22 | you accept the terms and conditions of the NVIDIA cuDNN EULA - 23 | https://docs.nvidia.com/deeplearning/cudnn/sla/index.html 24 | 25 | 26 | Current build status 27 | ==================== 28 | 29 | 30 | 31 | 32 | 37 | 38 | 39 | 40 | 41 | 132 | 133 |
Travis 33 | 34 | linux 35 | 36 |
Azure 42 |
43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 57 | 58 | 59 | 64 | 65 | 66 | 71 | 72 | 73 | 78 | 79 | 80 | 85 | 86 | 87 | 92 | 93 | 94 | 99 | 100 | 101 | 106 | 107 | 108 | 113 | 114 | 115 | 120 | 121 | 122 | 127 | 128 | 129 |
VariantStatus
linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10 53 | 54 | variant 55 | 56 |
linux_64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11 60 | 61 | variant 62 | 63 |
linux_64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12 67 | 68 | variant 69 | 70 |
linux_aarch64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10 74 | 75 | variant 76 | 77 |
linux_aarch64_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11 81 | 82 | variant 83 | 84 |
linux_aarch64_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12 88 | 89 | variant 90 | 91 |
linux_ppc64le_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10 95 | 96 | variant 97 | 98 |
linux_ppc64le_c_compiler_version11cuda_compiler_version11.8cxx_compiler_version11 102 | 103 | variant 104 | 105 |
linux_ppc64le_c_compiler_version12cuda_compiler_version12.0cxx_compiler_version12 109 | 110 | variant 111 | 112 |
win_64_cuda_compiler_version11.2 116 | 117 | variant 118 | 119 |
win_64_cuda_compiler_version11.8 123 | 124 | variant 125 | 126 |
130 |
131 |
134 | 135 | Current release info 136 | ==================== 137 | 138 | | Name | Downloads | Version | Platforms | 139 | | --- | --- | --- | --- | 140 | | [![Conda Recipe](https://img.shields.io/badge/recipe-cudnn-green.svg)](https://anaconda.org/conda-forge/cudnn) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/cudnn.svg)](https://anaconda.org/conda-forge/cudnn) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/cudnn.svg)](https://anaconda.org/conda-forge/cudnn) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/cudnn.svg)](https://anaconda.org/conda-forge/cudnn) | 141 | 142 | Installing cudnn 143 | ================ 144 | 145 | Installing `cudnn` from the `conda-forge` channel can be achieved by adding `conda-forge` to your channels with: 146 | 147 | ``` 148 | conda config --add channels conda-forge 149 | conda config --set channel_priority strict 150 | ``` 151 | 152 | Once the `conda-forge` channel has been enabled, `cudnn` can be installed with `conda`: 153 | 154 | ``` 155 | conda install cudnn 156 | ``` 157 | 158 | or with `mamba`: 159 | 160 | ``` 161 | mamba install cudnn 162 | ``` 163 | 164 | It is possible to list all of the versions of `cudnn` available on your platform with `conda`: 165 | 166 | ``` 167 | conda search cudnn --channel conda-forge 168 | ``` 169 | 170 | or with `mamba`: 171 | 172 | ``` 173 | mamba search cudnn --channel conda-forge 174 | ``` 175 | 176 | Alternatively, `mamba repoquery` may provide more information: 177 | 178 | ``` 179 | # Search all versions available on your platform: 180 | mamba repoquery search cudnn --channel conda-forge 181 | 182 | # List packages depending on `cudnn`: 183 | mamba repoquery whoneeds cudnn --channel conda-forge 184 | 185 | # List dependencies of `cudnn`: 186 | mamba repoquery depends cudnn --channel conda-forge 187 | ``` 188 | 189 | 190 | About conda-forge 191 | ================= 192 | 193 | [![Powered by 194 | NumFOCUS](https://img.shields.io/badge/powered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](https://numfocus.org) 195 | 196 | conda-forge is a community-led conda channel of installable packages. 197 | In order to provide high-quality builds, the process has been automated into the 198 | conda-forge GitHub organization. The conda-forge organization contains one repository 199 | for each of the installable packages. Such a repository is known as a *feedstock*. 200 | 201 | A feedstock is made up of a conda recipe (the instructions on what and how to build 202 | the package) and the necessary configurations for automatic building using freely 203 | available continuous integration services. Thanks to the awesome service provided by 204 | [Azure](https://azure.microsoft.com/en-us/services/devops/), [GitHub](https://github.com/), 205 | [CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/), 206 | [Drone](https://cloud.drone.io/welcome), and [TravisCI](https://travis-ci.com/) 207 | it is possible to build and upload installable packages to the 208 | [conda-forge](https://anaconda.org/conda-forge) [Anaconda-Cloud](https://anaconda.org/) 209 | channel for Linux, Windows and OSX respectively. 210 | 211 | To manage the continuous integration and simplify feedstock maintenance 212 | [conda-smithy](https://github.com/conda-forge/conda-smithy) has been developed. 213 | Using the ``conda-forge.yml`` within this repository, it is possible to re-render all of 214 | this feedstock's supporting files (e.g. the CI configuration files) with ``conda smithy rerender``. 215 | 216 | For more information please check the [conda-forge documentation](https://conda-forge.org/docs/). 217 | 218 | Terminology 219 | =========== 220 | 221 | **feedstock** - the conda recipe (raw material), supporting scripts and CI configuration. 222 | 223 | **conda-smithy** - the tool which helps orchestrate the feedstock. 224 | Its primary use is in the construction of the CI ``.yml`` files 225 | and simplify the management of *many* feedstocks. 226 | 227 | **conda-forge** - the place where the feedstock and smithy live and work to 228 | produce the finished article (built conda distributions) 229 | 230 | 231 | Updating cudnn-feedstock 232 | ======================== 233 | 234 | If you would like to improve the cudnn recipe or build a new 235 | package version, please fork this repository and submit a PR. Upon submission, 236 | your changes will be run on the appropriate platforms to give the reviewer an 237 | opportunity to confirm that the changes result in a successful build. Once 238 | merged, the recipe will be re-built and uploaded automatically to the 239 | `conda-forge` channel, whereupon the built conda packages will be available for 240 | everybody to install and use from the `conda-forge` channel. 241 | Note that all branches in the conda-forge/cudnn-feedstock are 242 | immediately built and any created packages are uploaded, so PRs should be based 243 | on branches in forks and branches in the main repository should only be used to 244 | build distinct package versions. 245 | 246 | In order to produce a uniquely identifiable distribution: 247 | * If the version of a package **is not** being increased, please add or increase 248 | the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string). 249 | * If the version of a package **is** being increased, please remember to return 250 | the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string) 251 | back to 0. 252 | 253 | Feedstock Maintainers 254 | ===================== 255 | 256 | * [@adibbley](https://github.com/adibbley/) 257 | * [@bdice](https://github.com/bdice/) 258 | * [@jakirkham](https://github.com/jakirkham/) 259 | * [@vyasr](https://github.com/vyasr/) 260 | 261 | --------------------------------------------------------------------------------