diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index 7c63356..93dba9b 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -8,78 +8,50 @@ jobs: vmImage: ubuntu-latest strategy: matrix: - linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.10.____cpython: - CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.10.____cpython + linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython: + CONFIG: linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.1 - linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.11.____cpython: - CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.11.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 + linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython: + CONFIG: linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.1 - linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.8.____cpython: - CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.8.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 + linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.12.____cpython: + CONFIG: linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.12.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.1 - linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.9.____cpython: - CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.9.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 + linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython: + CONFIG: linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.1 - linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython: - CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 + linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython: + CONFIG: linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.2 - linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython: - CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 + linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.10.____cpython: + CONFIG: linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.10.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.2 - linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython: - CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.11.____cpython: + CONFIG: linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.11.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.2 - linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython: - CONFIG: linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.12.____cpython: + CONFIG: linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.12.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.2 - linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.10.____cpython: - CONFIG: linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.10.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.8.____cpython: + CONFIG: linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.8.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-cuda:10.2 - linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.11.____cpython: - CONFIG: linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.11.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.9.____cpython: + CONFIG: linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.9.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-cuda:10.2 - linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.8.____cpython: - CONFIG: linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.8.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-cuda:10.2 - linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.9.____cpython: - CONFIG: linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.9.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-cuda:10.2 - linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.10.____cpython: - CONFIG: linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.10.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.0 - linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.11.____cpython: - CONFIG: linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.11.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.0 - linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.8.____cpython: - CONFIG: linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.8.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.0 - linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.9.____cpython: - CONFIG: linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.9.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.0 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 timeoutInMinutes: 360 + variables: {} steps: - - script: | - rm -rf /opt/ghc - df -h - displayName: Manage disk space - # configure qemu binfmt-misc running. This allows us to run docker containers # embedded qemu-static - script: | @@ -90,6 +62,9 @@ jobs: - script: | export CI=azure + export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) + export remote_url=$(Build.Repository.Uri) + export sha=$(Build.SourceVersion) export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then diff --git a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.10.____cpython.yaml b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython.yaml similarity index 77% rename from .ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.10.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython.yaml index c8413e2..28535c7 100644 --- a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.10.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '11' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -11,13 +15,13 @@ channel_targets: cuda_compiler: - nvcc cuda_compiler_version: -- '11.1' +- '11.8' cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.1 +- quay.io/condaforge/linux-anvil-cuda:11.8 gflags: - '2.2' libblas: @@ -35,6 +39,8 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython.yaml b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython.yaml similarity index 77% rename from .ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython.yaml index 35b40b0..e21b8cd 100644 --- a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '11' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -11,13 +15,13 @@ channel_targets: cuda_compiler: - nvcc cuda_compiler_version: -- '11.2' +- '11.8' cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.2 +- quay.io/condaforge/linux-anvil-cuda:11.8 gflags: - '2.2' libblas: @@ -35,6 +39,8 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.9.____cpython.yaml b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.12.____cpython.yaml similarity index 74% rename from .ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.9.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.12.____cpython.yaml index 0e79528..5187b47 100644 --- a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.9.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.12.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '11' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -11,13 +15,13 @@ channel_targets: cuda_compiler: - nvcc cuda_compiler_version: -- '11.1' +- '11.8' cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.1 +- quay.io/condaforge/linux-anvil-cuda:11.8 gflags: - '2.2' libblas: @@ -29,12 +33,14 @@ pin_run_as_build: min_pin: x.x max_pin: x.x python: -- 3.9.* *_cpython +- 3.12.* *_cpython target_platform: - linux-64 zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython.yaml b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython.yaml similarity index 77% rename from .ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython.yaml index df9caf1..cf50858 100644 --- a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '11' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -11,13 +15,13 @@ channel_targets: cuda_compiler: - nvcc cuda_compiler_version: -- '11.2' +- '11.8' cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.2 +- quay.io/condaforge/linux-anvil-cuda:11.8 gflags: - '2.2' libblas: @@ -35,6 +39,8 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython.yaml b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython.yaml similarity index 77% rename from .ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython.yaml index ad1df86..a6554c2 100644 --- a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '11' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -11,13 +15,13 @@ channel_targets: cuda_compiler: - nvcc cuda_compiler_version: -- '11.2' +- '11.8' cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.2 +- quay.io/condaforge/linux-anvil-cuda:11.8 gflags: - '2.2' libblas: @@ -35,6 +39,8 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython.yaml b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.10.____cpython.yaml similarity index 75% rename from .ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.10.____cpython.yaml index a7d2bb1..57f23b9 100644 --- a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.10.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -9,15 +13,15 @@ channel_sources: channel_targets: - conda-forge main cuda_compiler: -- nvcc +- cuda-nvcc cuda_compiler_version: -- '11.2' +- '12.0' cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '12' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.2 +- quay.io/condaforge/linux-anvil-cos7-x86_64 gflags: - '2.2' libblas: @@ -35,6 +39,8 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.11.____cpython.yaml b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.11.____cpython.yaml similarity index 75% rename from .ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.11.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.11.____cpython.yaml index b1d657e..e216df4 100644 --- a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.11.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.11.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -9,15 +13,15 @@ channel_sources: channel_targets: - conda-forge main cuda_compiler: -- nvcc +- cuda-nvcc cuda_compiler_version: -- '11.1' +- '12.0' cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '12' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.1 +- quay.io/condaforge/linux-anvil-cos7-x86_64 gflags: - '2.2' libblas: @@ -35,6 +39,8 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.12.____cpython.yaml b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.12.____cpython.yaml new file mode 100644 index 0000000..6be8e5a --- /dev/null +++ b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.12.____cpython.yaml @@ -0,0 +1,46 @@ +c_compiler: +- gcc +c_compiler_version: +- '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cuda_compiler: +- cuda-nvcc +cuda_compiler_version: +- '12.0' +cxx_compiler: +- gxx +cxx_compiler_version: +- '12' +docker_image: +- quay.io/condaforge/linux-anvil-cos7-x86_64 +gflags: +- '2.2' +libblas: +- 3.9 *netlib +liblapack: +- 3.9 *netlib +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.12.* *_cpython +target_platform: +- linux-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version + - c_stdlib_version + - cdt_name + - cuda_compiler + - cuda_compiler_version + - docker_image diff --git a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.8.____cpython.yaml b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.8.____cpython.yaml similarity index 75% rename from .ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.8.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.8.____cpython.yaml index 2b1839e..07d0080 100644 --- a/.ci_support/linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.8.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.8.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -9,15 +13,15 @@ channel_sources: channel_targets: - conda-forge main cuda_compiler: -- nvcc +- cuda-nvcc cuda_compiler_version: -- '11.1' +- '12.0' cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '12' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.1 +- quay.io/condaforge/linux-anvil-cos7-x86_64 gflags: - '2.2' libblas: @@ -35,6 +39,8 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.9.____cpython.yaml b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.9.____cpython.yaml similarity index 75% rename from .ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.9.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.9.____cpython.yaml index a3ddacf..4ea4a3d 100644 --- a/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.9.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.9.____cpython.yaml @@ -1,7 +1,11 @@ c_compiler: - gcc c_compiler_version: -- '9' +- '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos7 channel_sources: @@ -9,15 +13,15 @@ channel_sources: channel_targets: - conda-forge main cuda_compiler: -- nvcc +- cuda-nvcc cuda_compiler_version: -- '11.0' +- '12.0' cxx_compiler: - gxx cxx_compiler_version: -- '9' +- '12' docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.0 +- quay.io/condaforge/linux-anvil-cos7-x86_64 gflags: - '2.2' libblas: @@ -35,6 +39,8 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version - - cuda_compiler_version + - c_stdlib_version - cdt_name + - cuda_compiler + - cuda_compiler_version - docker_image diff --git a/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.10.____cpython.yaml b/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.10.____cpython.yaml deleted file mode 100644 index eb175a8..0000000 --- a/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.10.____cpython.yaml +++ /dev/null @@ -1,40 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '7' -cdt_name: -- cos6 -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- nvcc -cuda_compiler_version: -- '10.2' -cxx_compiler: -- gxx -cxx_compiler_version: -- '7' -docker_image: -- quay.io/condaforge/linux-anvil-cos7-cuda:10.2 -gflags: -- '2.2' -libblas: -- 3.9 *netlib -liblapack: -- 3.9 *netlib -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - cuda_compiler_version - - cdt_name - - docker_image diff --git a/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.11.____cpython.yaml b/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.11.____cpython.yaml deleted file mode 100644 index f7fbdab..0000000 --- a/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.11.____cpython.yaml +++ /dev/null @@ -1,40 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '7' -cdt_name: -- cos6 -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- nvcc -cuda_compiler_version: -- '10.2' -cxx_compiler: -- gxx -cxx_compiler_version: -- '7' -docker_image: -- quay.io/condaforge/linux-anvil-cos7-cuda:10.2 -gflags: -- '2.2' -libblas: -- 3.9 *netlib -liblapack: -- 3.9 *netlib -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.11.* *_cpython -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - cuda_compiler_version - - cdt_name - - docker_image diff --git a/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.8.____cpython.yaml b/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.8.____cpython.yaml deleted file mode 100644 index c4f0e64..0000000 --- a/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.8.____cpython.yaml +++ /dev/null @@ -1,40 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '7' -cdt_name: -- cos6 -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- nvcc -cuda_compiler_version: -- '10.2' -cxx_compiler: -- gxx -cxx_compiler_version: -- '7' -docker_image: -- quay.io/condaforge/linux-anvil-cos7-cuda:10.2 -gflags: -- '2.2' -libblas: -- 3.9 *netlib -liblapack: -- 3.9 *netlib -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.8.* *_cpython -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - cuda_compiler_version - - cdt_name - - docker_image diff --git a/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.9.____cpython.yaml b/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.9.____cpython.yaml deleted file mode 100644 index ac690c8..0000000 --- a/.ci_support/linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.9.____cpython.yaml +++ /dev/null @@ -1,40 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '7' -cdt_name: -- cos6 -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- nvcc -cuda_compiler_version: -- '10.2' -cxx_compiler: -- gxx -cxx_compiler_version: -- '7' -docker_image: -- quay.io/condaforge/linux-anvil-cos7-cuda:10.2 -gflags: -- '2.2' -libblas: -- 3.9 *netlib -liblapack: -- 3.9 *netlib -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.9.* *_cpython -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - cuda_compiler_version - - cdt_name - - docker_image diff --git a/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.10.____cpython.yaml b/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.10.____cpython.yaml deleted file mode 100644 index 7e115f9..0000000 --- a/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.10.____cpython.yaml +++ /dev/null @@ -1,40 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '9' -cdt_name: -- cos7 -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- nvcc -cuda_compiler_version: -- '11.0' -cxx_compiler: -- gxx -cxx_compiler_version: -- '9' -docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.0 -gflags: -- '2.2' -libblas: -- 3.9 *netlib -liblapack: -- 3.9 *netlib -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - cuda_compiler_version - - cdt_name - - docker_image diff --git a/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.11.____cpython.yaml b/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.11.____cpython.yaml deleted file mode 100644 index 21af623..0000000 --- a/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.11.____cpython.yaml +++ /dev/null @@ -1,40 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '9' -cdt_name: -- cos7 -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- nvcc -cuda_compiler_version: -- '11.0' -cxx_compiler: -- gxx -cxx_compiler_version: -- '9' -docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.0 -gflags: -- '2.2' -libblas: -- 3.9 *netlib -liblapack: -- 3.9 *netlib -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.11.* *_cpython -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - cuda_compiler_version - - cdt_name - - docker_image diff --git a/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.8.____cpython.yaml b/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.8.____cpython.yaml deleted file mode 100644 index 65ad9ac..0000000 --- a/.ci_support/linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.8.____cpython.yaml +++ /dev/null @@ -1,40 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '9' -cdt_name: -- cos7 -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- nvcc -cuda_compiler_version: -- '11.0' -cxx_compiler: -- gxx -cxx_compiler_version: -- '9' -docker_image: -- quay.io/condaforge/linux-anvil-cuda:11.0 -gflags: -- '2.2' -libblas: -- 3.9 *netlib -liblapack: -- 3.9 *netlib -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.8.* *_cpython -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - cuda_compiler_version - - cdt_name - - docker_image diff --git a/.ci_support/migrations/cuda120.yaml b/.ci_support/migrations/cuda120.yaml new file mode 100644 index 0000000..9f23a0b --- /dev/null +++ b/.ci_support/migrations/cuda120.yaml @@ -0,0 +1,106 @@ +migrator_ts: 1682985063 +__migrator: + kind: + version + migration_number: + 3 + build_number: + 1 + paused: false + override_cbc_keys: + - cuda_compiler_stub + operation: key_add + check_solvable: false + primary_key: cuda_compiler_version + ordering: + cxx_compiler_version: + - 9 + - 8 + - 7 + c_compiler_version: + - 9 + - 8 + - 7 + fortran_compiler_version: + - 9 + - 8 + - 7 + docker_image: + - quay.io/condaforge/linux-anvil-comp7 # [os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-aarch64 # [os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] + - quay.io/condaforge/linux-anvil-ppc64le # [os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] + - quay.io/condaforge/linux-anvil-armv7l # [os.environ.get("BUILD_PLATFORM") == "linux-armv7l"] + - quay.io/condaforge/linux-anvil-cuda:9.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-cuda:10.0 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-cuda:10.1 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-cuda:10.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-cuda:11.0 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-cuda:11.1 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + + # case: CUDA 11.2 + - quay.io/condaforge/linux-anvil-cuda:11.2 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + # case: native compilation (build == target) + - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.2 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] + - quay.io/condaforge/linux-anvil-aarch64-cuda:11.2 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] + # case: cross-compilation (build != target) + - quay.io/condaforge/linux-anvil-cuda:11.2 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-cuda:11.2 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + + # case: CUDA 11.8 + - quay.io/condaforge/linux-anvil-cuda:11.8 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + # case: native compilation (build == target) + - quay.io/condaforge/linux-anvil-ppc64le-cuda:11.8 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] + - quay.io/condaforge/linux-anvil-aarch64-cuda:11.8 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] + # case: cross-compilation (build != target) + - quay.io/condaforge/linux-anvil-cuda:11.8 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-cuda:11.8 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + + # case: non-CUDA builds + - quay.io/condaforge/linux-anvil-cos7-x86_64 # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + cuda_compiler_version: + - None + - 10.2 # [(linux64 or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 11.0 # [(linux64 or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 11.1 # [(linux64 or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 11.2 # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 11.8 # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12.0 # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + commit_message: | + Rebuild for CUDA 12 w/arch + Windows support + + The transition to CUDA 12 SDK includes new packages for all CUDA libraries and + build tools. Notably, the cudatoolkit package no longer exists, and packages + should depend directly on the specific CUDA libraries (libcublas, libcusolver, + etc) as needed. For an in-depth overview of the changes and to report problems + [see this issue]( https://github.com/conda-forge/conda-forge.github.io/issues/1963 ). + Please feel free to raise any issues encountered there. Thank you! :pray: + +cuda_compiler: # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - cuda-nvcc # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +cuda_compiler_version: # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12.0 # [(linux or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +c_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +cxx_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +fortran_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +c_stdlib_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 2.17 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +cdt_name: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - cos7 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +docker_image: # [os.environ.get("BUILD_PLATFORM", "").startswith("linux-") and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 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"] + # case: native compilation (build == target) + - quay.io/condaforge/linux-anvil-ppc64le # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-ppc64le"] + - quay.io/condaforge/linux-anvil-aarch64 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-aarch64"] + # case: cross-compilation (build != target) + - quay.io/condaforge/linux-anvil-cos7-x86_64 # [ppc64le and os.environ.get("BUILD_PLATFORM") == "linux-64"] + - quay.io/condaforge/linux-anvil-cos7-x86_64 # [aarch64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] diff --git a/.ci_support/migrations/python311.yaml b/.ci_support/migrations/python311.yaml deleted file mode 100644 index e4c79db..0000000 --- a/.ci_support/migrations/python311.yaml +++ /dev/null @@ -1,37 +0,0 @@ -migrator_ts: 1666686085 -__migrator: - migration_number: 1 - operation: key_add - primary_key: python - ordering: - python: - - 3.6.* *_cpython - - 3.7.* *_cpython - - 3.8.* *_cpython - - 3.9.* *_cpython - - 3.10.* *_cpython - - 3.11.* *_cpython # new entry - - 3.6.* *_73_pypy - - 3.7.* *_73_pypy - - 3.8.* *_73_pypy - - 3.9.* *_73_pypy - paused: false - longterm: True - pr_limit: 60 - max_solver_attempts: 10 # this will make the bot retry "not solvable" stuff 10 times - exclude: - # this shouldn't attempt to modify the python feedstocks - - python - - pypy3.6 - - pypy-meta - - cross-python - - python_abi - exclude_pinned_pkgs: false - -python: - - 3.11.* *_cpython -# additional entries to add for zip_keys -numpy: - - 1.23 -python_impl: - - cpython diff --git a/.circleci/config.yml b/.circleci/config.yml index 3e61aa2..8b4ef2f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,6 +1,6 @@ # This file was generated automatically from conda-smithy. To update this configuration, # update the conda-forge.yml and/or the recipe/meta.yaml. -# -*- mode: yaml -*- +# -*- mode: jinja-yaml -*- version: 2 diff --git a/.gitattributes b/.gitattributes index 7f32763..18f114a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -20,8 +20,8 @@ bld.bat text eol=crlf .travis.yml linguist-generated=true .scripts/* linguist-generated=true .woodpecker.yml linguist-generated=true -LICENSE.txt linguist-generated=true -README.md linguist-generated=true +/LICENSE.txt linguist-generated=true +/README.md linguist-generated=true azure-pipelines.yml linguist-generated=true build-locally.py linguist-generated=true shippable.yml linguist-generated=true diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 6093398..f24cd77 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1 +1 @@ -* @h-vetinari \ No newline at end of file +* @DavidMChan @h-vetinari \ No newline at end of file diff --git a/.gitignore b/.gitignore index c89ecb7..179afe5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,24 @@ -*.pyc +# User content belongs under recipe/. +# Feedstock configuration goes in `conda-forge.yml` +# Everything else is managed by the conda-smithy rerender process. +# Please do not modify + +# Ignore all files and folders in root +* +!/conda-forge.yml + +# Don't ignore any files/folders if the parent folder is 'un-ignored' +# This also avoids warnings when adding an already-checked file with an ignored parent. +!/**/ +# Don't ignore any files/folders recursively in the following folders +!/recipe/** +!/.ci_support/** -build_artifacts +# Since we ignore files/folders recursively, any folders inside +# build_artifacts gets ignored which trips some build systems. +# To avoid that we 'un-ignore' all files/folders recursively +# and only ignore the root build_artifacts folder. +!/build_artifacts/** +/build_artifacts + +*.pyc diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index 595f8b5..6c805a9 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -28,14 +28,15 @@ conda-build: pkgs_dirs: - ${FEEDSTOCK_ROOT}/build_artifacts/pkg_cache - /opt/conda/pkgs +solver: libmamba CONDARC +export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 - -mamba install --update-specs --yes --quiet --channel conda-forge \ - conda-build pip boa conda-forge-ci-setup=3 -mamba update --update-specs --yes --quiet --channel conda-forge \ - conda-build pip boa conda-forge-ci-setup=3 +mamba install --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" +mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" @@ -64,9 +65,16 @@ if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then # Drop into an interactive shell /bin/bash else - conda mambabuild "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + conda-build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ --suppress-variables ${EXTRA_CB_OPTIONS:-} \ - --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" + --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" \ + --extra-meta flow_run_id="${flow_run_id:-}" remote_url="${remote_url:-}" sha="${sha:-}" + ( startgroup "Inspecting artifacts" ) 2> /dev/null + + # inspect_artifacts was only added in conda-forge-ci-setup 4.6.0 + command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts || echo "inspect_artifacts needs conda-forge-ci-setup >=4.6.0" + + ( endgroup "Inspecting artifacts" ) 2> /dev/null ( startgroup "Validating outputs" ) 2> /dev/null validate_recipe_outputs "${FEEDSTOCK_NAME}" diff --git a/.scripts/logging_utils.sh b/.scripts/logging_utils.sh index 57bc95c..aff009f 100644 --- a/.scripts/logging_utils.sh +++ b/.scripts/logging_utils.sh @@ -12,7 +12,7 @@ function startgroup { echo "##[group]$1";; travis ) echo "$1" - echo -en 'travis_fold:start:'"${1// /}"'\\r';; + echo -en 'travis_fold:start:'"${1// /}"'\r';; github_actions ) echo "::group::$1";; * ) @@ -28,7 +28,7 @@ function endgroup { azure ) echo "##[endgroup]";; travis ) - echo -en 'travis_fold:end:'"${1// /}"'\\r';; + echo -en 'travis_fold:end:'"${1// /}"'\r';; github_actions ) echo "::endgroup::";; esac diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index 9236239..00f377a 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -21,6 +21,12 @@ if [ -z ${FEEDSTOCK_NAME} ]; then export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT}) fi +if [[ "${sha:-}" == "" ]]; then + pushd "${FEEDSTOCK_ROOT}" + sha=$(git rev-parse HEAD) + popd +fi + docker info # In order for the conda-build process in the container to write to the mounted @@ -91,6 +97,9 @@ docker run ${DOCKER_RUN_ARGS} \ -e CPU_COUNT \ -e BUILD_WITH_CONDA_DEBUG \ -e BUILD_OUTPUT_ID \ + -e flow_run_id \ + -e remote_url \ + -e sha \ -e BINSTAR_TOKEN \ -e FEEDSTOCK_TOKEN \ -e STAGING_BINSTAR_TOKEN \ diff --git a/README.md b/README.md index 7faa9db..6791312 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ -About tsnecuda -============== +About tsnecuda-feedstock +======================== + +Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/tsnecuda-feedstock/blob/main/LICENSE.txt) Home: https://github.com/CannyLab/tsne-cuda Package license: BSD-3-Clause AND MIT -Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/tsnecuda-feedstock/blob/main/LICENSE.txt) - Summary: GPU Accelerated t-SNE for CUDA with Python bindings Development: https://github.com/CannyLab/tsne-cuda @@ -29,115 +29,73 @@ Current build status - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + @@ -221,7 +179,7 @@ available continuous integration services. Thanks to the awesome service provide [CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/), [Drone](https://cloud.drone.io/welcome), and [TravisCI](https://travis-ci.com/) it is possible to build and upload installable packages to the -[conda-forge](https://anaconda.org/conda-forge) [Anaconda-Cloud](https://anaconda.org/) +[conda-forge](https://anaconda.org/conda-forge) [anaconda.org](https://anaconda.org/) channel for Linux, Windows and OSX respectively. To manage the continuous integration and simplify feedstock maintenance @@ -269,5 +227,6 @@ In order to produce a uniquely identifiable distribution: Feedstock Maintainers ===================== +* [@DavidMChan](https://github.com/DavidMChan/) * [@h-vetinari](https://github.com/h-vetinari/) diff --git a/build-locally.py b/build-locally.py index 3f4b7a7..d78427b 100755 --- a/build-locally.py +++ b/build-locally.py @@ -3,11 +3,11 @@ # This file has been generated by conda-smithy in order to build the recipe # locally. # -import os import glob +import os +import platform import subprocess from argparse import ArgumentParser -import platform def setup_environment(ns): @@ -64,8 +64,9 @@ def verify_config(ns): elif ns.config.startswith("osx"): if "OSX_SDK_DIR" not in os.environ: raise RuntimeError( - "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=SDKs' " - "to download the SDK automatically to 'SDKs/MacOSX.sdk'. " + "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=$PWD/SDKs' " + "to download the SDK automatically to '$PWD/SDKs/MacOSX.sdk'. " + "Note: OSX_SDK_DIR must be set to an absolute path. " "Setting this variable implies agreement to the licensing terms of the SDK by Apple." ) diff --git a/recipe/build.sh b/recipe/build.sh index 0c1d7aa..9822c08 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -1,54 +1,11 @@ #!/bin/bash - set -ex -# function for facilitate version comparison; cf. https://stackoverflow.com/a/37939589 -function version2int { echo "$@" | awk -F. '{ printf("%d%02d\n", $1, $2); }'; } - -# adapted from https://github.com/conda-forge/faiss-split-feedstock/blob/master/recipe/build-lib.sh -declare -a CUDA_CONFIG_ARGS - -# the following are all the x86-relevant gpu arches; for building aarch64-packages, add: 53, 62, 72 -ARCHES=(52 60 61 70) -# cuda 11.0 deprecates arches 35, 50 -DEPRECATED_IN_11=(35 50) -if [ $(version2int $cuda_compiler_version) -ge $(version2int "11.1") ]; then - # Ampere support for GeForce 30 (sm_86) needs cuda >= 11.1 - LATEST_ARCH=86 - # ARCHES does not contain LATEST_ARCH; see usage below - ARCHES=( "${ARCHES[@]}" 75 80 ) -elif [ $(version2int $cuda_compiler_version) -ge $(version2int "11.0") ]; then - # Ampere support for A100 (sm_80) needs cuda >= 11.0 - LATEST_ARCH=80 - ARCHES=( "${ARCHES[@]}" 75 ) -elif [ $(version2int $cuda_compiler_version) -ge $(version2int "10.0") ]; then - # Turing support (sm_75) needs cuda >= 10.0 - LATEST_ARCH=75 - ARCHES=( "${DEPRECATED_IN_11[@]}" "${ARCHES[@]}" ) +if [[ ${cuda_compiler_version} == 11.8 ]]; then + export CMAKE_CUDA_ARCHS="53-real;62-real;72-real;75-real;80-real;86-real;89" +elif [[ ${cuda_compiler_version} == 12.0 ]]; then + export CMAKE_CUDA_ARCHS="53-real;62-real;72-real;75-real;80-real;86-real;89-real;90" fi -for arch in "${ARCHES[@]}"; do - CMAKE_CUDA_ARCHS="${CMAKE_CUDA_ARCHS+${CMAKE_CUDA_ARCHS};}${arch}-real" -done -# for -real vs. -virtual, see cmake.org/cmake/help/latest/prop_tgt/CUDA_ARCHITECTURES.html -# this is to support PTX JIT compilation; see first link above or cf. -# devblogs.nvidia.com/cuda-pro-tip-understand-fat-binaries-jit-caching -CMAKE_CUDA_ARCHS="${CMAKE_CUDA_ARCHS+${CMAKE_CUDA_ARCHS};}${LATEST_ARCH}" - -CUDA_CONFIG_ARGS+=( - -DCMAKE_CUDA_ARCHITECTURES="${CMAKE_CUDA_ARCHS}" -) -# cmake does not generate output for the call below; echo some info -echo "Set up extra cmake-args: CUDA_CONFIG_ARGS=${CUDA_CONFIG_ARGS+"${CUDA_CONFIG_ARGS[@]}"}" - -# Acc. to https://cmake.org/cmake/help/v3.19/module/FindCUDAToolkit.html#search-behavior -# CUDA toolkit is search relative to `nvcc` first before considering -# "-DCUDAToolkit_ROOT=${CUDA_HOME}". We have multiple workarounds: -# - Add symlinks from ${CUDA_HOME} to ${BUILD_PREFIX} -# - Add ${CUDA_HOME}/bin to ${PATH} -# - Remove `nvcc` wrapper in ${BUILD_PREFIX} so that `nvcc` from ${CUDA_HOME} gets found. -# TODO: Fix this in nvcc-feedstock or cmake-feedstock. -# NOTE: It's okay for us to not use the wrapper since CMake adds -ccbin itself. -rm "${BUILD_PREFIX}/bin/nvcc" # workaround for cmake-vs-nvcc: make sure we pick up the our own c-compiler ln -s $BUILD_PREFIX/bin/x86_64-conda-linux-gnu-cc $BUILD_PREFIX/bin/gcc @@ -59,7 +16,8 @@ mkdir build cd build cmake \ - ${CUDA_CONFIG_ARGS+"${CUDA_CONFIG_ARGS[@]}"} \ + ${CMAKE_ARGS} \ + -DCMAKE_CUDA_ARCHITECTURES="${CMAKE_CUDA_ARCHS}" \ .. # compile diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml deleted file mode 100644 index b3e5335..0000000 --- a/recipe/conda_build_config.yaml +++ /dev/null @@ -1,5 +0,0 @@ -# CUDA 10.2 doesn't support GCC 9 -c_compiler_version: # [linux] - - 7 # [linux] -cxx_compiler_version: # [linux] - - 7 # [linux] diff --git a/recipe/meta.yaml b/recipe/meta.yaml index aa48be8..dc63861 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,10 @@ -{% set version = "3.0.1" %} +{% set version = "3.0.2" %} + +{% if cuda_compiler_version != "None" %} +{% set cuda_major = environ.get("cuda_compiler_version", "11.8").split(".")[0] | int %} +{% else %} +{% set cuda_major = 0 %} +{% endif %} package: name: tsnecuda @@ -6,7 +12,7 @@ package: source: - url: https://github.com/CannyLab/tsne-cuda/archive/refs/tags/{{ version }}.tar.gz - sha256: 0f778247191f483df22dc4dbed792c9a6a9152ee7404329c4d9da3fd9a8774d6 + sha256: 02a6b6d5367f0e0658a9362aa8bbc7b043af74d64a56ac849c640c57f8d22bf0 # include submodule (not in github tarball due to dear-github/dear-github#214), c.f. # https://github.com/CannyLab/tsne-cuda/tree/{{ version }}/third_party - git_url: https://github.com/jarro2783/cxxopts.git @@ -15,7 +21,7 @@ source: build: - number: 1 + number: 0 # only linux for the moment skip: true # [not linux] skip: true # [cuda_compiler_version == "None"] @@ -23,6 +29,7 @@ build: requirements: build: + - {{ stdlib('c') }} - {{ compiler('c') }} - {{ compiler('cxx') }} - {{ compiler('cuda') }} @@ -37,10 +44,16 @@ requirements: - gmock - libblas - liblapack - - libfaiss =1.7.1=*_cuda + - libfaiss + {% if cuda_major >= 12 %} + - cuda-version {{ cuda_compiler_version }} + - libcublas-dev + - libcufft-dev + - libcusolver-dev + - libcusparse-dev + {% endif %} run: - python - - libfaiss =1.7.1=*_cuda - numpy # despite building with cppzmq, conda wants zeromq here - zeromq @@ -64,3 +77,4 @@ about: extra: recipe-maintainers: - h-vetinari + - DavidMChan
VariantStatus
linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.10.____cpython - - variant - -
linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.11.____cpython - - variant - -
linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.8.____cpython - - variant - -
linux_64_c_compiler_version10cuda_compiler_version11.1cxx_compiler_version10python3.9.____cpython - - variant - -
linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython - - variant - -
linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython - - variant - -
linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.8.____cpythonlinux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython - variant + variant
linux_64_c_compiler_version10cuda_compiler_version11.2cxx_compiler_version10python3.9.____cpythonlinux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython - variant + variant
linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.10.____cpythonlinux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.12.____cpython - variant + variant
linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.11.____cpythonlinux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython - variant + variant
linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.8.____cpythonlinux_64_c_compiler_version11cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython - variant + variant
linux_64_c_compiler_version7cuda_compiler_version10.2cxx_compiler_version7python3.9.____cpythonlinux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.10.____cpython - variant + variant
linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.10.____cpythonlinux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.11.____cpython - variant + variant
linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.11.____cpythonlinux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.12.____cpython - variant + variant
linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.8.____cpythonlinux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.8.____cpython - variant + variant
linux_64_c_compiler_version9cuda_compiler_version11.0cxx_compiler_version9python3.9.____cpythonlinux_64_c_compiler_version12cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version12python3.9.____cpython - variant + variant