From b37e97825bdb3fce3612493fe652d1cda7e9d44b Mon Sep 17 00:00:00 2001 From: Raul Date: Mon, 11 Dec 2023 16:09:12 +0100 Subject: [PATCH] Add some missing builds (#32) * Remove incorrect skip Update build * MNT: Re-rendered with conda-build 3.28.1, conda-smithy 3.30.1, and conda-forge-pinning 2023.12.11.06.30.25 * Fix typo * Add CUDA 12 packages * Update CUDA 12 migrator * MNT: Re-rendered with conda-build 3.28.1, conda-smithy 3.30.1, and conda-forge-pinning 2023.12.11.06.30.25 * Pin torchani * Pin torchani * MNT: Re-rendered with conda-build 3.28.1, conda-smithy 3.30.1, and conda-forge-pinning 2023.12.11.06.30.25 * Add torch 2.1 migrator * Add cpp17 patch --- .azure-pipelines/azure-pipelines-linux.yml | 32 +++++++++++ ...piler_version12python3.10.____cpython.yaml | 2 +- ...piler_version12python3.11.____cpython.yaml | 2 +- ...mpiler_version12python3.8.____cpython.yaml | 2 +- ...mpiler_version12python3.9.____cpython.yaml | 2 +- ...piler_version11python3.10.____cpython.yaml | 32 +++++++++++ ...piler_version11python3.11.____cpython.yaml | 32 +++++++++++ ...mpiler_version11python3.8.____cpython.yaml | 32 +++++++++++ ...mpiler_version11python3.9.____cpython.yaml | 32 +++++++++++ ...piler_version10python3.10.____cpython.yaml | 2 +- ...piler_version10python3.11.____cpython.yaml | 2 +- ...mpiler_version10python3.8.____cpython.yaml | 2 +- ...mpiler_version10python3.9.____cpython.yaml | 2 +- ...piler_version11python3.10.____cpython.yaml | 32 +++++++++++ ...piler_version11python3.11.____cpython.yaml | 32 +++++++++++ ...mpiler_version11python3.8.____cpython.yaml | 32 +++++++++++ ...mpiler_version11python3.9.____cpython.yaml | 32 +++++++++++ .ci_support/migrations/cuda120.yaml | 10 +++- .ci_support/migrations/pytorch21.yaml | 7 +++ .../osx_64_python3.10.____cpython.yaml | 4 +- .../osx_64_python3.11.____cpython.yaml | 4 +- .ci_support/osx_64_python3.8.____cpython.yaml | 4 +- .ci_support/osx_64_python3.9.____cpython.yaml | 4 +- README.md | 56 +++++++++++++++++++ recipe/build.sh | 6 +- recipe/meta.yaml | 33 ++++++++--- recipe/patches/cpp17.patch | 38 +++++++++++++ 27 files changed, 447 insertions(+), 23 deletions(-) create mode 100644 .ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.10.____cpython.yaml create mode 100644 .ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.11.____cpython.yaml create mode 100644 .ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.8.____cpython.yaml create mode 100644 .ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.9.____cpython.yaml create mode 100644 .ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython.yaml create mode 100644 .ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython.yaml create mode 100644 .ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython.yaml create mode 100644 .ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython.yaml create mode 100644 .ci_support/migrations/pytorch21.yaml create mode 100644 recipe/patches/cpp17.patch diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index 0b33f89..634d9dd 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -24,6 +24,22 @@ jobs: CONFIG: linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.9.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.10.____cpython: + CONFIG: linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.10.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.11.____cpython: + CONFIG: linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.11.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.8.____cpython: + CONFIG: linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.8.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.9.____cpython: + CONFIG: linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.9.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython: CONFIG: linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython UPLOAD_PACKAGES: 'True' @@ -40,6 +56,22 @@ jobs: CONFIG: linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.2 + linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython: + CONFIG: linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 + linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython: + CONFIG: linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 + linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython: + CONFIG: linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 + linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython: + CONFIG: linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cuda:11.8 timeoutInMinutes: 360 steps: diff --git a/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.10.____cpython.yaml b/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.10.____cpython.yaml index c520782..9436a5a 100644 --- a/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.10.____cpython.yaml +++ b/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.10.____cpython.yaml @@ -21,7 +21,7 @@ pin_run_as_build: python: - 3.10.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.11.____cpython.yaml b/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.11.____cpython.yaml index 6ee36cc..183c0bb 100644 --- a/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.11.____cpython.yaml +++ b/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.11.____cpython.yaml @@ -21,7 +21,7 @@ pin_run_as_build: python: - 3.11.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.8.____cpython.yaml b/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.8.____cpython.yaml index b920f67..f85f9fb 100644 --- a/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.8.____cpython.yaml +++ b/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.8.____cpython.yaml @@ -21,7 +21,7 @@ pin_run_as_build: python: - 3.8.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.9.____cpython.yaml b/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.9.____cpython.yaml index b6d7b76..bba974f 100644 --- a/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.9.____cpython.yaml +++ b/.ci_support/linux_64_cuda_compilerNonecuda_compiler_versionNonecxx_compiler_version12python3.9.____cpython.yaml @@ -21,7 +21,7 @@ pin_run_as_build: python: - 3.9.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.10.____cpython.yaml b/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.10.____cpython.yaml new file mode 100644 index 0000000..f7fcb2d --- /dev/null +++ b/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.10.____cpython.yaml @@ -0,0 +1,32 @@ +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: +- '11' +docker_image: +- quay.io/condaforge/linux-anvil-cos7-x86_64 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +pytorch: +- '2.1' +target_platform: +- linux-64 +zip_keys: +- - cxx_compiler_version + - cuda_compiler + - cuda_compiler_version + - cdt_name + - docker_image diff --git a/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.11.____cpython.yaml b/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.11.____cpython.yaml new file mode 100644 index 0000000..650d97d --- /dev/null +++ b/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.11.____cpython.yaml @@ -0,0 +1,32 @@ +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: +- '11' +docker_image: +- quay.io/condaforge/linux-anvil-cos7-x86_64 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.11.* *_cpython +pytorch: +- '2.1' +target_platform: +- linux-64 +zip_keys: +- - cxx_compiler_version + - cuda_compiler + - cuda_compiler_version + - cdt_name + - docker_image diff --git a/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.8.____cpython.yaml b/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.8.____cpython.yaml new file mode 100644 index 0000000..d3949b7 --- /dev/null +++ b/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.8.____cpython.yaml @@ -0,0 +1,32 @@ +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: +- '11' +docker_image: +- quay.io/condaforge/linux-anvil-cos7-x86_64 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.8.* *_cpython +pytorch: +- '2.1' +target_platform: +- linux-64 +zip_keys: +- - cxx_compiler_version + - cuda_compiler + - cuda_compiler_version + - cdt_name + - docker_image diff --git a/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.9.____cpython.yaml b/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.9.____cpython.yaml new file mode 100644 index 0000000..7969da3 --- /dev/null +++ b/.ci_support/linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.9.____cpython.yaml @@ -0,0 +1,32 @@ +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: +- '11' +docker_image: +- quay.io/condaforge/linux-anvil-cos7-x86_64 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.9.* *_cpython +pytorch: +- '2.1' +target_platform: +- linux-64 +zip_keys: +- - cxx_compiler_version + - cuda_compiler + - cuda_compiler_version + - cdt_name + - docker_image diff --git a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython.yaml b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython.yaml index 3a060bb..1b3dae1 100644 --- a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython.yaml +++ b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython.yaml @@ -21,7 +21,7 @@ pin_run_as_build: python: - 3.10.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython.yaml b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython.yaml index ea8552b..651cb29 100644 --- a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython.yaml +++ b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.11.____cpython.yaml @@ -21,7 +21,7 @@ pin_run_as_build: python: - 3.11.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython.yaml b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython.yaml index cf64f79..6de1505 100644 --- a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython.yaml +++ b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.8.____cpython.yaml @@ -21,7 +21,7 @@ pin_run_as_build: python: - 3.8.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython.yaml b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython.yaml index 22c7d90..9a8e27d 100644 --- a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython.yaml +++ b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.9.____cpython.yaml @@ -21,7 +21,7 @@ pin_run_as_build: python: - 3.9.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython.yaml b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython.yaml new file mode 100644 index 0000000..78182fb --- /dev/null +++ b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython.yaml @@ -0,0 +1,32 @@ +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cuda_compiler: +- nvcc +cuda_compiler_version: +- '11.8' +cxx_compiler: +- gxx +cxx_compiler_version: +- '11' +docker_image: +- quay.io/condaforge/linux-anvil-cuda:11.8 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +pytorch: +- '2.1' +target_platform: +- linux-64 +zip_keys: +- - cxx_compiler_version + - cuda_compiler + - cuda_compiler_version + - cdt_name + - docker_image diff --git a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython.yaml b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython.yaml new file mode 100644 index 0000000..93fdd3f --- /dev/null +++ b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython.yaml @@ -0,0 +1,32 @@ +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cuda_compiler: +- nvcc +cuda_compiler_version: +- '11.8' +cxx_compiler: +- gxx +cxx_compiler_version: +- '11' +docker_image: +- quay.io/condaforge/linux-anvil-cuda:11.8 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.11.* *_cpython +pytorch: +- '2.1' +target_platform: +- linux-64 +zip_keys: +- - cxx_compiler_version + - cuda_compiler + - cuda_compiler_version + - cdt_name + - docker_image diff --git a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython.yaml b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython.yaml new file mode 100644 index 0000000..64613cc --- /dev/null +++ b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython.yaml @@ -0,0 +1,32 @@ +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cuda_compiler: +- nvcc +cuda_compiler_version: +- '11.8' +cxx_compiler: +- gxx +cxx_compiler_version: +- '11' +docker_image: +- quay.io/condaforge/linux-anvil-cuda:11.8 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.8.* *_cpython +pytorch: +- '2.1' +target_platform: +- linux-64 +zip_keys: +- - cxx_compiler_version + - cuda_compiler + - cuda_compiler_version + - cdt_name + - docker_image diff --git a/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython.yaml b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython.yaml new file mode 100644 index 0000000..a8e5da1 --- /dev/null +++ b/.ci_support/linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython.yaml @@ -0,0 +1,32 @@ +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cuda_compiler: +- nvcc +cuda_compiler_version: +- '11.8' +cxx_compiler: +- gxx +cxx_compiler_version: +- '11' +docker_image: +- quay.io/condaforge/linux-anvil-cuda:11.8 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.9.* *_cpython +pytorch: +- '2.1' +target_platform: +- linux-64 +zip_keys: +- - cxx_compiler_version + - cuda_compiler + - cuda_compiler_version + - cdt_name + - docker_image diff --git a/.ci_support/migrations/cuda120.yaml b/.ci_support/migrations/cuda120.yaml index abfb9cb..aa2b2a2 100644 --- a/.ci_support/migrations/cuda120.yaml +++ b/.ci_support/migrations/cuda120.yaml @@ -2,6 +2,10 @@ migrator_ts: 1682985063 __migrator: kind: version + # Vendor CUDA 12 migrator to use GCC 11. + # This is needed to workaround a pybind + GCC 12 + nvcc 12 bug + # xref: https://github.com/pybind/pybind11/issues/4606 + use_local: true migration_number: 3 build_number: @@ -69,13 +73,13 @@ cuda_compiler_version: # [(linux or win64) and os.environ.get("CF_CUDA_E - 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"] + - 11 # [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"] + - 11 # [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"] + - 11 # [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"] diff --git a/.ci_support/migrations/pytorch21.yaml b/.ci_support/migrations/pytorch21.yaml new file mode 100644 index 0000000..bb91f52 --- /dev/null +++ b/.ci_support/migrations/pytorch21.yaml @@ -0,0 +1,7 @@ +__migrator: + build_number: 1 + kind: version + migration_number: 1 +migrator_ts: 1699325293.519726 +pytorch: +- '2.1' diff --git a/.ci_support/osx_64_python3.10.____cpython.yaml b/.ci_support/osx_64_python3.10.____cpython.yaml index 57b7c20..8323780 100644 --- a/.ci_support/osx_64_python3.10.____cpython.yaml +++ b/.ci_support/osx_64_python3.10.____cpython.yaml @@ -4,6 +4,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cuda_compiler: +- None cuda_compiler_version: - None cxx_compiler: @@ -19,6 +21,6 @@ pin_run_as_build: python: - 3.10.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - osx-64 diff --git a/.ci_support/osx_64_python3.11.____cpython.yaml b/.ci_support/osx_64_python3.11.____cpython.yaml index f9b348d..18eef87 100644 --- a/.ci_support/osx_64_python3.11.____cpython.yaml +++ b/.ci_support/osx_64_python3.11.____cpython.yaml @@ -4,6 +4,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cuda_compiler: +- None cuda_compiler_version: - None cxx_compiler: @@ -19,6 +21,6 @@ pin_run_as_build: python: - 3.11.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - osx-64 diff --git a/.ci_support/osx_64_python3.8.____cpython.yaml b/.ci_support/osx_64_python3.8.____cpython.yaml index 2993b94..ddef343 100644 --- a/.ci_support/osx_64_python3.8.____cpython.yaml +++ b/.ci_support/osx_64_python3.8.____cpython.yaml @@ -4,6 +4,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cuda_compiler: +- None cuda_compiler_version: - None cxx_compiler: @@ -19,6 +21,6 @@ pin_run_as_build: python: - 3.8.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - osx-64 diff --git a/.ci_support/osx_64_python3.9.____cpython.yaml b/.ci_support/osx_64_python3.9.____cpython.yaml index a1cb2f4..7a6dd52 100644 --- a/.ci_support/osx_64_python3.9.____cpython.yaml +++ b/.ci_support/osx_64_python3.9.____cpython.yaml @@ -4,6 +4,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cuda_compiler: +- None cuda_compiler_version: - None cxx_compiler: @@ -19,6 +21,6 @@ pin_run_as_build: python: - 3.9.* *_cpython pytorch: -- '2.0' +- '2.1' target_platform: - osx-64 diff --git a/README.md b/README.md index 1c348c1..3036a1f 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,34 @@ Current build status variant + + linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.10.____cpython + + + variant + + + + linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.11.____cpython + + + variant + + + + linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.8.____cpython + + + variant + + + + linux_64_cuda_compilercuda-nvcccuda_compiler_version12.0cxx_compiler_version11python3.9.____cpython + + + variant + + linux_64_cuda_compilernvcccuda_compiler_version11.2cxx_compiler_version10python3.10.____cpython @@ -82,6 +110,34 @@ Current build status variant + + linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.10.____cpython + + + variant + + + + linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.11.____cpython + + + variant + + + + linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.8.____cpython + + + variant + + + + linux_64_cuda_compilernvcccuda_compiler_version11.8cxx_compiler_version11python3.9.____cpython + + + variant + + osx_64_python3.10.____cpython diff --git a/recipe/build.sh b/recipe/build.sh index aee55ae..3cdca37 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -5,7 +5,7 @@ set -euxo pipefail rm -rf build || true # function for facilitate version comparison; cf. https://stackoverflow.com/a/37939589 -function version2int { echo "$@" | awk -F. '{ printf("%d%02d\n", $1, $2); }'; } +function majorversion { echo "$@" | awk -F. '{ printf("%d%02d\n", $1); }'; } CMAKE_FLAGS="${CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_BUILD_TYPE=Release -DPython_EXECUTABLE=${PYTHON}" CMAKE_FLAGS+=" -DTorch_DIR=${SP_DIR}/torch/share/cmake/Torch" @@ -20,6 +20,10 @@ if [ ${cuda_compiler_version} != "None" ]; then ARCH_LIST=$(${PYTHON} -c "import torch; print(';'.join([f'{y[0]}.{y[1]}' for y in [x[3:] for x in torch._C._cuda_getArchFlags().split() if x.startswith('sm_')]]))") # CMakeLists.txt seems to ignore the CMAKE_CUDA_ARCHITECTURES variable, instead, it is overwritten by TORCH_CUDA_ARCH_LIST CMAKE_FLAGS+=" -DTORCH_CUDA_ARCH_LIST=${ARCH_LIST}" + if [ majorversion ${cuda_compiler_version} -ge 12 ]; then + # This is required because conda-forge stores cuda headers in a non standard location + export CUDA_INC_PATH=$CONDA_PREFIX/$targetsDir/include + fi else CMAKE_FLAGS+=" -DENABLE_CUDA=OFF" fi diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 44ea6f8..2614acc 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -2,6 +2,12 @@ # see github.com/conda-forge/conda-forge.github.io/issues/1059 for naming discussion {% set torch_proc_type = "cuda" if cuda_compiler_version != "None" else "cpu" %} +{% if cuda_compiler_version in (None, "None", True, False) %} +{% set cuda_major = 0 %} +{% else %} +{% set cuda_major = environ.get("cuda_compiler_version", "11.8").split(".")[0] | int %} +{% endif %} + package: name: nnpops version: {{ version }} @@ -11,13 +17,10 @@ source: sha256: d7854a3506720aa7536ce64ea9b8d621cad5c024ba4979f2156afcc88b2117a3 patches: - patches/fix-osx-lib-loading.patch # [osx] - + - patches/cpp17.patch build: skip: true # [win] - # as of pytorch 1.13, conda-forge only builds for CUDA 11.2+, see - # https://github.com/conda-forge/conda-forge-pinning-feedstock/issues/3491 - skip: true # [cuda_compiler_version not in ("None", "11.2")] - number: 4 + number: 5 rpaths: - lib/ - {{ SP_DIR }}/torch/lib @@ -38,13 +41,29 @@ requirements: - python - pytorch - pytorch =*={{ torch_proc_type }}* - - torchani + - torchani >=2.2.4 - mdtraj - pytest - cuda-version =={{ cuda_compiler_version }} # [cuda_compiler_version not in (undefined, 'None')] + {% if cuda_major >= 12 %} + - cuda-cudart-dev + # No cuda-driver-dev in windows + - cuda-driver-dev # [linux] + - libcufft-dev + - libcurand-dev + - libcublas-dev + - cuda-nvrtc-dev + - cuda-nvtx-dev + - cuda-profiler-api + - cuda-nvrtc-dev + - libcusparse-dev + - libcusolver-dev + {% endif %} run: - python - - torchani + - torchani >=2.2.4 + # cuda-version is added here to prevent the conda-forge runner to download a different version during testing, which makes it run out of memory. + - cuda-version =={{ cuda_compiler_version }} # [cuda_compiler_version != 'None'] run_constrained: # additional run constraint to the one from the (version-only) run_export; # constraining the CPU builds to CPU pytorch isn't 100% necessary, but cleaner diff --git a/recipe/patches/cpp17.patch b/recipe/patches/cpp17.patch new file mode 100644 index 0000000..6a15ea9 --- /dev/null +++ b/recipe/patches/cpp17.patch @@ -0,0 +1,38 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 89f3491..5337d4b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -32,12 +32,20 @@ set(SRC_FILES src/ani/CpuANISymmetryFunctions.cpp + # Build the library + set(LIBRARY ${NAME}PyTorch) + add_library(${LIBRARY} SHARED ${SRC_FILES}) +-set_property(TARGET ${LIBRARY} PROPERTY CXX_STANDARD 14) ++# Specify the C++ version we are building for. Latest pytorch versions require C++17 ++message(STATUS "Found Torch: ${Torch_VERSION}") ++if(${Torch_VERSION} VERSION_GREATER_EQUAL "2.1.0") ++ set(CMAKE_CXX_STANDARD 17) ++ message(STATUS "Setting C++ standard to C++17") ++else() ++ set(CMAKE_CXX_STANDARD 14) ++ message(STATUS "Setting C++ standard to C++14") ++endif() ++ + target_include_directories(${LIBRARY} PRIVATE ${Python3_INCLUDE_DIRS} + src/ani src/pytorch src/schnet) + target_link_libraries(${LIBRARY} ${TORCH_LIBRARIES} ${Python3_LIBRARIES}) + if(ENABLE_CUDA) +- set_property(TARGET ${LIBRARY} PROPERTY CUDA_STANDARD 14) + target_compile_definitions(${LIBRARY} PRIVATE ENABLE_CUDA) + endif(ENABLE_CUDA) + +@@ -51,10 +59,6 @@ endif(ENABLE_CUDA) + foreach(TEST_PATH ${TEST_PATHS}) + cmake_path(GET TEST_PATH STEM TEST_NAME) + add_executable(${TEST_NAME} ${TEST_PATH}) +- set_property(TARGET ${TEST_NAME} PROPERTY CXX_STANDARD 14) +- if(ENABLE_CUDA) +- set_property(TARGET ${TEST_NAME} PROPERTY CUDA_STANDARD 14) +- endif(ENABLE_CUDA) + target_link_libraries(${TEST_NAME} ${LIBRARY}) + add_test(${TEST_NAME} ${TEST_NAME}) + endforeach()