diff --git a/.ci_support/linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml b/.ci_support/linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml deleted file mode 100644 index 678aad40a..000000000 --- a/.ci_support/linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml +++ /dev/null @@ -1,83 +0,0 @@ -blas_impl: -- generic -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '12.9' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -fmt: -- '12.1' -github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -nccl: -- '2' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml b/.ci_support/linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml deleted file mode 100644 index 044a8db93..000000000 --- a/.ci_support/linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml +++ /dev/null @@ -1,83 +0,0 @@ -blas_impl: -- generic -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -fmt: -- '12.1' -github_actions_labels: -- cirun-openstack-cpu-xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -nccl: -- '2' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/linux_64_blas_implgenericc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml b/.ci_support/linux_64_blas_implgenericc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml deleted file mode 100644 index d4366e2c5..000000000 --- a/.ci_support/linux_64_blas_implgenericc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml +++ /dev/null @@ -1,83 +0,0 @@ -blas_impl: -- generic -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.28' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '13.0' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -fmt: -- '12.1' -github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -nccl: -- '2' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml b/.ci_support/linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml deleted file mode 100644 index 8d064f2f9..000000000 --- a/.ci_support/linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml +++ /dev/null @@ -1,83 +0,0 @@ -blas_impl: -- mkl -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '12.9' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -fmt: -- '12.1' -github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -nccl: -- '2' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml b/.ci_support/linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml deleted file mode 100644 index 212853208..000000000 --- a/.ci_support/linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml +++ /dev/null @@ -1,83 +0,0 @@ -blas_impl: -- mkl -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -fmt: -- '12.1' -github_actions_labels: -- cirun-openstack-cpu-xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -nccl: -- '2' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/linux_64_blas_implmklc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml b/.ci_support/linux_64_blas_implmklc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml deleted file mode 100644 index d343c5ca6..000000000 --- a/.ci_support/linux_64_blas_implmklc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml +++ /dev/null @@ -1,83 +0,0 @@ -blas_impl: -- mkl -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.28' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '13.0' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -fmt: -- '12.1' -github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -nccl: -- '2' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/linux_aarch64_c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml b/.ci_support/linux_aarch64_arm_variant_typetegrac_compiler_version14c_stdlib_version2.34channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14github_actions_labelscirun-openstack-_hd0d7d72e.yaml similarity index 93% rename from .ci_support/linux_aarch64_c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml rename to .ci_support/linux_aarch64_arm_variant_typetegrac_compiler_version14c_stdlib_version2.34channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14github_actions_labelscirun-openstack-_hd0d7d72e.yaml index 867dca74d..3cfef60be 100644 --- a/.ci_support/linux_aarch64_c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml +++ b/.ci_support/linux_aarch64_arm_variant_typetegrac_compiler_version14c_stdlib_version2.34channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14github_actions_labelscirun-openstack-_hd0d7d72e.yaml @@ -1,13 +1,15 @@ +arm_variant_type: +- tegra blas_impl: - generic c_compiler: - gcc c_compiler_version: -- '13' +- '14' c_stdlib: - sysroot c_stdlib_version: -- '2.17' +- '2.34' channel_sources: - conda-forge channel_targets: @@ -19,7 +21,7 @@ cuda_compiler_version: cxx_compiler: - gxx cxx_compiler_version: -- '13' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 fmt: @@ -75,6 +77,7 @@ zip_keys: - cxx_compiler_version - c_stdlib_version - cuda_compiler_version + - arm_variant_type - - channel_targets - is_rc zlib: diff --git a/.ci_support/linux_aarch64_c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml b/.ci_support/linux_aarch64_c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml deleted file mode 100644 index 8c4549dee..000000000 --- a/.ci_support/linux_aarch64_c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml +++ /dev/null @@ -1,81 +0,0 @@ -blas_impl: -- generic -c_compiler: -- gcc -c_compiler_version: -- '13' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cxx_compiler: -- gxx -cxx_compiler_version: -- '13' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -fmt: -- '12.1' -github_actions_labels: -- cirun-openstack-cpu-xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -mkl: -- '2025' -nccl: -- '2' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/linux_aarch64_c_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml b/.ci_support/linux_aarch64_c_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml deleted file mode 100644 index 0f7536a75..000000000 --- a/.ci_support/linux_aarch64_c_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml +++ /dev/null @@ -1,81 +0,0 @@ -blas_impl: -- generic -c_compiler: -- gcc -c_compiler_version: -- '13' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.28' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '13.0' -cxx_compiler: -- gxx -cxx_compiler_version: -- '13' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -fmt: -- '12.1' -github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -mkl: -- '2025' -nccl: -- '2' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/migrations/arm_variant_type.yaml b/.ci_support/migrations/arm_variant_type.yaml new file mode 100644 index 000000000..675b6165d --- /dev/null +++ b/.ci_support/migrations/arm_variant_type.yaml @@ -0,0 +1,77 @@ +# time stamped to be the day before the CUDA 11.8 migrator +migrator_ts: 2145852000 # 2037-12-31 +__migrator: + # this migration should not be unpaused! + # It's intended to be copied on an as-needed basis to feedstocks that want to support tegra + paused: true + operation: key_add + migration_number: + 1 + build_number: + 1 + override_cbc_keys: + - cuda_compiler_stub + check_solvable: false + primary_key: cuda_compiler_version + ordering: + arm_variant_type: + - None + - sbsa + - tegra + additional_zip_keys: # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - arm_variant_type # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + wait_for_migrators: + - cuda129 + - aarch64 and ppc64le addition + commit_message: |2 + Build for NVIDIA Tegra devices and CUDA 12.9 + + This migration adds `arm_variant_type=tegra` to the build matrix to support NVIDIA Tegra + devices compatible with CUDA 12.9. This migrator is only applicable to the `linux-aarch4` + platform because Tegra is specific to that architecture. Non-Tegra ARM + devices are assumed to be SBSA-compliant (Server Base System Architecture). The + default value of `arm_variant_type` is `sbsa` or it is undefined for non-ARM platforms. + Tegra devices compatible with CUDA 13.0 are SBSA-compliant, and do not need a separate + build. Only Orin (sm_87) and later devices are supported because earlier Tegra devices are + not supported by CUDA 12.9. + + In addition to this migrator, the `arm-variant` package must be added to the build + requirements of the recipe in order to constrain the CUDA compiler to the correct variant. + + ```yaml + # A fake selector may be needed for conda-build to pick up arm_variant_type as a variant + # [arm_variant_type] + + requirements: + build: + - {{ compiler('cuda') }} + - arm-variant * {{ arm_variant_type }} # [linux and aarch64 and cuda_compiler_version != "None"] + ``` + + For v1 recipes, the work-around looks as follows: + ```yaml + context: + # ensure arm_variant_type gets detected as a used variable + touch_arm_variant_type: ${{ arm_variant_type }} + ``` + + Please read the conda-forge CUDA recipe guide for more information: + https://github.com/conda-forge/cuda-feedstock/blob/main/recipe/doc/recipe_guide.md#building-for-arm-tegra-devices + +c_compiler_version: # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +cxx_compiler_version: # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +fortran_compiler_version: # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +cuda_compiler_version: # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12.9 # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +c_stdlib_version: # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 2.34 # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +arm_variant_type: # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - tegra # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] diff --git a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalse.yaml b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalse.yaml deleted file mode 100644 index 23c377e7c..000000000 --- a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalse.yaml +++ /dev/null @@ -1,85 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '14.5' -blas_impl: -- generic -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cxx_compiler: -- clangxx -cxx_compiler_version: -- '19' -fmt: -- '12.1' -github_actions_labels: -- cirun-macos-m4-large -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -llvm_openmp: -- '19' -macos_machine: -- x86_64-apple-darwin13.4.0 -mkl: -- '2023' -mkl_devel: -- '2023' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- osx-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalse.yaml b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalse.yaml deleted file mode 100644 index 66803600b..000000000 --- a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalse.yaml +++ /dev/null @@ -1,85 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '14.5' -blas_impl: -- mkl -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cxx_compiler: -- clangxx -cxx_compiler_version: -- '19' -fmt: -- '12.1' -github_actions_labels: -- cirun-macos-m4-large -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -llvm_openmp: -- '19' -macos_machine: -- x86_64-apple-darwin13.4.0 -mkl: -- '2023' -mkl_devel: -- '2023' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- osx-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalse.yaml b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalse.yaml deleted file mode 100644 index b996332a5..000000000 --- a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalse.yaml +++ /dev/null @@ -1,83 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '14.5' -blas_impl: -- generic -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cxx_compiler: -- clangxx -cxx_compiler_version: -- '19' -fmt: -- '12.1' -github_actions_labels: -- cirun-macos-m4-large -is_rc: -- 'False' -libabseil: -- '20260107' -libblas: -- 3.9.* *netlib -libcblas: -- 3.9.* *netlib -libcudnn_dev: -- '9' -liblapack: -- 3.9.* *netlib -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -llvm_openmp: -- '19' -macos_machine: -- arm64-apple-darwin20.0.0 -mkl: -- '2023' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- osx-arm64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - channel_targets - - is_rc -zlib: -- '1' 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.8is_rcFalse.yaml deleted file mode 100644 index 0ffaf8e5d..000000000 --- a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.8is_rcFalse.yaml +++ /dev/null @@ -1,65 +0,0 @@ -blas_impl: -- mkl -c_compiler: -- vs2022 -c_stdlib: -- vs -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '12.8' -cxx_compiler: -- vs2022 -fmt: -- '12.1' -github_actions_labels: -- cirun-azure-windows-4xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libcudnn_dev: -- '9' -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -magma: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- win-64 -zip_keys: -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version13.0is_rcFalse.yaml b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version13.0is_rcFalse.yaml deleted file mode 100644 index 877732d54..000000000 --- a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version13.0is_rcFalse.yaml +++ /dev/null @@ -1,65 +0,0 @@ -blas_impl: -- mkl -c_compiler: -- vs2022 -c_stdlib: -- vs -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '13.0' -cxx_compiler: -- vs2022 -fmt: -- '12.1' -github_actions_labels: -- cirun-azure-windows-4xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libcudnn_dev: -- '9' -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -magma: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- win-64 -zip_keys: -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse.yaml b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse.yaml deleted file mode 100644 index a16593749..000000000 --- a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse.yaml +++ /dev/null @@ -1,65 +0,0 @@ -blas_impl: -- mkl -c_compiler: -- vs2022 -c_stdlib: -- vs -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cxx_compiler: -- vs2022 -fmt: -- '12.1' -github_actions_labels: -- cirun-azure-windows-4xlarge -is_rc: -- 'False' -libabseil: -- '20260107' -libcudnn_dev: -- '9' -libmagma_devel: -- '2.9' -libmagma_sparse: -- '2.9' -libprotobuf: -- 6.33.5 -libtorch: -- '2.9' -magma: -- '2.9' -mkl: -- '2025' -mkl_devel: -- '2025' -numpy: -- '2' -orc: -- 2.2.2 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -pybind11_abi: -- '11' -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -- 3.14.* *_cp314 -pytorch: -- '2.9' -target_platform: -- win-64 -zip_keys: -- - channel_targets - - is_rc -zlib: -- '1' diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 72bac5665..d15529ada 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -21,100 +21,17 @@ jobs: fail-fast: false matrix: include: - - CONFIG: linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse - SHORT_CONFIG: linux_64_blas_implgenericc_stdlib_versio_h404bdc8f + - CONFIG: linux_aarch64_arm_variant_typetegrac_compiler_version14c_stdlib_version2.34channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14github_actions_labelscirun-openstack-_hd0d7d72e + SHORT_CONFIG: linux_aarch64_arm_variant_typetegrac_com_hd0d7d72e UPLOAD_PACKAGES: True os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_64_blas_implgenericc_stdlib_versio_h404bdc8f', 'linux', 'x64', 'self-hosted'] + runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_arm_variant_typetegrac_com_hd0d7d72e', 'linux', 'x64', 'self-hosted'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse - SHORT_CONFIG: linux_64_blas_implgenericc_stdlib_versio_hf19b8591 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_64_blas_implgenericc_stdlib_versio_hf19b8591', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - - CONFIG: linux_64_blas_implgenericc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse - SHORT_CONFIG: linux_64_blas_implgenericc_stdlib_versio_h139667b8 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_64_blas_implgenericc_stdlib_versio_h139667b8', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse - SHORT_CONFIG: linux_64_blas_implmklc_stdlib_version2.1_hcfd1fbb5 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_64_blas_implmklc_stdlib_version2.1_hcfd1fbb5', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse - SHORT_CONFIG: linux_64_blas_implmklc_stdlib_version2.1_h2c83be21 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_64_blas_implmklc_stdlib_version2.1_h2c83be21', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - - CONFIG: linux_64_blas_implmklc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse - SHORT_CONFIG: linux_64_blas_implmklc_stdlib_version2.2_ha4aa5d9c - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_64_blas_implmklc_stdlib_version2.2_ha4aa5d9c', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: linux_aarch64_c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse - SHORT_CONFIG: linux_aarch64_c_stdlib_version2.17channe_h7b39afa9 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_c_stdlib_version2.17channe_h7b39afa9', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: linux_aarch64_c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse - SHORT_CONFIG: linux_aarch64_c_stdlib_version2.17channe_hbde90b87 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_aarch64_c_stdlib_version2.17channe_hbde90b87', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - - CONFIG: linux_aarch64_c_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse - SHORT_CONFIG: linux_aarch64_c_stdlib_version2.28channe_h4c53fe26 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_c_stdlib_version2.28channe_h4c53fe26', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - CONDA_FORGE_DOCKER_RUN_ARGS: "--gpus all" - - CONFIG: osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalse - SHORT_CONFIG: osx_64_blas_implgenericchannel_targetsco_h709642d7 - UPLOAD_PACKAGES: True - os: macos - runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_64_blas_implgenericchannel_targetsco_h709642d7', 'macOS', 'arm64', 'self-hosted'] - - CONFIG: osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalse - SHORT_CONFIG: osx_64_blas_implmklchannel_targetsconda-_h747b3c68 - UPLOAD_PACKAGES: True - os: macos - runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_64_blas_implmklchannel_targetsconda-_h747b3c68', 'macOS', 'arm64', 'self-hosted'] - - CONFIG: osx_arm64_channel_targetsconda-forge_mainis_rcFalse - SHORT_CONFIG: osx_arm64_channel_targetsconda-forge_mai_h5f57e26b - UPLOAD_PACKAGES: True - os: macos - runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_arm64_channel_targetsconda-forge_mai_h5f57e26b', 'macOS', 'arm64', 'self-hosted'] - - CONFIG: win_64_channel_targetsconda-forge_maincuda_compiler_version12.8is_rcFalse - SHORT_CONFIG: win_64_channel_targetsconda-forge_maincu_hca575dce - 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'] - - CONFIG: win_64_channel_targetsconda-forge_maincuda_compiler_version13.0is_rcFalse - SHORT_CONFIG: win_64_channel_targetsconda-forge_maincu_h28fca69f - UPLOAD_PACKAGES: True - os: windows - runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_maincu_h28fca69f', '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 - os: windows - runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_maincu_hc68ac914', 'windows', 'x64', 'self-hosted'] steps: - name: Checkout code - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Build on Linux id: build-linux @@ -281,7 +198,7 @@ jobs: fi - name: Store conda build artifacts - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 if: ${{ always() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.BLD_ARTIFACT_NAME }} @@ -290,7 +207,7 @@ jobs: continue-on-error: true - name: Store conda build environment artifacts - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 # only relevant if build failed, see above if: ${{ always() && steps.determine-status.outputs.status == 'failure' && steps.prepare-artifacts.outcome == 'success' }} with: diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh deleted file mode 100755 index bac7141a9..000000000 --- a/.scripts/run_osx_build.sh +++ /dev/null @@ -1,139 +0,0 @@ -#!/usr/bin/env bash - -# -*- mode: jinja-shell -*- - -source .scripts/logging_utils.sh - -set -xe - -MINIFORGE_HOME="${MINIFORGE_HOME:-${HOME}/miniforge3}" -MINIFORGE_HOME="${MINIFORGE_HOME%/}" # remove trailing slash -export CONDA_BLD_PATH="${CONDA_BLD_PATH:-${MINIFORGE_HOME}/conda-bld}" - -( startgroup "Provisioning base env with micromamba" ) 2> /dev/null -MICROMAMBA_VERSION="1.5.10-0" -if [[ "$(uname -m)" == "arm64" ]]; then - osx_arch="osx-arm64" -else - osx_arch="osx-64" -fi -MICROMAMBA_URL="https://github.com/mamba-org/micromamba-releases/releases/download/${MICROMAMBA_VERSION}/micromamba-${osx_arch}" -MAMBA_ROOT_PREFIX="${MINIFORGE_HOME}-micromamba-$(date +%s)" -echo "Downloading micromamba ${MICROMAMBA_VERSION}" -micromamba_exe="$(mktemp -d)/micromamba" -curl -L -o "${micromamba_exe}" "${MICROMAMBA_URL}" -chmod +x "${micromamba_exe}" -echo "Creating environment" -"${micromamba_exe}" create --yes --root-prefix "${MAMBA_ROOT_PREFIX}" --prefix "${MINIFORGE_HOME}" \ - --channel conda-forge \ - pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" -echo "Moving pkgs cache from ${MAMBA_ROOT_PREFIX} to ${MINIFORGE_HOME}" -mv "${MAMBA_ROOT_PREFIX}/pkgs" "${MINIFORGE_HOME}" -echo "Cleaning up micromamba" -rm -rf "${MAMBA_ROOT_PREFIX}" "${micromamba_exe}" || true -( endgroup "Provisioning base env with micromamba" ) 2> /dev/null - -( startgroup "Configuring conda" ) 2> /dev/null -echo "Activating environment" -source "${MINIFORGE_HOME}/etc/profile.d/conda.sh" -conda activate base -export CONDA_SOLVER="libmamba" -export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 - - - - - -echo -e "\n\nSetting up the condarc and mangling the compiler." -setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml - -if [[ "${CI:-}" != "" ]]; then - mangle_compiler ./ ./recipe .ci_support/${CONFIG}.yaml -fi - -if [[ "${CI:-}" != "" ]]; then - echo -e "\n\nMangling homebrew in the CI to avoid conflicts." - /usr/bin/sudo mangle_homebrew - /usr/bin/sudo -k -else - echo -e "\n\nNot mangling homebrew as we are not running in CI" -fi - -if [[ "${sha:-}" == "" ]]; then - sha=$(git rev-parse HEAD) -fi - -if [[ "${OSX_SDK_DIR:-}" == "" ]]; then - if [[ "${CI:-}" == "" ]]; then - echo "Please set OSX_SDK_DIR to a directory where SDKs can be downloaded to. Aborting" - exit 1 - else - export OSX_SDK_DIR=/opt/conda-sdks - /usr/bin/sudo mkdir -p "${OSX_SDK_DIR}" - /usr/bin/sudo chown "${USER}" "${OSX_SDK_DIR}" - fi -else - if tmpf=$(mktemp -p "$OSX_SDK_DIR" tmp.XXXXXXXX 2>/dev/null); then - rm -f "$tmpf" - echo "OSX_SDK_DIR is writeable without sudo, continuing" - else - echo "User-provided OSX_SDK_DIR is not writeable for current user! Aborting" - exit 1 - fi -fi - -echo -e "\n\nRunning the build setup script." -source run_conda_forge_build_setup - - - -( endgroup "Configuring conda" ) 2> /dev/null - -echo -e "\n\nMaking the build clobber file" -make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml - -if [[ -f LICENSE.txt ]]; then - cp LICENSE.txt "recipe/recipe-scripts-license.txt" -fi - -if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then - if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then - EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" - fi - conda debug ./recipe -m ./.ci_support/${CONFIG}.yaml \ - ${EXTRA_CB_OPTIONS:-} \ - --clobber-file ./.ci_support/clobber_${CONFIG}.yaml - - # Drop into an interactive shell - /bin/bash -else - - if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]]; then - EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" - fi - - conda-build ./recipe -m ./.ci_support/${CONFIG}.yaml \ - --suppress-variables ${EXTRA_CB_OPTIONS:-} \ - --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.9.4 - command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir ./recipe -m ./.ci_support/${CONFIG}.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" - - ( endgroup "Inspecting artifacts" ) 2> /dev/null - ( startgroup "Validating outputs" ) 2> /dev/null - - validate_recipe_outputs "${FEEDSTOCK_NAME}" - - ( endgroup "Validating outputs" ) 2> /dev/null - - ( startgroup "Uploading packages" ) 2> /dev/null - - if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then - upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" ./ ./recipe ./.ci_support/${CONFIG}.yaml - fi - - ( endgroup "Uploading packages" ) 2> /dev/null -fi diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat deleted file mode 100755 index 27c552b1a..000000000 --- a/.scripts/run_win_build.bat +++ /dev/null @@ -1,151 +0,0 @@ -:: PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here -:: will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent -:: changes to this script, consider a proposal to conda-smithy so that other feedstocks can also -:: benefit from the improvement. - -:: INPUTS (required environment variables) -:: CONFIG: name of the .ci_support/*.yaml file for this job -:: CI: azure, github_actions, or unset -:: MINIFORGE_HOME: where to install the base conda environment -:: UPLOAD_PACKAGES: true or false -:: UPLOAD_ON_BRANCH: true or false - -setlocal enableextensions enabledelayedexpansion - -FOR %%A IN ("%~dp0.") DO SET "REPO_ROOT=%%~dpA" -if "%MINIFORGE_HOME%"=="" set "MINIFORGE_HOME=%USERPROFILE%\Miniforge3" -:: Remove trailing backslash, if present -if "%MINIFORGE_HOME:~-1%"=="\" set "MINIFORGE_HOME=%MINIFORGE_HOME:~0,-1%" -call :start_group "Provisioning base env with micromamba" -set "MAMBA_ROOT_PREFIX=%MINIFORGE_HOME%-micromamba-%RANDOM%" -set "MICROMAMBA_VERSION=1.5.10-0" -set "MICROMAMBA_URL=https://github.com/mamba-org/micromamba-releases/releases/download/%MICROMAMBA_VERSION%/micromamba-win-64" -set "MICROMAMBA_TMPDIR=%TMP%\micromamba-%RANDOM%" -set "MICROMAMBA_EXE=%MICROMAMBA_TMPDIR%\micromamba.exe" - -echo Downloading micromamba %MICROMAMBA_VERSION% -if not exist "%MICROMAMBA_TMPDIR%" mkdir "%MICROMAMBA_TMPDIR%" -powershell -ExecutionPolicy Bypass -Command "(New-Object Net.WebClient).DownloadFile('%MICROMAMBA_URL%', '%MICROMAMBA_EXE%')" -if !errorlevel! neq 0 exit /b !errorlevel! - -echo Creating environment -call "%MICROMAMBA_EXE%" create --yes --root-prefix "%MAMBA_ROOT_PREFIX%" --prefix "%MINIFORGE_HOME%" ^ - --channel conda-forge ^ - pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" -if !errorlevel! neq 0 exit /b !errorlevel! -echo Removing %MAMBA_ROOT_PREFIX% -del /S /Q "%MAMBA_ROOT_PREFIX%" >nul -del /S /Q "%MICROMAMBA_TMPDIR%" >nul -call :end_group - -call :start_group "Configuring conda" - -:: Activate the base conda environment -echo Activating environment -call "%MINIFORGE_HOME%\Scripts\activate.bat" -:: Configure the solver -set "CONDA_SOLVER=libmamba" -if !errorlevel! neq 0 exit /b !errorlevel! -set "CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1" - -:: Set basic configuration -echo Setting up configuration -setup_conda_rc .\ ".\recipe" .\.ci_support\%CONFIG%.yaml -if !errorlevel! neq 0 exit /b !errorlevel! -echo Running build setup -CALL run_conda_forge_build_setup - - -if !errorlevel! neq 0 exit /b !errorlevel! - -if EXIST LICENSE.txt ( - echo Copying feedstock license - copy LICENSE.txt "recipe\\recipe-scripts-license.txt" -) -if NOT [%HOST_PLATFORM%] == [%BUILD_PLATFORM%] ( - if [%CROSSCOMPILING_EMULATOR%] == [] ( - set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --no-test" - ) -) - -if NOT [%flow_run_id%] == [] ( - set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --extra-meta flow_run_id=%flow_run_id% remote_url=%remote_url% sha=%sha%" -) - -call :end_group - -:: Build the recipe -echo Building recipe -conda-build.exe "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% -if !errorlevel! neq 0 exit /b !errorlevel! - -call :start_group "Inspecting artifacts" -:: inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 -WHERE inspect_artifacts >nul 2>nul && inspect_artifacts --recipe-dir ".\recipe" -m .ci_support\%CONFIG%.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" -call :end_group - -:: Prepare some environment variables for the upload step -if /i "%CI%" == "github_actions" ( - set "FEEDSTOCK_NAME=%GITHUB_REPOSITORY:*/=%" - set "GIT_BRANCH=%GITHUB_REF:refs/heads/=%" - if /i "%GITHUB_EVENT_NAME%" == "pull_request" ( - set "IS_PR_BUILD=True" - ) else ( - set "IS_PR_BUILD=False" - ) - set "TEMP=%RUNNER_TEMP%" -) -if /i "%CI%" == "azure" ( - set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" - set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" - if /i "%BUILD_REASON%" == "PullRequest" ( - set "IS_PR_BUILD=True" - ) else ( - set "IS_PR_BUILD=False" - ) - set "TEMP=%UPLOAD_TEMP%" -) - -:: Validate -call :start_group "Validating outputs" -validate_recipe_outputs "%FEEDSTOCK_NAME%" -if !errorlevel! neq 0 exit /b !errorlevel! -call :end_group - -if /i "%UPLOAD_PACKAGES%" == "true" ( - if /i "%IS_PR_BUILD%" == "false" ( - call :start_group "Uploading packages" - if not exist "%TEMP%\" md "%TEMP%" - set "TMP=%TEMP%" - upload_package --validate --feedstock-name="%FEEDSTOCK_NAME%" .\ ".\recipe" .ci_support\%CONFIG%.yaml - if !errorlevel! neq 0 exit /b !errorlevel! - call :end_group - ) -) - -exit - -:: Logging subroutines - -:start_group -if /i "%CI%" == "github_actions" ( - echo ::group::%~1 - exit /b -) -if /i "%CI%" == "azure" ( - echo ##[group]%~1 - exit /b -) -echo %~1 -exit /b - -:end_group -if /i "%CI%" == "github_actions" ( - echo ::endgroup:: - exit /b -) -if /i "%CI%" == "azure" ( - echo ##[endgroup] - exit /b -) -exit /b diff --git a/LICENSE.txt b/LICENSE.txt index 2ec51d75f..c5aa738f1 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,6 +1,5 @@ BSD-3-Clause license -Copyright (c) 2015-2022, conda-forge contributors -All rights reserved. +Copyright (c) 2015-2026, conda-forge contributors Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/README.md b/README.md index 84e94ab74..9f0c4fca1 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,6 @@ Current release info | --- | --- | --- | --- | | [![Conda Recipe](https://img.shields.io/badge/recipe-libtorch-green.svg)](https://anaconda.org/conda-forge/libtorch) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/libtorch.svg)](https://anaconda.org/conda-forge/libtorch) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/libtorch.svg)](https://anaconda.org/conda-forge/libtorch) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/libtorch.svg)](https://anaconda.org/conda-forge/libtorch) | | [![Conda Recipe](https://img.shields.io/badge/recipe-pytorch-green.svg)](https://anaconda.org/conda-forge/pytorch) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/pytorch.svg)](https://anaconda.org/conda-forge/pytorch) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/pytorch.svg)](https://anaconda.org/conda-forge/pytorch) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/pytorch.svg)](https://anaconda.org/conda-forge/pytorch) | -| [![Conda Recipe](https://img.shields.io/badge/recipe-pytorch--cpu-green.svg)](https://anaconda.org/conda-forge/pytorch-cpu) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/pytorch-cpu.svg)](https://anaconda.org/conda-forge/pytorch-cpu) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/pytorch-cpu.svg)](https://anaconda.org/conda-forge/pytorch-cpu) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/pytorch-cpu.svg)](https://anaconda.org/conda-forge/pytorch-cpu) | | [![Conda Recipe](https://img.shields.io/badge/recipe-pytorch--gpu-green.svg)](https://anaconda.org/conda-forge/pytorch-gpu) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/pytorch-gpu.svg)](https://anaconda.org/conda-forge/pytorch-gpu) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/pytorch-gpu.svg)](https://anaconda.org/conda-forge/pytorch-gpu) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/pytorch-gpu.svg)](https://anaconda.org/conda-forge/pytorch-gpu) | | [![Conda Recipe](https://img.shields.io/badge/recipe-pytorch--tests-green.svg)](https://anaconda.org/conda-forge/pytorch-tests) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/pytorch-tests.svg)](https://anaconda.org/conda-forge/pytorch-tests) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/pytorch-tests.svg)](https://anaconda.org/conda-forge/pytorch-tests) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/pytorch-tests.svg)](https://anaconda.org/conda-forge/pytorch-tests) | @@ -47,16 +46,16 @@ conda config --add channels conda-forge conda config --set channel_priority strict ``` -Once the `conda-forge` channel has been enabled, `libtorch, pytorch, pytorch-cpu, pytorch-gpu, pytorch-tests` can be installed with `conda`: +Once the `conda-forge` channel has been enabled, `libtorch, pytorch, pytorch-gpu, pytorch-tests` can be installed with `conda`: ``` -conda install libtorch pytorch pytorch-cpu pytorch-gpu pytorch-tests +conda install libtorch pytorch pytorch-gpu pytorch-tests ``` or with `mamba`: ``` -mamba install libtorch pytorch pytorch-cpu pytorch-gpu pytorch-tests +mamba install libtorch pytorch pytorch-gpu pytorch-tests ``` It is possible to list all of the versions of `libtorch` available on your platform with `conda`: diff --git a/build-locally.py b/build-locally.py index 9dfe44039..825a4aff9 100755 --- a/build-locally.py +++ b/build-locally.py @@ -1,5 +1,6 @@ #!/bin/sh """exec" "python3" "$0" "$@" #""" # fmt: off # fmt: on + # # This file has been generated by conda-smithy in order to build the recipe # locally. diff --git a/recipe/build.sh b/recipe/build.sh index ca502d559..e0dd6ce79 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -203,7 +203,11 @@ elif [[ ${cuda_compiler_version} != "None" ]]; then CUDA_TARGET=x86_64-linux ;; linux-aarch64) - CUDA_TARGET=sbsa-linux + if [[ "${arm_variant_type}" == "tegra" ]]; then + CUDA_TARGET=aarch64-linux + else + CUDA_TARGET=sbsa-linux + fi ;; *) echo "unknown CUDA arch, edit build.sh" @@ -225,19 +229,23 @@ elif [[ ${cuda_compiler_version} != "None" ]]; then # See: # https://pytorch.org/docs/stable/cpp_extension.html (Compute capabilities) # https://github.com/pytorch/pytorch/blob/main/.ci/manywheel/build_cuda.sh - case ${cuda_compiler_version} in - 12.[89]) - export TORCH_CUDA_ARCH_LIST="5.0;6.0;7.0;7.5;8.0;8.6;9.0;10.0;12.0+PTX" - ;; - 13.0) - export TORCH_CUDA_ARCH_LIST="7.5;8.0;8.6;9.0;10.0;11.0;12.0+PTX" - # c.f. https://github.com/pytorch/pytorch/pull/161316 - export TORCH_NVCC_FLAGS="$TORCH_NVCC_FLAGS -compress-mode=size" - ;; - *) - echo "No CUDA architecture list exists for CUDA v${cuda_compiler_version}. See build.sh for information on adding one." - exit 1 - esac + if [[ "${arm_variant_type}" == "tegra" ]]; then + export TORCH_CUDA_ARCH_LIST="8.7;10.1+PTX" + else + case ${cuda_compiler_version} in + 12.[89]) + export TORCH_CUDA_ARCH_LIST="5.0;6.0;7.0;7.5;8.0;8.6;9.0;10.0;12.0+PTX" + ;; + 13.0) + export TORCH_CUDA_ARCH_LIST="7.5;8.0;8.6;9.0;10.0;11.0;12.0+PTX" + # c.f. https://github.com/pytorch/pytorch/pull/161316 + export TORCH_NVCC_FLAGS="$TORCH_NVCC_FLAGS -compress-mode=size" + ;; + *) + echo "No CUDA architecture list exists for CUDA v${cuda_compiler_version}. See build.sh for information on adding one." + exit 1 + esac + fi export NCCL_ROOT_DIR=$PREFIX export NCCL_INCLUDE_DIR=$PREFIX/include diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 857659cba..2ace7e5bb 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -56,6 +56,8 @@ source: - patches/0015-Use-Intel-LLVM-openmp.patch # continued $PREFIX/include headers - patches/0016-Fix-TorchConfig.cmake.in-to-account-for-different-in.patch + # backport https://github.com/pytorch/pytorch/pull/174647 + - patches/0017-Fix-ICE-in-GCC-14-with-arm.patch - patches_submodules/tensorpipe/0001-switch-away-from-find_package-CUDA.patch build: @@ -76,6 +78,7 @@ build: {% if (cuda_compiler_version == "None" and "gpu" in github_actions_labels) or (cuda_compiler_version != "None" and "cpu" in github_actions_labels) %} skip: true {% endif %} + skip: true # [not (aarch64 and cuda_compiler_version != "None" and arm_variant_type == "tegra")] string: cuda{{ cuda_compiler_version | replace('.', '') }}_{{ blas_impl }}_h{{ PKG_HASH }}_{{ build }} # [cuda_compiler_version != "None"] string: cpu_{{ blas_impl }}_h{{ PKG_HASH }}_{{ build }} # [cuda_compiler_version == "None"] detect_binary_files_with_prefix: false @@ -105,6 +108,7 @@ requirements: - {{ compiler('c') }} - {{ compiler('cxx') }} - {{ compiler('cuda') }} # [cuda_compiler_version != "None"] + - arm-variant * {{ arm_variant_type }} # [linux and aarch64 and cuda_compiler_version != "None"] - libuv # [win] - llvm-openmp - cmake @@ -164,6 +168,8 @@ requirements: - pkg-config # [unix] - typing_extensions - pybind11 + # see https://github.com/pytorch/pytorch/pull/175115 + - pybind11 <3.0.2 - pybind11-abi - eigen - zlib @@ -253,6 +259,7 @@ outputs: - {{ compiler('c') }} - {{ compiler('cxx') }} - {{ compiler('cuda') }} # [cuda_compiler_version != "None"] + - arm-variant * {{ arm_variant_type }} # [linux and aarch64 and cuda_compiler_version != "None"] - cmake - ninja # Keep libprotobuf here so that a compatibile version @@ -304,6 +311,8 @@ outputs: - libprotobuf - llvm-openmp - pybind11 + # see https://github.com/pytorch/pytorch/pull/175115 + - pybind11 <3.0.2 - pybind11-abi - eigen - sleef @@ -329,6 +338,8 @@ outputs: - networkx - optree >=0.13.0 - pybind11 + # https://github.com/pytorch/pytorch/pull/175115 + - pybind11 <3.0.2 - setuptools - sympy >=1.13.3 - typing_extensions >=4.10.0 @@ -346,6 +357,7 @@ outputs: detect_binary_files_with_prefix: false requirements: host: + - arm-variant * {{ arm_variant_type }} # [linux and aarch64 and cuda_compiler_version != "None"] - python run: - pytorch {{ version }} cuda*_{{ blas_impl }}_py{{ CONDA_PY }}*{{ build }} # [cuda_compiler_version != "None"] @@ -380,7 +392,6 @@ outputs: - cmake - cuda-nvrtc-dev # [cuda_compiler_version != "None"] - nvtx-c # [cuda_compiler_version != "None"] - - pybind11 # not required upstream, but useful - pytest-timeout imports: @@ -566,6 +577,8 @@ outputs: string: cpu_{{ blas_impl }}_h{{ PKG_HASH }}_{{ build }} # [cuda_compiler_version == "None"] detect_binary_files_with_prefix: false requirements: + host: + - arm-variant * {{ arm_variant_type }} # [linux and aarch64 and cuda_compiler_version != "None"] run: - pytorch {{ version }} cuda*_{{ blas_impl }}*{{ build }} # [cuda_compiler_version != "None"] - pytorch {{ version }} cpu_{{ blas_impl }}*{{ build }} # [cuda_compiler_version == "None"] diff --git a/recipe/patches/0017-Fix-ICE-in-GCC-14-with-arm.patch b/recipe/patches/0017-Fix-ICE-in-GCC-14-with-arm.patch new file mode 100644 index 000000000..b8d60f4d8 --- /dev/null +++ b/recipe/patches/0017-Fix-ICE-in-GCC-14-with-arm.patch @@ -0,0 +1,53 @@ +From 8fd509399e25cb4b265dff663d3f777406001f2e Mon Sep 17 00:00:00 2001 +From: Nikita Shulga <2453524+malfet@users.noreply.github.com> +Date: Tue, 10 Feb 2026 04:35:39 +0000 +Subject: [PATCH 17/17] Fix ICE in GCC 14 with arm + +Updated preprocessor directive for GCC version check and removed BF16 condition. I.e. right now SVE256 compilation with gcc-14.2 on Debian13 for ` -march=armv8-a+sve+bf16` + +Without the fix, compilation fails with +``` +In file included from /home/dev/git/pytorch/pytorch/build/aten/src/ATen/native/cpu/Unfold2d.cpp.SVE256.cpp:1: +/home/dev/git/pytorch/pytorch/aten/src/ATen/native/cpu/Unfold2d.cpp: In function 'void at::native::{anonymous}::unfolded2d_acc_kernel(c10::ScalarType, void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, bool)': +/home/dev/git/pytorch/pytorch/aten/src/ATen/native/cpu/Unfold2d.cpp:225:1: error: unrecognizable insn: + 225 | } + | ^ +(insn 1371 1370 1372 101 (set (reg:VNx16BI 3235) + (unspec:VNx16BI [ + (reg:VNx16BI 3232) + (reg:VNx8BI 3234) + (const_vector:VNx4BI [ + (const_int 0 [0]) repeated x8 + ]) + ] UNSPEC_TRN1_CONV)) "/home/dev/git/pytorch/pytorch/torch/headeronly/util/bit_cast.h":40:14 -1 + (nil)) +during RTL pass: vregs +/home/dev/git/pytorch/pytorch/aten/src/ATen/native/cpu/Unfold2d.cpp:225:1: internal compiler error: in extract_insn, at recog.cc:2812 +``` + +Not sure what compelled me to put such a narrow restriction in https://github.com/pytorch/pytorch/pull/157867 + +Fixes https://github.com/pytorch/pytorch/issues/172630 + +Pull Request resolved: https://github.com/pytorch/pytorch/pull/174647 +Approved by: https://github.com/seemethere +--- + aten/src/ATen/native/cpu/Unfold2d.cpp | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/aten/src/ATen/native/cpu/Unfold2d.cpp b/aten/src/ATen/native/cpu/Unfold2d.cpp +index ed69998e99f79..9ae1391e2603e 100644 +--- a/aten/src/ATen/native/cpu/Unfold2d.cpp ++++ b/aten/src/ATen/native/cpu/Unfold2d.cpp +@@ -169,8 +169,9 @@ void unfolded2d_acc_channels_last( + + /* note: due to write issues, this one cannot be parallelized as well as + * unfolded2d_copy */ +-#if defined(__GNUC__) && __GNUC__ == 14 && defined(__ARM_FEATURE_SVE) && !defined(__ARM_FEATURE_BF16) +-// Workaround for gcc-14.2.0 ICE during RTL pass: vregs when compiling for SVE without BF16 ++#if defined(__GNUC__) && __GNUC__ == 14 && defined(__ARM_FEATURE_SVE) ++// Workaround for gcc-14.2.0 ICE during RTL pass: vregs when compiling for SVE ++// NS: With or without BF16, see https://github.com/pytorch/pytorch/issues/172630 + __attribute__((optimize("no-tree-vectorize"))) + #endif + void unfolded2d_acc_kernel(