diff --git a/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse.yaml b/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml similarity index 100% rename from .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse.yaml rename to .ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml diff --git a/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9is_rcFalse.yaml b/.ci_support/linux_aarch64_c_compiler_version14channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14is_rcFalse.yaml similarity index 98% rename from .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9is_rcFalse.yaml rename to .ci_support/linux_aarch64_c_compiler_version14channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14is_rcFalse.yaml index daaf79b03..a3dfa7d6f 100644 --- a/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9is_rcFalse.yaml +++ b/.ci_support/linux_aarch64_c_compiler_version14channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14is_rcFalse.yaml @@ -3,7 +3,7 @@ blas_impl: c_compiler: - gcc c_compiler_version: -- '13' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -23,7 +23,7 @@ cudnn: cxx_compiler: - gxx cxx_compiler_version: -- '13' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 github_actions_labels: diff --git a/.ci_support/migrations/cuda129.yaml b/.ci_support/migrations/cuda129.yaml index 24ef061b0..5074cd12a 100644 --- a/.ci_support/migrations/cuda129.yaml +++ b/.ci_support/migrations/cuda129.yaml @@ -7,40 +7,51 @@ __migrator: build_number: 1 paused: false - use_local: true override_cbc_keys: - cuda_compiler_stub check_solvable: false primary_key: cuda_compiler_version ordering: cuda_compiler_version: - - 11.8 - 12.4 - 12.6 - 12.8 - None - 12.9 + # to allow manual opt-in for CUDA 11.8, see + # https://github.com/conda-forge/conda-forge-pinning-feedstock/pull/7472 + # must be last due to how cuda_compiler ordering in that migrator works + - 11.8 commit_message: | Upgrade to CUDA 12.9 - With CUDA 12.9, the following new architectures are added `sm_100`, `sm_101` and `sm_120`. - To build for these architectures, maintainers will need to add these to list of architectures - that their package builds for. + CUDA 12.8 added support for architectures `sm_100`, `sm_101` and `sm_120`, + while CUDA 12.9 further added `sm_103` and `sm_121`. To build for these, + maintainers will need to modify their existing list of specified architectures + (e.g. `CMAKE_CUDA_ARCHITECTURES`, `TORCH_CUDA_ARCH_LIST`, etc.) + for their package. A good balance between broad support and storage + footprint (resp. compilation time) is to add `sm_100` and `sm_120`. + + Since CUDA 12.8, the conda-forge nvcc package now sets `CUDAARCHS` and + `TORCH_CUDA_ARCH_LIST` in its activation script to a string containing all + of the supported real architectures plus the virtual architecture of the + latest. Recipes for packages who use these variables to control their build + but do not want to build for all supported architectures will need to override + these variables in their build script. ref: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#new-features cuda_compiler_version: # [((linux and (x86_64 or aarch64)) or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 12.9 # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 12.8 # [win64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12.9 # [((linux and (x86_64 or aarch64)) or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +cuda_compiler_version_min: # [((linux and (x86_64 or aarch64)) or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12.9 # [((linux and (x86_64 or aarch64)) or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] -c_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 14 # [(linux and x86_64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 13 # [(linux and aarch64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] +c_compiler_version: # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] -cxx_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 14 # [(linux and x86_64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 13 # [(linux and aarch64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] +cxx_compiler_version: # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] -fortran_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 14 # [(linux and x86_64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 13 # [(linux and aarch64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] +fortran_compiler_version: # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] diff --git a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.8is_rcFalse.yaml b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.9is_rcFalse.yaml similarity index 98% rename from .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.8is_rcFalse.yaml rename to .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.9is_rcFalse.yaml index 04f91077f..c7d7f078b 100644 --- a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.8is_rcFalse.yaml +++ b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.9is_rcFalse.yaml @@ -11,7 +11,7 @@ channel_targets: cuda_compiler: - cuda-nvcc cuda_compiler_version: -- '12.8' +- '12.9' cudnn: - '9' cxx_compiler: diff --git a/.gitattributes b/.gitattributes index 18f114a1f..85ccb8f4f 100644 --- a/.gitattributes +++ b/.gitattributes @@ -24,4 +24,5 @@ bld.bat text eol=crlf /README.md linguist-generated=true azure-pipelines.yml linguist-generated=true build-locally.py linguist-generated=true +pixi.toml linguist-generated=true shippable.yml linguist-generated=true diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index c7d8d001f..d9f764da2 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -49,25 +49,25 @@ jobs: runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_64_blas_implmklchannel_targetscond_h38f93959', 'linux', 'x64', 'self-hosted'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9is_rcFalse - SHORT_CONFIG: linux_aarch64_channel_targetsconda-forge_heefc8d83 + - CONFIG: linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compiler_versionNonecxx_compiler_version13is_rcFalse + SHORT_CONFIG: linux_aarch64_c_compiler_version13channe_hd91c52e4 UPLOAD_PACKAGES: True os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_channel_targetsconda-forge_heefc8d83', 'linux', 'x64', 'self-hosted'] + runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_c_compiler_version13channe_hd91c52e4', 'linux', 'x64', 'self-hosted'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse - SHORT_CONFIG: linux_aarch64_channel_targetsconda-forge_h56c2c839 + - CONFIG: linux_aarch64_c_compiler_version14channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14is_rcFalse + SHORT_CONFIG: linux_aarch64_c_compiler_version14channe_hecba00a8 UPLOAD_PACKAGES: True os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_channel_targetsconda-forge_h56c2c839', 'linux', 'x64', 'self-hosted'] + runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_c_compiler_version14channe_hecba00a8', 'linux', 'x64', 'self-hosted'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: win_64_channel_targetsconda-forge_maincuda_compiler_version12.8is_rcFalse - SHORT_CONFIG: win_64_channel_targetsconda-forge_maincu_hca575dce + - CONFIG: win_64_channel_targetsconda-forge_maincuda_compiler_version12.9is_rcFalse + SHORT_CONFIG: win_64_channel_targetsconda-forge_maincu_hda40b8c4 UPLOAD_PACKAGES: True os: windows - runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_maincu_hca575dce', 'windows', 'x64', 'self-hosted'] + runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_maincu_hda40b8c4', 'windows', 'x64', 'self-hosted'] - CONFIG: win_64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse SHORT_CONFIG: win_64_channel_targetsconda-forge_maincu_hc68ac914 UPLOAD_PACKAGES: True diff --git a/.scripts/create_conda_build_artifacts.bat b/.scripts/create_conda_build_artifacts.bat index 29c22033a..0bb6fc0bf 100755 --- a/.scripts/create_conda_build_artifacts.bat +++ b/.scripts/create_conda_build_artifacts.bat @@ -19,8 +19,6 @@ rem BLD_ARTIFACT_PATH rem ENV_ARTIFACT_NAME rem ENV_ARTIFACT_PATH -@echo on - rem Check that the conda-build directory exists if not exist %CONDA_BLD_DIR% ( echo conda-build directory does not exist diff --git a/README.md b/README.md index 300e20c36..c2d373d3f 100644 --- a/README.md +++ b/README.md @@ -65,17 +65,17 @@ Current build status