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_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml similarity index 86% rename from .ci_support/linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml rename to .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml index 21285320..4befa817 100644 --- 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_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml @@ -1,4 +1,5 @@ blas_impl: +- generic - mkl c_compiler: - gcc @@ -15,7 +16,7 @@ channel_targets: cuda_compiler: - cuda-nvcc cuda_compiler_version: -- None +- '12.9' cxx_compiler: - gxx cxx_compiler_version: @@ -26,8 +27,6 @@ fmt: - '12.1' github_actions_labels: - cirun-openstack-cpu-xlarge -is_rc: -- 'False' libabseil: - '20260107' libblas: @@ -40,22 +39,14 @@ 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 @@ -68,8 +59,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-64 zip_keys: @@ -77,7 +66,5 @@ zip_keys: - 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_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml similarity index 84% rename from .ci_support/linux_64_blas_implgenericc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml rename to .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml index d4366e2c..955a55fb 100644 --- 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_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml @@ -1,5 +1,6 @@ blas_impl: - generic +- mkl c_compiler: - gcc c_compiler_version: @@ -25,9 +26,7 @@ docker_image: fmt: - '12.1' github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' +- cirun-openstack-cpu-xlarge libabseil: - '20260107' libblas: @@ -40,22 +39,14 @@ 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 @@ -68,8 +59,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-64 zip_keys: @@ -77,7 +66,5 @@ zip_keys: - 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_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml similarity index 87% rename from .ci_support/linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonegithub_actions_labelscirun-openstack-cpu-xlargeis_rcFalse.yaml rename to .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml index 044a8db9..d632ea8e 100644 --- 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_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml @@ -1,5 +1,6 @@ blas_impl: - generic +- mkl c_compiler: - gcc c_compiler_version: @@ -26,8 +27,6 @@ fmt: - '12.1' github_actions_labels: - cirun-openstack-cpu-xlarge -is_rc: -- 'False' libabseil: - '20260107' libblas: @@ -40,22 +39,14 @@ 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 @@ -68,8 +59,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-64 zip_keys: @@ -77,7 +66,5 @@ zip_keys: - 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_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml b/.ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml similarity index 83% rename from .ci_support/linux_64_blas_implgenericc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml rename to .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml index 678aad40..5eae486f 100644 --- 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_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml @@ -1,5 +1,6 @@ blas_impl: - generic +- mkl c_compiler: - gcc c_compiler_version: @@ -11,7 +12,7 @@ c_stdlib_version: channel_sources: - conda-forge channel_targets: -- conda-forge main +- conda-forge pytorch_rc cuda_compiler: - cuda-nvcc cuda_compiler_version: @@ -25,9 +26,7 @@ docker_image: fmt: - '12.1' github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' +- cirun-openstack-cpu-xlarge libabseil: - '20260107' libblas: @@ -40,22 +39,14 @@ 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 @@ -68,8 +59,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-64 zip_keys: @@ -77,7 +66,5 @@ zip_keys: - 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_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml similarity index 83% rename from .ci_support/linux_64_blas_implmklc_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml rename to .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml index d343c5ca..f5fa0193 100644 --- 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_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml @@ -1,4 +1,5 @@ blas_impl: +- generic - mkl c_compiler: - gcc @@ -11,7 +12,7 @@ c_stdlib_version: channel_sources: - conda-forge channel_targets: -- conda-forge main +- conda-forge pytorch_rc cuda_compiler: - cuda-nvcc cuda_compiler_version: @@ -25,9 +26,7 @@ docker_image: fmt: - '12.1' github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' +- cirun-openstack-cpu-xlarge libabseil: - '20260107' libblas: @@ -40,22 +39,14 @@ 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 @@ -68,8 +59,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-64 zip_keys: @@ -77,7 +66,5 @@ zip_keys: - 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_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml similarity index 82% rename from .ci_support/linux_64_blas_implmklc_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9github_actions_labelscirun-openstack-gpu-2xlargeis_rcFalse.yaml rename to .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml index 8d064f2f..83398828 100644 --- 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_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml @@ -1,4 +1,5 @@ blas_impl: +- generic - mkl c_compiler: - gcc @@ -11,11 +12,11 @@ c_stdlib_version: channel_sources: - conda-forge channel_targets: -- conda-forge main +- conda-forge pytorch_rc cuda_compiler: - cuda-nvcc cuda_compiler_version: -- '12.9' +- None cxx_compiler: - gxx cxx_compiler_version: @@ -25,9 +26,7 @@ docker_image: fmt: - '12.1' github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' +- cirun-openstack-cpu-xlarge libabseil: - '20260107' libblas: @@ -40,22 +39,14 @@ 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 @@ -68,8 +59,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-64 zip_keys: @@ -77,7 +66,5 @@ zip_keys: - cxx_compiler_version - c_stdlib_version - cuda_compiler_version -- - channel_targets - - is_rc zlib: - '1' diff --git a/.ci_support/linux_aarch64_c_compiler_version14c_stdlib_version2.34channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14github_actions_labelscirun-openst_hbec9a05b.yaml b/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml similarity index 85% rename from .ci_support/linux_aarch64_c_compiler_version14c_stdlib_version2.34channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14github_actions_labelscirun-openst_hbec9a05b.yaml rename to .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml index 3cfef60b..fe7ab7f1 100644 --- a/.ci_support/linux_aarch64_c_compiler_version14c_stdlib_version2.34channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14github_actions_labelscirun-openst_hbec9a05b.yaml +++ b/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml @@ -1,14 +1,17 @@ arm_variant_type: +- sbsa - 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 @@ -18,18 +21,18 @@ cuda_compiler: - cuda-nvcc cuda_compiler_version: - '12.9' +- '12.9' cxx_compiler: - gxx cxx_compiler_version: +- '13' - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 fmt: - '12.1' github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' +- cirun-openstack-cpu-xlarge libabseil: - '20260107' libblas: @@ -42,20 +45,12 @@ 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 @@ -68,8 +63,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-aarch64 zip_keys: @@ -78,7 +71,5 @@ zip_keys: - c_stdlib_version - cuda_compiler_version - arm_variant_type -- - channel_targets - - is_rc zlib: - '1' diff --git a/.ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0cxx_compiler_version13github_actions_labelscirun-openst_h9855fad4.yaml b/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml similarity index 85% rename from .ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0cxx_compiler_version13github_actions_labelscirun-openst_h9855fad4.yaml rename to .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml index 15b37c96..f42ca77b 100644 --- a/.ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0cxx_compiler_version13github_actions_labelscirun-openst_h9855fad4.yaml +++ b/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml @@ -27,9 +27,7 @@ docker_image: fmt: - '12.1' github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' +- cirun-openstack-cpu-xlarge libabseil: - '20260107' libblas: @@ -42,20 +40,12 @@ 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 @@ -68,8 +58,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-aarch64 zip_keys: @@ -78,7 +66,5 @@ zip_keys: - c_stdlib_version - cuda_compiler_version - arm_variant_type -- - channel_targets - - is_rc zlib: - '1' diff --git a/.ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonecxx_compiler_version13github_actions_labelscirun-openst_h33a70202.yaml b/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml similarity index 88% rename from .ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonecxx_compiler_version13github_actions_labelscirun-openst_h33a70202.yaml rename to .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml index 67839521..48a3e394 100644 --- a/.ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonecxx_compiler_version13github_actions_labelscirun-openst_h33a70202.yaml +++ b/.ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml @@ -28,8 +28,6 @@ fmt: - '12.1' github_actions_labels: - cirun-openstack-cpu-xlarge -is_rc: -- 'False' libabseil: - '20260107' libblas: @@ -42,20 +40,12 @@ 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 @@ -68,8 +58,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-aarch64 zip_keys: @@ -78,7 +66,5 @@ zip_keys: - c_stdlib_version - cuda_compiler_version - arm_variant_type -- - channel_targets - - is_rc zlib: - '1' diff --git a/.ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version13github_actions_labelscirun-openst_hae63c33e.yaml b/.ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml similarity index 83% rename from .ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version13github_actions_labelscirun-openst_hae63c33e.yaml rename to .ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml index 5799f00f..921dc4a1 100644 --- a/.ci_support/linux_aarch64_c_compiler_version13c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version13github_actions_labelscirun-openst_hae63c33e.yaml +++ b/.ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml @@ -1,35 +1,38 @@ arm_variant_type: - sbsa +- 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: -- conda-forge main +- conda-forge pytorch_rc cuda_compiler: - cuda-nvcc cuda_compiler_version: - '12.9' +- '12.9' cxx_compiler: - gxx cxx_compiler_version: - '13' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 fmt: - '12.1' github_actions_labels: -- cirun-openstack-gpu-2xlarge -is_rc: -- 'False' +- cirun-openstack-cpu-xlarge libabseil: - '20260107' libblas: @@ -42,20 +45,12 @@ 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 @@ -68,8 +63,6 @@ python: - 3.12.* *_cpython - 3.13.* *_cp313 - 3.14.* *_cp314 -pytorch: -- '2.9' target_platform: - linux-aarch64 zip_keys: @@ -78,7 +71,5 @@ zip_keys: - c_stdlib_version - cuda_compiler_version - arm_variant_type -- - channel_targets - - is_rc zlib: - '1' diff --git a/.ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml b/.ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml new file mode 100644 index 00000000..2329af6a --- /dev/null +++ b/.ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml @@ -0,0 +1,70 @@ +arm_variant_type: +- sbsa +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 pytorch_rc +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-cpu-xlarge +libabseil: +- '20260107' +libblas: +- 3.9.* *netlib +libcblas: +- 3.9.* *netlib +libcudnn_dev: +- '9' +liblapack: +- 3.9.* *netlib +libmagma_devel: +- '2.9' +libprotobuf: +- 6.33.5 +nccl: +- '2' +numpy: +- '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 +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version + - c_stdlib_version + - cuda_compiler_version + - arm_variant_type +zlib: +- '1' diff --git a/.ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml b/.ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml new file mode 100644 index 00000000..ecc4260e --- /dev/null +++ b/.ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml @@ -0,0 +1,70 @@ +arm_variant_type: +- sbsa +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 pytorch_rc +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 +libabseil: +- '20260107' +libblas: +- 3.9.* *netlib +libcblas: +- 3.9.* *netlib +libcudnn_dev: +- '9' +liblapack: +- 3.9.* *netlib +libmagma_devel: +- '2.9' +libprotobuf: +- 6.33.5 +nccl: +- '2' +numpy: +- '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 +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version + - c_stdlib_version + - cuda_compiler_version + - arm_variant_type +zlib: +- '1' diff --git a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalse.yaml b/.ci_support/osx_64_channel_targetsconda-forge_main.yaml similarity index 81% rename from .ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalse.yaml rename to .ci_support/osx_64_channel_targetsconda-forge_main.yaml index 23c377e7..c6b9f6c5 100644 --- a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalse.yaml +++ b/.ci_support/osx_64_channel_targetsconda-forge_main.yaml @@ -4,6 +4,7 @@ MACOSX_SDK_VERSION: - '14.5' blas_impl: - generic +- mkl c_compiler: - clang c_compiler_version: @@ -16,8 +17,6 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cuda_compiler: -- cuda-nvcc cuda_compiler_version: - None cxx_compiler: @@ -28,38 +27,24 @@ 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 @@ -72,14 +57,10 @@ python: - 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_channel_targetsconda-forge_pytorch_rc.yaml similarity index 79% rename from .ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalse.yaml rename to .ci_support/osx_64_channel_targetsconda-forge_pytorch_rc.yaml index 66803600..aefc8773 100644 --- a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalse.yaml +++ b/.ci_support/osx_64_channel_targetsconda-forge_pytorch_rc.yaml @@ -3,6 +3,7 @@ MACOSX_DEPLOYMENT_TARGET: MACOSX_SDK_VERSION: - '14.5' blas_impl: +- generic - mkl c_compiler: - clang @@ -15,9 +16,7 @@ c_stdlib_version: channel_sources: - conda-forge channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc +- conda-forge pytorch_rc cuda_compiler_version: - None cxx_compiler: @@ -28,38 +27,24 @@ 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 @@ -72,14 +57,10 @@ python: - 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_main.yaml similarity index 81% rename from .ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalse.yaml rename to .ci_support/osx_arm64_channel_targetsconda-forge_main.yaml index b996332a..f99fd293 100644 --- a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalse.yaml +++ b/.ci_support/osx_arm64_channel_targetsconda-forge_main.yaml @@ -16,8 +16,6 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cuda_compiler: -- cuda-nvcc cuda_compiler_version: - None cxx_compiler: @@ -28,36 +26,22 @@ 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 @@ -70,14 +54,10 @@ python: - 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/osx_arm64_channel_targetsconda-forge_pytorch_rc.yaml b/.ci_support/osx_arm64_channel_targetsconda-forge_pytorch_rc.yaml new file mode 100644 index 00000000..2f29b7ea --- /dev/null +++ b/.ci_support/osx_arm64_channel_targetsconda-forge_pytorch_rc.yaml @@ -0,0 +1,63 @@ +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 pytorch_rc +cuda_compiler_version: +- None +cxx_compiler: +- clangxx +cxx_compiler_version: +- '19' +fmt: +- '12.1' +github_actions_labels: +- cirun-macos-m4-large +libabseil: +- '20260107' +libblas: +- 3.9.* *netlib +libcblas: +- 3.9.* *netlib +liblapack: +- 3.9.* *netlib +libprotobuf: +- 6.33.5 +llvm_openmp: +- '19' +macos_machine: +- arm64-apple-darwin20.0.0 +numpy: +- '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 +target_platform: +- osx-arm64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +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.8.yaml similarity index 80% 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.8.yaml index 672ee259..0218b609 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.8.yaml @@ -18,28 +18,18 @@ 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' -mkl: -- '2025' mkl_devel: - '2025' numpy: - '2' -orc: -- 2.2.2 pin_run_as_build: python: min_pin: x.x @@ -52,12 +42,7 @@ python: - 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.0.yaml similarity index 80% rename from .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version13.0is_rcFalse.yaml rename to .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml index 9ed37220..8acd5b20 100644 --- 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.0.yaml @@ -18,28 +18,18 @@ 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' -mkl: -- '2025' mkl_devel: - '2025' numpy: - '2' -orc: -- 2.2.2 pin_run_as_build: python: min_pin: x.x @@ -52,12 +42,7 @@ python: - 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_versionNone.yaml similarity index 80% rename from .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse.yaml rename to .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml index c62f537b..ff29ca50 100644 --- a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNoneis_rcFalse.yaml +++ b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml @@ -18,28 +18,18 @@ 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' -mkl: -- '2025' mkl_devel: - '2025' numpy: - '2' -orc: -- 2.2.2 pin_run_as_build: python: min_pin: x.x @@ -52,12 +42,7 @@ python: - 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_pytorch_rccuda_compiler_version12.8.yaml b/.ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8.yaml new file mode 100644 index 00000000..73854336 --- /dev/null +++ b/.ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8.yaml @@ -0,0 +1,48 @@ +blas_impl: +- mkl +c_compiler: +- vs2022 +c_stdlib: +- vs +channel_sources: +- conda-forge +channel_targets: +- conda-forge pytorch_rc +cuda_compiler: +- cuda-nvcc +cuda_compiler_version: +- '12.8' +cxx_compiler: +- vs2022 +fmt: +- '12.1' +github_actions_labels: +- cirun-azure-windows-4xlarge +libabseil: +- '20260107' +libcudnn_dev: +- '9' +libmagma_devel: +- '2.9' +libprotobuf: +- 6.33.5 +mkl_devel: +- '2025' +numpy: +- '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 +target_platform: +- win-64 +zlib: +- '1' diff --git a/.ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml b/.ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml new file mode 100644 index 00000000..b4ea15f9 --- /dev/null +++ b/.ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml @@ -0,0 +1,48 @@ +blas_impl: +- mkl +c_compiler: +- vs2022 +c_stdlib: +- vs +channel_sources: +- conda-forge +channel_targets: +- conda-forge pytorch_rc +cuda_compiler: +- cuda-nvcc +cuda_compiler_version: +- '13.0' +cxx_compiler: +- vs2022 +fmt: +- '12.1' +github_actions_labels: +- cirun-azure-windows-4xlarge +libabseil: +- '20260107' +libcudnn_dev: +- '9' +libmagma_devel: +- '2.9' +libprotobuf: +- 6.33.5 +mkl_devel: +- '2025' +numpy: +- '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 +target_platform: +- win-64 +zlib: +- '1' diff --git a/.ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml b/.ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml new file mode 100644 index 00000000..f7f80772 --- /dev/null +++ b/.ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml @@ -0,0 +1,48 @@ +blas_impl: +- mkl +c_compiler: +- vs2022 +c_stdlib: +- vs +channel_sources: +- conda-forge +channel_targets: +- conda-forge pytorch_rc +cuda_compiler: +- cuda-nvcc +cuda_compiler_version: +- None +cxx_compiler: +- vs2022 +fmt: +- '12.1' +github_actions_labels: +- cirun-azure-windows-4xlarge +libabseil: +- '20260107' +libcudnn_dev: +- '9' +libmagma_devel: +- '2.9' +libprotobuf: +- 6.33.5 +mkl_devel: +- '2025' +numpy: +- '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 +target_platform: +- win-64 +zlib: +- '1' diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 8cb8e25c..fa0dee2a 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -21,103 +21,128 @@ 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_64_channel_targetsconda-forge_maincuda_compiler_version12.9 + SHORT_CONFIG: linux_64_channel_targetsconda-forge_main_h57ac078a 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-cpu-xlarge--${{ github.run_id }}-linux_64_channel_targetsconda-forge_main_h57ac078a', '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 + - CONFIG: linux_64_channel_targetsconda-forge_maincuda_compiler_version13.0 + SHORT_CONFIG: linux_64_channel_targetsconda-forge_main_hd70cb60b 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'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_64_channel_targetsconda-forge_main_hd70cb60b', '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 + - CONFIG: linux_64_channel_targetsconda-forge_maincuda_compiler_versionNone + SHORT_CONFIG: linux_64_channel_targetsconda-forge_main_h544c6c9f 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'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_64_channel_targetsconda-forge_main_h544c6c9f', '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 + - CONFIG: linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9 + SHORT_CONFIG: linux_64_channel_targetsconda-forge_pyto_hdbf1f64d 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'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_64_channel_targetsconda-forge_pyto_hdbf1f64d', '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 + - CONFIG: linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0 + SHORT_CONFIG: linux_64_channel_targetsconda-forge_pyto_ha1394887 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'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_64_channel_targetsconda-forge_pyto_ha1394887', '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 + - CONFIG: linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone + SHORT_CONFIG: linux_64_channel_targetsconda-forge_pyto_hf9dc101d 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'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_64_channel_targetsconda-forge_pyto_hf9dc101d', '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_compiler_version13c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version13github_actions_labelscirun-openst_hae63c33e - SHORT_CONFIG: linux_aarch64_c_compiler_version13c_stdl_hae63c33e + - CONFIG: linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9 + SHORT_CONFIG: linux_aarch64_channel_targetsconda-forge_h8ce6eb54 UPLOAD_PACKAGES: True os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_c_compiler_version13c_stdl_hae63c33e', 'linux', 'x64', 'self-hosted'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_aarch64_channel_targetsconda-forge_h8ce6eb54', '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_compiler_version13c_stdlib_version2.17channel_targetsconda-forge_maincuda_compiler_versionNonecxx_compiler_version13github_actions_labelscirun-openst_h33a70202 - SHORT_CONFIG: linux_aarch64_c_compiler_version13c_stdl_h33a70202 + - CONFIG: linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0 + SHORT_CONFIG: linux_aarch64_channel_targetsconda-forge_h2aaa98fe UPLOAD_PACKAGES: True os: ubuntu - runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_aarch64_c_compiler_version13c_stdl_h33a70202', 'linux', 'x64', 'self-hosted'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_aarch64_channel_targetsconda-forge_h2aaa98fe', 'linux', 'x64', 'self-hosted'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - - CONFIG: linux_aarch64_c_compiler_version13c_stdlib_version2.28channel_targetsconda-forge_maincuda_compiler_version13.0cxx_compiler_version13github_actions_labelscirun-openst_h9855fad4 - SHORT_CONFIG: linux_aarch64_c_compiler_version13c_stdl_h9855fad4 + - CONFIG: linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone + SHORT_CONFIG: linux_aarch64_channel_targetsconda-forge_h5b19ade8 UPLOAD_PACKAGES: True os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_c_compiler_version13c_stdl_h9855fad4', 'linux', 'x64', 'self-hosted'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_aarch64_channel_targetsconda-forge_h5b19ade8', '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_compiler_version14c_stdlib_version2.34channel_targetsconda-forge_maincuda_compiler_version12.9cxx_compiler_version14github_actions_labelscirun-openst_hbec9a05b - SHORT_CONFIG: linux_aarch64_c_compiler_version14c_stdl_hbec9a05b + - CONFIG: linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9 + SHORT_CONFIG: linux_aarch64_channel_targetsconda-forge_h0850a12d UPLOAD_PACKAGES: True os: ubuntu - runs_on: ['cirun-openstack-gpu-2xlarge--${{ github.run_id }}-linux_aarch64_c_compiler_version14c_stdl_hbec9a05b', 'linux', 'x64', 'self-hosted'] + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_aarch64_channel_targetsconda-forge_h0850a12d', '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 + - CONFIG: linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0 + SHORT_CONFIG: linux_aarch64_channel_targetsconda-forge_hafeb486a + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_aarch64_channel_targetsconda-forge_hafeb486a', 'linux', 'x64', 'self-hosted'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + - CONFIG: linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone + SHORT_CONFIG: linux_aarch64_channel_targetsconda-forge_h6889c6a2 + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['cirun-openstack-cpu-xlarge--${{ github.run_id }}-linux_aarch64_channel_targetsconda-forge_h6889c6a2', 'linux', 'x64', 'self-hosted'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + - CONFIG: osx_64_channel_targetsconda-forge_main + SHORT_CONFIG: osx_64_channel_targetsconda-forge_main + UPLOAD_PACKAGES: True + os: macos + runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_64_channel_targetsconda-forge_main', 'macOS', 'arm64', 'self-hosted'] + - CONFIG: osx_64_channel_targetsconda-forge_pytorch_rc + SHORT_CONFIG: osx_64_channel_targetsconda-forge_pytorch_rc 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 + runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_64_channel_targetsconda-forge_pytorch_rc', 'macOS', 'arm64', 'self-hosted'] + - CONFIG: osx_arm64_channel_targetsconda-forge_main + SHORT_CONFIG: osx_arm64_channel_targetsconda-forge_main 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 + runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_arm64_channel_targetsconda-forge_main', 'macOS', 'arm64', 'self-hosted'] + - CONFIG: osx_arm64_channel_targetsconda-forge_pytorch_rc + SHORT_CONFIG: osx_arm64_channel_targetsconda-forge_pytorch_rc 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 + runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_arm64_channel_targetsconda-forge_pytorch_rc', 'macOS', 'arm64', 'self-hosted'] + - CONFIG: win_64_channel_targetsconda-forge_maincuda_compiler_version12.8 + SHORT_CONFIG: win_64_channel_targetsconda-forge_maincu_h76af03ae + UPLOAD_PACKAGES: True + os: windows + runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_maincu_h76af03ae', 'windows', 'x64', 'self-hosted'] + - CONFIG: win_64_channel_targetsconda-forge_maincuda_compiler_version13.0 + SHORT_CONFIG: win_64_channel_targetsconda-forge_maincu_h86a9749f + UPLOAD_PACKAGES: True + os: windows + runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_maincu_h86a9749f', 'windows', 'x64', 'self-hosted'] + - CONFIG: win_64_channel_targetsconda-forge_maincuda_compiler_versionNone + SHORT_CONFIG: win_64_channel_targetsconda-forge_maincu_h83b7b577 + UPLOAD_PACKAGES: True + os: windows + runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_maincu_h83b7b577', 'windows', 'x64', 'self-hosted'] + - CONFIG: win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8 + SHORT_CONFIG: win_64_channel_targetsconda-forge_pytorc_h82625545 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 + runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_pytorc_h82625545', 'windows', 'x64', 'self-hosted'] + - CONFIG: win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0 + SHORT_CONFIG: win_64_channel_targetsconda-forge_pytorc_h2605c2a6 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 + runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_pytorc_h2605c2a6', 'windows', 'x64', 'self-hosted'] + - CONFIG: win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone + SHORT_CONFIG: win_64_channel_targetsconda-forge_pytorc_hf1ab2794 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'] + runs_on: ['cirun-azure-windows-4xlarge--${{ github.run_id }}-win_64_channel_targetsconda-forge_pytorc_hf1ab2794', 'windows', 'x64', 'self-hosted'] steps: - name: Checkout code diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index 780a358f..6831a529 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -31,11 +31,19 @@ pkgs_dirs: solver: libmamba CONDARC -mv /opt/conda/conda-meta/history /opt/conda/conda-meta/history.$(date +%Y-%m-%d-%H-%M-%S) -echo > /opt/conda/conda-meta/history -micromamba install --root-prefix ~/.conda --prefix /opt/conda \ - --yes --override-channels --channel conda-forge --strict-channel-priority \ - pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" +pushd "${FEEDSTOCK_ROOT}" +arch=$(uname -m) +if [[ "$arch" == "x86_64" ]]; then + arch="64" +fi +sed -i.bak -e "s/platforms = .*/platforms = [\"linux-${arch}\"]/" -e "s/# __PLATFORM_SPECIFIC_ENV__ =/docker-build-linux-$arch =/" pixi.toml +echo "Creating environment" +PIXI_CACHE_DIR=/opt/conda pixi install --environment docker-build-linux-$arch +pixi list +echo "Activating environment" +eval "$(pixi shell-hook --environment docker-build-linux-$arch)" +mv pixi.toml.bak pixi.toml +popd export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 # set up the condarc @@ -49,7 +57,7 @@ source run_conda_forge_build_setup make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]] && [[ "${HOST_PLATFORM}" != linux-* ]] && [[ "${BUILD_WITH_CONDA_DEBUG:-0}" != 1 ]]; then - EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" + EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --test skip" fi @@ -60,20 +68,16 @@ if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then 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_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ - ${EXTRA_CB_OPTIONS:-} \ - --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" - - # Drop into an interactive shell - /bin/bash + echo "rattler-build currently doesn't support debug mode" else - conda-build "${RECIPE_ROOT}" -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:-}" + + rattler-build build --recipe "${RECIPE_ROOT}" \ + -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + ${EXTRA_CB_OPTIONS:-} \ + --target-platform "${HOST_PLATFORM}" \ + --extra-meta flow_run_id="${flow_run_id:-}" \ + --extra-meta remote_url="${remote_url:-}" \ + --extra-meta sha="${sha:-}" ( startgroup "Inspecting artifacts" ) 2> /dev/null # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index bac7141a..463cbc88 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -9,34 +9,24 @@ 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" +( startgroup "Provisioning base env with pixi" ) 2> /dev/null +mkdir -p "${MINIFORGE_HOME}" +curl -fsSL https://pixi.sh/install.sh | bash +export PATH="~/.pixi/bin:$PATH" +arch=$(uname -m) +if [[ "$arch" == "x86_64" ]]; then + arch="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}" +sed -i.bak "s/platforms = .*/platforms = [\"osx-${arch}\"]/" pixi.toml 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 +pixi install +pixi list +echo "Activating environment" +eval "$(pixi shell-hook)" +mv pixi.toml.bak pixi.toml +( endgroup "Provisioning base env with pixi" ) 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 @@ -89,33 +79,25 @@ 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 + echo "rattler-build does not currently support debug mode" else if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]]; then - EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" + EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --test skip" 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" + rattler-build build --recipe ./recipe \ + -m ./.ci_support/${CONFIG}.yaml \ + ${EXTRA_CB_OPTIONS:-} \ + --target-platform "${HOST_PLATFORM}" \ + --extra-meta flow_run_id="$flow_run_id" \ + --extra-meta remote_url="$remote_url" \ + --extra-meta sha="$sha" ( startgroup "Inspecting artifacts" ) 2> /dev/null diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat index 27c552b1..fce25eac 100755 --- a/.scripts/run_win_build.bat +++ b/.scripts/run_win_build.bat @@ -13,36 +13,49 @@ setlocal enableextensions enabledelayedexpansion FOR %%A IN ("%~dp0.") DO SET "REPO_ROOT=%%~dpA" -if "%MINIFORGE_HOME%"=="" set "MINIFORGE_HOME=%USERPROFILE%\Miniforge3" +if "%MINIFORGE_HOME%"=="" ( + set "MINIFORGE_HOME=%REPO_ROOT%\.pixi\envs\default" +) else ( + set "PIXI_CACHE_DIR=%MINIFORGE_HOME%" +) :: 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%')" +call :start_group "Provisioning base env with pixi" +echo Installing pixi +powershell -NoProfile -ExecutionPolicy unrestricted -Command "iwr -useb https://pixi.sh/install.ps1 | iex" 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" +set "PATH=%USERPROFILE%\.pixi\bin;%PATH%" +echo Installing environment +if "%PIXI_CACHE_DIR%"=="%MINIFORGE_HOME%" ( + mkdir "%MINIFORGE_HOME%" + copy /Y pixi.toml "%MINIFORGE_HOME%" + pushd "%MINIFORGE_HOME%" +) else ( + pushd "%REPO_ROOT%" +) +move /y pixi.toml pixi.toml.bak +set "arch=64" +if "%PROCESSOR_ARCHITECTURE%"=="ARM64" set "arch=arm64" +powershell -NoProfile -ExecutionPolicy unrestricted -Command "(Get-Content pixi.toml.bak -Encoding UTF8) -replace 'platforms = .*', 'platforms = [''win-%arch%'']' | Out-File pixi.toml -Encoding UTF8" +:: Git on Windows needs to run post link scripts to properly set up SSL certificates +pixi config set --global run-post-link-scripts insecure +if !errorlevel! neq 0 exit /b !errorlevel! +pixi install +if !errorlevel! neq 0 exit /b !errorlevel! +pixi list +if !errorlevel! neq 0 exit /b !errorlevel! +set "ACTIVATE_PIXI=%TMP%\pixi-activate-%RANDOM%.bat" +pixi shell-hook > "%ACTIVATE_PIXI%" +if !errorlevel! neq 0 exit /b !errorlevel! +call "%ACTIVATE_PIXI%" 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 +move /y pixi.toml.bak pixi.toml +popd 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! @@ -64,19 +77,19 @@ if EXIST LICENSE.txt ( ) if NOT [%HOST_PLATFORM%] == [%BUILD_PLATFORM%] ( if [%CROSSCOMPILING_EMULATOR%] == [] ( - set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --no-test" + set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --test skip" ) ) 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%" + set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --extra-meta flow_run_id=%flow_run_id% --extra-meta remote_url=%remote_url% --extra-meta 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% +rattler-build.exe build --recipe "recipe" -m .ci_support\%CONFIG%.yaml %EXTRA_CB_OPTIONS% --target-platform %HOST_PLATFORM% if !errorlevel! neq 0 exit /b !errorlevel! call :start_group "Inspecting artifacts" diff --git a/README.md b/README.md index 84e94ab7..76e91434 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,6 @@ PyTorch is a Python package that provides two high-level features: - Deep neural networks built on a tape-based autograd system You can reuse your favorite Python packages such as NumPy, SciPy, and Cython to extend PyTorch when needed. - Current build status ==================== @@ -35,7 +34,6 @@ Current release info | [![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) | Installing pytorch-cpu ====================== @@ -47,16 +45,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-cpu, pytorch-gpu` can be installed with `conda`: ``` -conda install libtorch pytorch pytorch-cpu pytorch-gpu pytorch-tests +conda install libtorch pytorch pytorch-cpu pytorch-gpu ``` or with `mamba`: ``` -mamba install libtorch pytorch pytorch-cpu pytorch-gpu pytorch-tests +mamba install libtorch pytorch pytorch-cpu pytorch-gpu ``` It is possible to list all of the versions of `libtorch` available on your platform with `conda`: diff --git a/conda-forge.yml b/conda-forge.yml index 6b0681f4..6d080ace 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -13,6 +13,8 @@ conda_build: # use highest possible compression (smaller package -> less upload time) to try to # combat timouts on windows see https://github.com/conda/infrastructure/issues/1159 zstd_compression_level: 22 +conda_build_tool: rattler-build +conda_install_tool: pixi conda_forge_output_validation: true github: branch_name: main diff --git a/pixi.toml b/pixi.toml new file mode 100644 index 00000000..e01023c0 --- /dev/null +++ b/pixi.toml @@ -0,0 +1,178 @@ +# -*- mode: toml -*- +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +"$schema" = "https://pixi.sh/v0.59.0/schema/manifest/schema.json" + +[workspace] +name = "pytorch-cpu-feedstock" +version = "3.55.1" # conda-smithy version used to generate this file +description = "Pixi configuration for conda-forge/pytorch-cpu-feedstock" +authors = ["@conda-forge/pytorch-cpu"] +channels = ["conda-forge"] +platforms = ["linux-64", "osx-64", "osx-arm64", "win-64"] +requires-pixi = ">=0.59.0" + +[dependencies] +conda-build = ">=24.1" +conda-forge-ci-setup = "4.*" +rattler-build = "*" + +[tasks.inspect-all] +cmd = "inspect_artifacts --all-packages" +description = "List contents of all packages found in rattler-build build directory." +[tasks.build] +cmd = "rattler-build build --recipe recipe" +description = "Build pytorch-cpu-feedstock directly (without setup scripts), no particular variant specified" +[tasks."build-linux_64_channel_targetsconda-forge_maincuda_compiler_version12.9"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_64_channel_targetsconda-forge_maincuda_compiler_version12.9 directly (without setup scripts)" +[tasks."inspect-linux_64_channel_targetsconda-forge_maincuda_compiler_version12.9"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_64_channel_targetsconda-forge_maincuda_compiler_version12.9" +[tasks."build-linux_64_channel_targetsconda-forge_maincuda_compiler_version13.0"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_64_channel_targetsconda-forge_maincuda_compiler_version13.0 directly (without setup scripts)" +[tasks."inspect-linux_64_channel_targetsconda-forge_maincuda_compiler_version13.0"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_64_channel_targetsconda-forge_maincuda_compiler_version13.0" +[tasks."build-linux_64_channel_targetsconda-forge_maincuda_compiler_versionNone"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_64_channel_targetsconda-forge_maincuda_compiler_versionNone directly (without setup scripts)" +[tasks."inspect-linux_64_channel_targetsconda-forge_maincuda_compiler_versionNone"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_64_channel_targetsconda-forge_maincuda_compiler_versionNone" +[tasks."build-linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9 directly (without setup scripts)" +[tasks."inspect-linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9" +[tasks."build-linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0 directly (without setup scripts)" +[tasks."inspect-linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0" +[tasks."build-linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone directly (without setup scripts)" +[tasks."inspect-linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone" +[tasks."build-linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version12.9" +[tasks."build-linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_aarch64_channel_targetsconda-forge_maincuda_compiler_version13.0" +[tasks."build-linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone directly (without setup scripts)" +[tasks."inspect-linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_aarch64_channel_targetsconda-forge_maincuda_compiler_versionNone" +[tasks."build-linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.9" +[tasks."build-linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0" +[tasks."build-linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml" +description = "Build pytorch-cpu-feedstock with variant linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone directly (without setup scripts)" +[tasks."inspect-linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant linux_aarch64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone" +[tasks."build-osx_64_channel_targetsconda-forge_main"] +cmd = "rattler-build build --recipe recipe -m .ci_support/osx_64_channel_targetsconda-forge_main.yaml" +description = "Build pytorch-cpu-feedstock with variant osx_64_channel_targetsconda-forge_main directly (without setup scripts)" +[tasks."inspect-osx_64_channel_targetsconda-forge_main"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/osx_64_channel_targetsconda-forge_main.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant osx_64_channel_targetsconda-forge_main" +[tasks."build-osx_64_channel_targetsconda-forge_pytorch_rc"] +cmd = "rattler-build build --recipe recipe -m .ci_support/osx_64_channel_targetsconda-forge_pytorch_rc.yaml" +description = "Build pytorch-cpu-feedstock with variant osx_64_channel_targetsconda-forge_pytorch_rc directly (without setup scripts)" +[tasks."inspect-osx_64_channel_targetsconda-forge_pytorch_rc"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/osx_64_channel_targetsconda-forge_pytorch_rc.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant osx_64_channel_targetsconda-forge_pytorch_rc" +[tasks."build-osx_arm64_channel_targetsconda-forge_main"] +cmd = "rattler-build build --recipe recipe -m .ci_support/osx_arm64_channel_targetsconda-forge_main.yaml" +description = "Build pytorch-cpu-feedstock with variant osx_arm64_channel_targetsconda-forge_main directly (without setup scripts)" +[tasks."inspect-osx_arm64_channel_targetsconda-forge_main"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/osx_arm64_channel_targetsconda-forge_main.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant osx_arm64_channel_targetsconda-forge_main" +[tasks."build-osx_arm64_channel_targetsconda-forge_pytorch_rc"] +cmd = "rattler-build build --recipe recipe -m .ci_support/osx_arm64_channel_targetsconda-forge_pytorch_rc.yaml" +description = "Build pytorch-cpu-feedstock with variant osx_arm64_channel_targetsconda-forge_pytorch_rc directly (without setup scripts)" +[tasks."inspect-osx_arm64_channel_targetsconda-forge_pytorch_rc"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/osx_arm64_channel_targetsconda-forge_pytorch_rc.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant osx_arm64_channel_targetsconda-forge_pytorch_rc" +[tasks."build-win_64_channel_targetsconda-forge_maincuda_compiler_version12.8"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.8.yaml" +description = "Build pytorch-cpu-feedstock with variant win_64_channel_targetsconda-forge_maincuda_compiler_version12.8 directly (without setup scripts)" +[tasks."inspect-win_64_channel_targetsconda-forge_maincuda_compiler_version12.8"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version12.8.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant win_64_channel_targetsconda-forge_maincuda_compiler_version12.8" +[tasks."build-win_64_channel_targetsconda-forge_maincuda_compiler_version13.0"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml" +description = "Build pytorch-cpu-feedstock with variant win_64_channel_targetsconda-forge_maincuda_compiler_version13.0 directly (without setup scripts)" +[tasks."inspect-win_64_channel_targetsconda-forge_maincuda_compiler_version13.0"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_version13.0.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant win_64_channel_targetsconda-forge_maincuda_compiler_version13.0" +[tasks."build-win_64_channel_targetsconda-forge_maincuda_compiler_versionNone"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml" +description = "Build pytorch-cpu-feedstock with variant win_64_channel_targetsconda-forge_maincuda_compiler_versionNone directly (without setup scripts)" +[tasks."inspect-win_64_channel_targetsconda-forge_maincuda_compiler_versionNone"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_channel_targetsconda-forge_maincuda_compiler_versionNone.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant win_64_channel_targetsconda-forge_maincuda_compiler_versionNone" +[tasks."build-win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8.yaml" +description = "Build pytorch-cpu-feedstock with variant win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8 directly (without setup scripts)" +[tasks."inspect-win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version12.8" +[tasks."build-win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml" +description = "Build pytorch-cpu-feedstock with variant win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0 directly (without setup scripts)" +[tasks."inspect-win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_version13.0" +[tasks."build-win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml" +description = "Build pytorch-cpu-feedstock with variant win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone directly (without setup scripts)" +[tasks."inspect-win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone.yaml" +description = "List contents of pytorch-cpu-feedstock packages built for variant win_64_channel_targetsconda-forge_pytorch_rccuda_compiler_versionNone" + +[feature.smithy.dependencies] +conda-smithy = "*" +[feature.smithy.tasks.build-locally] +cmd = "python ./build-locally.py" +description = "Build packages locally using the same setup scripts used in conda-forge's CI" +[feature.smithy.tasks.smithy] +cmd = "conda-smithy" +description = "Run conda-smithy. Pass necessary arguments." +[feature.smithy.tasks.rerender] +cmd = "conda-smithy rerender" +description = "Rerender the feedstock." +[feature.smithy.tasks.lint] +cmd = "conda-smithy lint --conda-forge recipe" +description = "Lint the feedstock recipe" + +[environments] +smithy = ["smithy"] + +# This is a copy of default, to be enabled by build_steps.sh during Docker builds +# __PLATFORM_SPECIFIC_ENV__ = [] diff --git a/recipe/bld.bat b/recipe/build.bat similarity index 100% rename from recipe/bld.bat rename to recipe/build.bat diff --git a/recipe/meta.yaml b/recipe/meta.yaml deleted file mode 100644 index 8d0bee0d..00000000 --- a/recipe/meta.yaml +++ /dev/null @@ -1,612 +0,0 @@ -# if you wish to build release candidate number X, append the version string with ".rcX" -{% set version = "2.10.0" %} -{% set build = 3 %} - -# Use a higher build number for the CUDA variant, to ensure that it's -# preferred by conda's solver, and it's preferentially -# installed where the platform supports it. -{% if cuda_compiler_version != "None" %} -{% set build = build + 200 %} -{% endif %} - -{% if blas_impl == "mkl" %} -{% set build = build + 100 %} -{% endif %} - -# see https://github.com/pytorch/pytorch/blame/v{{ version }}/.ci/docker/ci_commit_pins/triton.txt -# pytorch and triton are released in tandem, see notes in their release process -# https://github.com/pytorch/pytorch/blob/main/RELEASE.md#triton-dependency-for-the-release -{% set triton = "3.6.0" %} - -package: - name: libtorch - version: {{ version.replace("-", ".") }} - -source: -{% if "rc" in version %} - - url: https://download.pytorch.org/source_code/test/pytorch-v{{ version }}.tar.gz - sha256: f35b2d7839b284410e5be9ec2eeb7a3049e09c1b8f6a871d3f2cad495d93dcd6 -{% else %} - # The "pytorch-v" tarballs contain submodules; the "pytorch-" ones don't. - - url: https://github.com/pytorch/pytorch/releases/download/v{{ version }}/pytorch-v{{ version }}.tar.gz - sha256: fa8ccbe87f83f48735505371c1c313b4aa6db400b0ae4f8a02844d1e150c695f -{% endif %} - patches: - - patches/0001-Force-usage-of-python-3-and-error-without-numpy.patch - # conda-specific patch, lets us override CUDA paths - - patches/0002-Allow-overriding-CUDA-related-paths.patch - # fix BLAS calling convention for openblas - - patches/0003-Use-BLAS_USE_CBLAS_DOT-for-OpenBLAS-builds.patch - - patches/0004-Fix-FindOpenBLAS.patch - # point to headers that are now living in $PREFIX/include instead of $SP_DIR/torch/include - - patches/0005-use-our-own-PREFIX-for-include-paths-etc.patch - - patches/0006-make-ATEN_INCLUDE_DIR-relative-to-TORCH_INSTALL_PREF.patch - - patches/0007-remove-DESTINATION-lib-from-CMake-install-TARGETS-di.patch # [win] - - patches/0008-avoid-deprecated-find_package-CUDA-in-caffe2-CMake-m.patch - # skip a test that fails with numpy v2.3; still triggers as of pytorch v2.9 - - patches/0009-skip-test_norm_matrix_degenerate_shapes-on-numpy-2.3.patch - # backport https://github.com/pytorch/pytorch/pull/127702 - - patches/0010-Define-PY_SSIZE_T_CLEAN-before-include-Python.h.patch - # backport https://github.com/pytorch/pytorch/pull/166824 - - patches/0011-Add-USE_SYSTEM-options-for-KLEIDI-CUDNN_FRONTEND-CUT.patch - - patches/0012-Fix-building-kineto-against-system-fmt.patch - # backport https://github.com/pytorch/pytorch/pull/159828 - - patches/0013-Attempt-to-fix-torch.backends.cudnn.rnn-import.patch - - patches/0014-Use-Intel-LLVM-openmp.patch - # backport https://github.com/pytorch/pytorch/pull/174647 - - patches/0015-Fix-ICE-in-GCC-14-with-arm.patch - - patches/0016-for-win-CUDA-remove-USE_CUDA-guard-for-skip-in-compi.patch # [cuda_compiler_version != "None"] - - patches_submodules/tensorpipe/0001-switch-away-from-find_package-CUDA.patch - -build: - number: {{ build }} - # This logic allows two rc variants to be defined in the conda_build_config, but only one to actually be built. - # We want to be able to define two variants in the cbc so we can assign different labels to each in the upload channel - # (by zipping is_rc with channel_targets). This prevents rc builds being used unless specifically requested. -{% if "rc" in version %} - skip: true # [not is_rc] -{% else %} - skip: true # [is_rc] -{% endif %} - # CUDA builds on GPU agents, non-CUDA builds on CPU agents; c.f. - # https://github.com/conda-forge/conda-smithy/pull/2434; the skip could be avoided - # using https://github.com/conda-forge/conda-forge-pinning-feedstock/pull/6910 - # (plus a mechanism similar to CF_CUDA_ENABLED, preliminarily called CF_SELF_HOSTED). - # condition needs to be on a single line for conda-build to catch used variables - {% 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 %} - 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 - missing_dso_whitelist: - - '*/libcuda.so.*' # [linux] - - '*/nvcuda.dll' # [win] - run_exports: - - {{ pin_subpackage('libtorch', max_pin='x.x') }} - ignore_run_exports_from: - - python * - - numpy * - - cross-python_{{ target_platform }} # [build_platform != target_platform] - ignore_run_exports: - - python * - - numpy * - - libmagma_sparse - -requirements: - # Keep this list synchronized (except for python*, numpy*) in outputs - # We use python to build libtorch as well because it is easier - build: - # When you change 3.12 here, change it in build.sh/bld.bat as well - - python 3.12 # [build_platform != target_platform] - - cross-python_{{ target_platform }} # [build_platform != target_platform] - - numpy * # [build_platform != target_platform] - - {{ stdlib('c') }} - - {{ 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 - - ninja - # Keep libprotobuf here so that a compatibile version - # of protobuf is installed between build and host - - libprotobuf - - protobuf - - make # [linux] - - sccache # [win] - - grep # [unix] - - rsync # [unix] - host: - # GPU requirements - {% if cuda_compiler_version != "None" %} - - cuda-cudart-dev - - cuda-cupti-dev - - cuda-driver-dev # [linux] - - cuda-nvml-dev - - cuda-nvrtc-dev - - cuda-nvtx-dev - - cuda-profiler-api - - cuda-version {{ cuda_compiler_version }} - - cusparselt - - libcublas-dev - - libcudnn-dev - - libcudss-dev - - libcufile-dev # [linux] - - libcufft-dev - - libcurand-dev - - libcusolver-dev - - libcusparse-dev - - libmagma-devel - - nccl # [linux] - - nvtx-c - {% endif %} - # other requirements - - python 3.12 - - numpy * - - pip - - setuptools - - pyyaml - - requests - - six - - mkl-devel # [blas_impl == "mkl"] - - libcblas * *_mkl # [blas_impl == "mkl"] - - libblas # [blas_impl != "mkl"] - - libcblas # [blas_impl != "mkl"] - - liblapack # [blas_impl != "mkl"] - - libabseil - - libprotobuf - - llvm-openmp - - sleef - - libuv - - pkg-config # [unix] - - typing_extensions - - pybind11 - # see https://github.com/pytorch/pytorch/pull/175115 - - pybind11 <3.0.2 - - pybind11-abi - - eigen - - zlib - - fmt - - packaging - run: - - libblas * *{{ blas_impl }} # [blas_impl == "mkl"] - run_constrained: - # https://github.com/conda-forge/pytorch-cpu-feedstock/issues/65 - - pytorch-cpu {{ version }} # [cuda_compiler_version == "None"] - - pytorch-gpu <0.0a0 # [cuda_compiler_version == "None"] - - pytorch-gpu {{ version }} # [cuda_compiler_version != "None"] - - pytorch-cpu <0.0a0 # [cuda_compiler_version != "None"] - - pytorch {{ version }} cuda{{ cuda_compiler_version | replace('.', '') }}_{{ blas_impl }}_*_{{ build }} # [cuda_compiler_version != "None"] - - pytorch {{ version }} cpu_{{ blas_impl }}_*_{{ build }} # [cuda_compiler_version == "None"] - # if using OpenBLAS, ensure that a version compatible with OpenMP is used - # otherwise, we get the following warnings: - # OpenBLAS Warning : Detect OpenMP Loop and this application may hang. Please rebuild the library with USE_OPENMP=1 option. - - libopenblas * openmp_* # [unix and blas_impl != "mkl"] - - openblas * openmp_* # [unix and blas_impl != "mkl"] - -# these tests are for the libtorch output below, but due to -# a particularity of conda-build, that output is defined in -# the global build stage, including tests -test: - requires: - # cmake needs a compiler to run package detection, see - # https://discourse.cmake.org/t/questions-about-find-package-cli-msvc/6194 - - {{ compiler('cxx') }} - # for CMake config to find cuda & nvrtc - - {{ compiler('cuda') }} # [cuda_compiler_version != "None"] - - cuda-nvrtc-dev # [cuda_compiler_version != "None"] - - nvtx-c # [cuda_compiler_version != "None"] - - cmake - - ninja - - pkg-config - files: - - cmake_test/ - commands: - # libraries; peculiar formatting to avoid linter false positives about selectors - {% set torch_libs = [ - "c10", "shm", "torch", "torch_cpu", "torch_global_deps" - ] + (cuda_compiler_version != "None" and target_platform.startswith("linux")) * [ - "torch_cuda_linalg" - ] + (cuda_compiler_version != "None") * [ - "c10_cuda", "caffe2_nvrtc", "torch_cuda" - ] - %} - {% for each_lib in torch_libs %} - - test -f $PREFIX/lib/lib{{ each_lib }}.so # [linux] - - test -f $PREFIX/lib/lib{{ each_lib }}.dylib # [osx] - - if not exist %LIBRARY_BIN%\{{ each_lib }}.dll exit 1 # [win] - {% if each_lib != "torch_global_deps" %} - - if not exist %LIBRARY_LIB%\{{ each_lib }}.lib exit 1 # [win] - {% endif %} - {% endfor %} - - # CMake files in share - - test -f $PREFIX/share/cmake/Torch/TorchConfig.cmake # [linux] - - if not exist %LIBRARY_PREFIX%\share\cmake\Torch\TorchConfig.cmake exit 1 # [win] - - # test integrity of CMake metadata - - cd cmake_test - - cmake -GNinja -DCMAKE_CXX_STANDARD=17 $CMAKE_ARGS . # [unix] - - cmake -GNinja -DCMAKE_CXX_STANDARD=17 %CMAKE_ARGS% . # [win] - -outputs: - - name: libtorch - - name: pytorch - script: build.sh # [unix] - script: bld.bat # [win] - build: - string: cuda{{ cuda_compiler_version | replace('.', '') }}_{{ blas_impl }}_py{{ CONDA_PY }}_h{{ PKG_HASH }}_{{ build }} # [cuda_compiler_version != "None"] - string: cpu_{{ blas_impl }}_py{{ CONDA_PY }}_h{{ PKG_HASH }}_{{ build }} # [cuda_compiler_version == "None"] - detect_binary_files_with_prefix: false - run_exports: - - {{ pin_subpackage('pytorch', max_pin='x.x') }} - - {{ pin_subpackage('libtorch', max_pin='x.x') }} - ignore_run_exports: - - libmagma_sparse - requirements: - build: - - python - - cross-python_{{ target_platform }} # [build_platform != target_platform] - - numpy # [build_platform != target_platform] - - {{ stdlib('c') }} - - {{ 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 - # of protobuf is installed between build and host - - libprotobuf - - protobuf - - make # [linux] - - sccache # [win] - host: - - {{ pin_subpackage('libtorch', exact=True) }} - # GPU requirements - {% if cuda_compiler_version != "None" %} - - cuda-cudart-dev - - cuda-cupti-dev - - cuda-driver-dev # [linux] - - cuda-nvml-dev - - cuda-nvrtc-dev - - cuda-nvtx-dev - - cuda-profiler-api - - cuda-version {{ cuda_compiler_version }} - - cusparselt - - libcublas-dev - - libcudnn-dev - - libcudss-dev - - libcufile-dev # [linux] - - libcufft-dev - - libcurand-dev - - libcusolver-dev - - libcusparse-dev - - libmagma-devel - - nccl # [linux] - - nvtx-c - {% endif %} - # other requirements - - python - - numpy - - pip - - setuptools - - pyyaml - - requests - - six - - mkl-devel # [blas_impl == "mkl"] - - libcblas * *_mkl # [blas_impl == "mkl"] - - libcblas # [blas_impl != "mkl"] - - liblapack # [blas_impl != "mkl"] - - libabseil - - libprotobuf - - llvm-openmp - - pybind11 - # see https://github.com/pytorch/pytorch/pull/175115 - - pybind11 <3.0.2 - - pybind11-abi - - eigen - - sleef - - libuv - - pkg-config # [unix] - - typing_extensions - - zlib - - fmt - - packaging - run: - - {{ pin_subpackage('libtorch', exact=True) }} - - llvm-openmp - - libblas * *{{ blas_impl }} # [blas_impl == "mkl"] - - nomkl # [blas_impl != "mkl"] - - triton =={{ triton }} # [cuda_compiler_version != "None" and not win] - # avoid that people without GPUs needlessly download ~0.5-1GB - - __cuda # [cuda_compiler_version != "None"] - - python - # other requirements, see https://github.com/pytorch/pytorch/blame/main/requirements.txt - - filelock - - fsspec - - jinja2 - - 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 - # see https://github.com/conda-forge/sympy-feedstock/issues/67 - - mpmath <1.4 - run_constrained: - # https://github.com/conda-forge/pytorch-cpu-feedstock/issues/65 - - pytorch-cpu {{ version }} # [cuda_compiler_version == "None"] - - pytorch-gpu <0.0a0 # [cuda_compiler_version == "None"] - - pytorch-gpu {{ version }} # [cuda_compiler_version != "None"] - - pytorch-cpu <0.0a0 # [cuda_compiler_version != "None"] - - - name: pytorch-tests - build: - string: cuda{{ cuda_compiler_version | replace('.', '') }}_{{ blas_impl }}_py{{ CONDA_PY }}_h{{ PKG_HASH }}_{{ build }} # [cuda_compiler_version != "None"] - string: cpu_{{ blas_impl }}_py{{ CONDA_PY }}_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"] - - python - run: - - pytorch {{ version }} cuda*_{{ blas_impl }}_py{{ CONDA_PY }}*{{ build }} # [cuda_compiler_version != "None"] - - pytorch {{ version }} cpu_{{ blas_impl }}_py{{ CONDA_PY }}*{{ build }} # [cuda_compiler_version == "None"] - test: - requires: - - {{ compiler('c') }} - - {{ compiler('cxx') }} - # for torch.compile tests - - {{ compiler('cuda') }} # [cuda_compiler_version != "None"] - - ninja - - boto3 - - hypothesis - # pytest-9 causes failure due to PytestRemovedIn9Warning - # https://github.com/conda-forge/pytorch-cpu-feedstock/pull/448#issuecomment-3529016115 - - pytest <9 - - tabulate - - pydot - - pip - - expecttest - - xmlrunner - - pyyaml - # Required by run_test.py - - pytest-flakefinder - - pytest-rerunfailures - - pytest-xdist - # danpetry/TF: Pytorch includes their own edited version of pytest-shard and adding - # it into the test deps as well results in the --shard-id option being added twice. - # https://github.com/pytorch/pytorch/blob/main/test/pytest_shard_custom.py - # - pytest-shard - # for cmake_test - - cmake - - cuda-nvrtc-dev # [cuda_compiler_version != "None"] - - nvtx-c # [cuda_compiler_version != "None"] - # not required upstream, but useful - - pytest-timeout - imports: - - torch - - torch._C - files: - - cmake_test/ - source_files: - # Only include the source_files if we are actually going to run the tests. - - test - - tools - commands: - # Run pip check so as to ensure that all pytorch packages are installed - # https://github.com/conda-forge/pytorch-cpu-feedstock/issues/24 - - pip check - - python -c "import torch; print(torch.__version__)" - - python -c "import torch; assert torch.backends.mkldnn.m.is_available()" # [x86 and cuda_compiler_version == "None"] - - python -c "import torch; torch.tensor(1).to('cpu').numpy(); print('numpy support enabled!!!')" - # We have had issues with openmp .dylibs being doubly loaded in certain cases. These two tests catch the (observed) issue - - python -c "import torch; import numpy" - - python -c "import numpy; import torch" - - python -c "import numpy as np;import torch;x = torch.tensor([2], dtype=torch.complex128);res = torch.dot(x, x); assert res.real == 4.0, res" - # distributed support is enabled by default on linux; for mac, we enable it manually in build.sh - - python -c "import torch; assert torch.distributed.is_available()" # [linux or osx] - - python -c "import torch; assert torch.backends.cuda.is_built()" # [cuda_compiler_version != "None"] - - python -c "import torch; assert torch.backends.cudnn.is_available()" # [cuda_compiler_version != "None"] - - python -c "import torch; assert torch.backends.cudnn.enabled" # [cuda_compiler_version != "None"] - - python -c "import torch; assert torch.version.cuda is not None" # [cuda_compiler_version != "None"] - # At conda-forge, we target versions of OSX that are too old for MPS support - # But if users install a newer version of OSX, they will have MPS support - # https://github.com/conda-forge/pytorch-cpu-feedstock/pull/123#issuecomment-1186355073 - # - python -c "import torch; assert torch.backends.mps.is_available()" # [osx] - - # python-version-specific library (default location in SP_DIR symlinks back to this) - - test -f $PREFIX/lib/libtorch_python${SHLIB_EXT} # [unix] - - if not exist %LIBRARY_BIN%\torch_python.dll exit 1 # [win] - - if not exist %SP_DIR%\torch\lib\torch_python.lib exit 1 # [win] - - if not exist %SP_DIR%\torch\lib\_C.lib exit 1 # [win] - - # a reasonably safe subset of tests that should run under 15 minutes - {% set tests = " ".join([ - "test/test_autograd.py", - "test/test_autograd_fallback.py", - "test/test_custom_ops.py", - "test/test_linalg.py", - "test/test_mkldnn.py", - "test/test_modules.py", - "test/test_nn.py", - "test/test_torch.py", - "test/test_xnnpack_integration.py", - ]) %} - # tests torch.compile; avoid on aarch because it adds >4h in test runtime in emulation; - # they add a lot of runtime (15->60min on windows), so run them for only one python version - {% set tests = tests ~ " test/inductor/test_torchinductor.py" %} # [py==312 and not (aarch64 or osx)] - - {% set skips = "(TestTorch and test_print)" %} - # minor tolerance violations - {% set skips = skips ~ " or test_1_sized_with_0_strided_cpu_float32" %} # [osx] - {% set skips = skips ~ " or test_batchnorm_nhwc_cpu" %} # [unix] - {% set skips = skips ~ " or test_layer_norm_backwards_eps" %} # [unix] - # timeouts and failures on aarch, see https://github.com/conda-forge/pytorch-cpu-feedstock/pull/298#issuecomment-2555888508 - {% set skips = skips ~ " or test_pynode_destruction_deadlock" %} # [aarch64] - {% set skips = skips ~ " or (TestLinalgCPU and test_cholesky_cpu_float32)" %} # [aarch64] - {% set skips = skips ~ " or (TestLinalgCPU and test_pca_lowrank_cpu)" %} # [aarch64] - {% set skips = skips ~ " or (TestLinalgCPU and test_svd_lowrank_cpu)" %} # [aarch64] - {% set skips = skips ~ " or (TestMkldnnCPU and test_lstm_cpu)" %} # [aarch64] - # very long-running tests in emulation - {% set skips = skips ~ " or test_eigh_lwork_lapack" %} # [aarch64] - {% set skips = skips ~ " or test_gradgrad_nn_LSTM" %} # [aarch64] - {% set skips = skips ~ " or test_grad_nn_Transformer" %} # [aarch64] - {% set skips = skips ~ " or test_inverse_errors_large" %} # [aarch64] - {% set skips = skips ~ " or (TestXNNPACKConv1dTransformPass and test_conv1d_basic)" %} # [aarch64] - # errors (possibly QEMU-related) with openblas 0.3.30 - {% set skips = skips ~ " or test_addbmm or test_baddbmm or test_bmm" %} # [aarch64] - # doesn't crash, but gets different result on aarch + CUDA - {% set skips = skips ~ " or illcondition_matrix_input_should_not_crash_cpu" %} # [aarch64 and cuda_compiler_version != "None"] - # may crash spuriously - {% set skips = skips ~ " or (TestAutograd and test_profiler_seq_nr)" %} # [not win] - {% set skips = skips ~ " or (TestAutograd and test_profiler_propagation)" %} # [not win] - # tests that fail due to resource clean-up issues (non-unique temporary libraries), see - # https://github.com/conda-forge/pytorch-cpu-feedstock/pull/318#issuecomment-2620080859 - {% set skips = skips ~ " or test_mutable_custom_op_fixed_layout" %} # [not win] - # minor inaccuracy on aarch64 (emulation?) - {% set skips = skips ~ " or (TestNN and test_upsampling_bfloat16)" %} # [aarch64] - # flaky failure: `Exec format error: '$PREFIX/bin/python3.12'` - {% set skips = skips ~ " or test_terminate_handler_on_crash" %} # [aarch64] - # may crash spuriously - {% set skips = skips ~ " or (TestAutograd and test_profiler_seq_nr)" %} - {% set skips = skips ~ " or (TestAutograd and test_profiler_propagation)" %} - # tests that fail due to resource clean-up issues (non-unique temporary libraries), see - # https://github.com/conda-forge/pytorch-cpu-feedstock/pull/318#issuecomment-2620080859 - {% set skips = skips ~ " or test_mutable_custom_op_fixed_layout" %} - # trivial accuracy problems - {% set skips = skips ~ " or test_BCELoss_weights_no_reduce_cuda" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or test_ctc_loss_cudnn_tensor_cuda" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or (TestTorch and test_index_add_correctness)" %} # [linux and cuda_compiler_version != "None"] - # These tests require higher-resource or more recent GPUs than the CI provides - {% set skips = skips ~ " or test_sdpa_inference_mode_aot_compile" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or (TestNN and test_grid_sample)" %} # [linux and cuda_compiler_version != "None"] - # don't mess with tests that rely on GPU failure handling - {% set skips = skips ~ " or test_cublas_config_nondeterministic_alert_cuda" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or test_cross_entropy_loss_2d_out_of_bounds_class" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or test_indirect_device_assert" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or test_reentrant_parent_error_on_cpu_cuda" %} # [linux and cuda_compiler_version != "None"] - # test that fails to find temporary resource - {% set skips = skips ~ " or (GPUTests and test_scatter_reduce2)" %} # [linux and cuda_compiler_version != "None"] - # ROCM test whose skip doesn't trigger - {% set skips = skips ~ " or test_ck_blas_library_cpu" %} # [linux and cuda_compiler_version != "None"] - # problem with finding output of `torch.cuda.tunable.write_file()` - {% set skips = skips ~ " or test_matmul_offline_tunableop_cuda_float16" %} # [linux and cuda_compiler_version != "None"] - # catastropic accuracy failure in convolution - {% set skips = skips ~ " or test_Conv3d_1x1x1_no_bias_cuda" %} # [linux and cuda_compiler_version != "None"] - # some triton errors that appeared in #391 - {% set skips = skips ~ " or test_isinf_cuda" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or test_donated_buffer_inplace_gpt" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or test_linear_dynamic_maxautotune_cuda" %} # [linux and cuda_compiler_version != "None"] - # skip some very long-running groups of tests (~30 minutes total) - {% set skips = skips ~ " or (test_gradgrad_nn_Transformer and _cuda_)" %} # [linux and cuda_compiler_version != "None"] - {% set skips = skips ~ " or test_avg_pool3d_backward2" %} # [linux and cuda_compiler_version != "None"] - # MKL problems - {% set skips = skips ~ " or (TestLinalgCPU and test_inverse_errors_large_cpu)" %} # [linux and blas_impl == "mkl" and cuda_compiler_version != "None"] - # non-MKL problems - {% set skips = skips ~ " or test_gather_scatter_cpu or test_index_put2_cpu" %} # [linux and blas_impl != "mkl" and cuda_compiler_version != "None"] - # these tests are failing with low -n values - {% set skips = skips ~ " or test_base_does_not_require_grad_mode_nothing" %} # [not win] - {% set skips = skips ~ " or test_base_does_not_require_grad_mode_warn" %} # [not win] - {% set skips = skips ~ " or test_composite_registered_to_cpu_mode_nothing" %} # [not win] - # these tests are failing on windows - {% set skips = skips ~ " or (TestMkldnnCPU and test_batch_norm_2d_cpu)" %} # [win] - # flaky test, fragile to GC behavior - {% set skips = skips ~ " or (TestTorch and test_tensor_cycle_via_slots)" %} - # unexpected success - {% set skips = skips ~ " or test_forward_nn_Bilinear_mps_float16" %} # [osx and arm64] - # "quantized engine NoQEngine is not supported" - {% set skips = skips ~ " or test_qengine" %} # [osx and arm64] - # flaky failure on osx - {% set skips = skips ~ " or test_LayerNorm_numeric_mps" %} # [osx and arm64] - # some warning-related failure, maybe it's broken by --disable-warnings? - {% set skips = skips ~ " or test_cpp_warnings_have_python_context_cpu" %} - {% set skips = skips ~ " or test_cpp_warnings_have_python_context_cuda" %} - # "Attempt to trace generator" - {% set skips = skips ~ " or test_lite_regional_compile_flex_attention_cuda" %} - - # the whole test suite takes forever, but we should get a good enough coverage - # for potential packaging problems by running a fixed subset - - export OMP_NUM_THREADS=4 # [unix] - # reduced paralellism to avoid OOM for CUDA builds - {% set jobs = "-n 2" %} - {% set jobs = "-n 1" %} # [linux64 and cuda_compiler_version != "None"] - # test only one python version on aarch because emulation is super-slow; - # disable hypothesis because it randomly yields health check errors - - # the opengpu server has a card with sm_70, an architecture dropped by CUDA 13.0 - {% if (cuda_compiler_version or "0").split(".")[0]|int < 13 %} - - pytest {{ jobs }} {{ tests }} -k "not ({{ skips }})" -m "not hypothesis" --durations=50 --timeout=1200 --disable-warnings # [not aarch64 or py==312] - {% endif %} - - # regression test for https://github.com/conda-forge/pytorch-cpu-feedstock/issues/329, where we picked up - # duplicate `.pyc` files due to newest py-ver (3.13) in the build environment not matching the one in host; - # obviously this test can only be done for other python versions. - - test ! -f $SP_DIR/functorch/__pycache__/__init__.cpython-313.pyc # [py!=313 and unix] - - if exist %SP_DIR%\functorch\__pycache__\__init__.cpython-313.pyc exit 1 # [py!=313 and win] - - # test integrity of CMake metadata and ensure that THPLayoutType is visible as a symbol from libtorch_python - - cd cmake_test - - mkdir build build2 - - cd build - - cmake -GNinja -DCMAKE_CXX_STANDARD=17 -DWITH_TORCH_PYTHON=ON $CMAKE_ARGS .. # [unix] - - cmake -GNinja -DCMAKE_CXX_STANDARD=17 -DWITH_TORCH_PYTHON=ON %CMAKE_ARGS% .. # [win] - - cmake --build . # [unix] - - cmake --build . --config Release # [win] - - cd ../build2 - # regression test for https://github.com/conda-forge/pytorch-cpu-feedstock/issues/479 - - cmake -GNinja -DCMAKE_CXX_STANDARD=17 -DWITH_TORCH_PYTHON=ON -DTorch_DIR=$SP_DIR/torch/share/cmake/Torch $CMAKE_ARGS .. # [unix] - - cmake -GNinja -DCMAKE_CXX_STANDARD=17 -DWITH_TORCH_PYTHON=ON -DTorch_DIR=%SP_DIR%/torch/share/cmake/Torch %CMAKE_ARGS% .. # [win] - - cmake --build . # [unix] - - cmake --build . --config Release # [win] - - - name: pytorch-cpu # [cuda_compiler_version == "None"] - - name: pytorch-gpu # [cuda_compiler_version != "None"] - build: - 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 - 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"] - test: - imports: - - torch - -about: - home: https://pytorch.org/ - dev_url: https://github.com/pytorch/pytorch - license: BSD-3-Clause - license_family: BSD - license_file: - - LICENSE - - NOTICE - - third_party/CMake/Copyright.txt - summary: PyTorch is an optimized tensor library for deep learning using GPUs and CPUs. - description: | - PyTorch is a Python package that provides two high-level features: - - Tensor computation (like NumPy) with strong GPU acceleration - - Deep neural networks built on a tape-based autograd system - You can reuse your favorite Python packages such as NumPy, SciPy, and Cython to extend PyTorch when needed. - doc_url: https://pytorch.org/docs/ - -extra: - recipe-maintainers: - - baszalmstra - - benjaminrwilson - - beckermr - - h-vetinari - - hmaarrfk - - jeongseok-meta - - mgorny - - sodre - - Tobias-Fischer - feedstock-name: pytorch-cpu diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml new file mode 100644 index 00000000..35105ebf --- /dev/null +++ b/recipe/recipe.yaml @@ -0,0 +1,459 @@ +schema_version: 1 + +context: + # If you wish to build a release candidate, append ".rcX" to the version + version: "2.10.0" + base_build: 4 + # see https://github.com/pytorch/pytorch/blame/v${{ version }}/.ci/docker/ci_commit_pins/triton.txt + triton: "3.6.0" + +recipe: + # name is ignored for multi-output recipes + name: pytorch-cpu + # normalize possible rc-style versions the same way as in v0 + version: ${{ version | replace("-", ".") }} + +source: + # The "pytorch-v" tarballs contain submodules; the "pytorch-" ones don't. + - url: https://github.com/pytorch/pytorch/releases/download/v${{ version }}/pytorch-v${{ version }}.tar.gz + sha256: fa8ccbe87f83f48735505371c1c313b4aa6db400b0ae4f8a02844d1e150c695f + patches: + - patches/0001-Force-usage-of-python-3-and-error-without-numpy.patch + # conda-specific patch, lets us override CUDA paths + - patches/0002-Allow-overriding-CUDA-related-paths.patch + # fix BLAS calling convention for openblas + - patches/0003-Use-BLAS_USE_CBLAS_DOT-for-OpenBLAS-builds.patch + - patches/0004-Fix-FindOpenBLAS.patch + # point to headers that are now living in $PREFIX/include instead of $SP_DIR/torch/include + - patches/0005-use-our-own-PREFIX-for-include-paths-etc.patch + - patches/0006-make-ATEN_INCLUDE_DIR-relative-to-TORCH_INSTALL_PREF.patch + - if: win + then: + - patches/0007-remove-DESTINATION-lib-from-CMake-install-TARGETS-di.patch + - patches/0008-avoid-deprecated-find_package-CUDA-in-caffe2-CMake-m.patch + # skip a test that fails with numpy v2.3; still triggers as of pytorch v2.9 + - patches/0009-skip-test_norm_matrix_degenerate_shapes-on-numpy-2.3.patch + # backport https://github.com/pytorch/pytorch/pull/127702 + - patches/0010-Define-PY_SSIZE_T_CLEAN-before-include-Python.h.patch + # backport https://github.com/pytorch/pytorch/pull/166824 + - patches/0011-Add-USE_SYSTEM-options-for-KLEIDI-CUDNN_FRONTEND-CUT.patch + - patches/0012-Fix-building-kineto-against-system-fmt.patch + # backport https://github.com/pytorch/pytorch/pull/159828 + - patches/0013-Attempt-to-fix-torch.backends.cudnn.rnn-import.patch + - patches/0014-Use-Intel-LLVM-openmp.patch + # backport https://github.com/pytorch/pytorch/pull/174647 + - patches/0015-Fix-ICE-in-GCC-14-with-arm.patch + - if: cuda_compiler_version != "None" + then: + - patches/0016-for-win-CUDA-remove-USE_CUDA-guard-for-skip-in-compi.patch + - patches_submodules/tensorpipe/0001-switch-away-from-find_package-CUDA.patch + +build: + # We keep the original base build number and let variants + # influence the solver preference via variants / migrations. + number: ${{ base_build }} + +outputs: + # Core C++ library (matches v0 top-level package/libtorch) + - package: + name: libtorch + build: + dynamic_linking: + rpath_allowlist: + - "*/libcuda.so.*" + - "*/nvcuda.dll" + requirements: + # Keep this list synchronized (except for python*, numpy*) with the + # pytorch output below. We use python to build libtorch as well + # because it is easier. + build: + # When you change 3.12 here, change it in build.sh/bld.bat as well + - if: build_platform != target_platform + then: + - python 3.12.* + - cross-python_${{ target_platform }} + - numpy * + - ${{ stdlib("c") }} + - ${{ compiler("c") }} + - ${{ compiler("cxx") }} + - if: cuda_compiler_version != "None" + then: + - ${{ compiler("cuda") }} + - if: linux and aarch64 and cuda_compiler_version != "None" + then: + - arm-variant * ${{ arm_variant_type }} + - if: win + then: + - libuv + - llvm-openmp + - cmake + - ninja + # Keep libprotobuf here so that a compatibile version + # of protobuf is installed between build and host + - libprotobuf + - protobuf + - if: linux + then: + - make + - if: unix + then: + - grep + - rsync + host: + # GPU requirements + - if: cuda_compiler_version != "None" + then: + - cuda-cudart-dev + - cuda-cupti-dev + - cuda-nvml-dev + - cuda-nvrtc-dev + - cuda-nvtx-dev + - cuda-profiler-api + - cuda-version ${{ cuda_compiler_version }}.* + - cusparselt + - libcublas-dev + - libcudnn-dev + - libcudss-dev + - libcufft-dev + - libcurand-dev + - libcusolver-dev + - libcusparse-dev + - libmagma-devel + - nvtx-c + - if: linux and cuda_compiler_version != "None" + then: + - cuda-driver-dev + - libcufile-dev + - nccl + # other requirements + - python 3.12.* + - numpy * + - pip + - setuptools + - pyyaml + - requests + - six + - if: blas_impl == "mkl" + then: + - mkl-devel + - libcblas * *_mkl + - if: blas_impl != "mkl" + then: + - libblas + - libcblas + - liblapack + - libabseil + - libprotobuf + - llvm-openmp + - sleef + - libuv + - if: unix + then: + - pkg-config + - typing_extensions + - pybind11 + # see https://github.com/pytorch/pytorch/pull/175115 + - pybind11 <3.0.2 + - pybind11-abi + - eigen + - zlib + - fmt + - packaging + run: + - if: blas_impl == "mkl" + then: + - libblas * *mkl + run_constraints: + # https://github.com/conda-forge/pytorch-cpu-feedstock/issues/65 + - if: cuda_compiler_version == "None" + then: + - pytorch-cpu ==${{ version }} + - pytorch-gpu <0.0a0 + - if: cuda_compiler_version != "None" + then: + - pytorch-gpu ==${{ version }} + - pytorch-cpu <0.0a0 + # if using OpenBLAS, ensure that a version compatible with OpenMP is used + # otherwise, we get the following warnings: + # OpenBLAS Warning : Detect OpenMP Loop and this application may hang. Please rebuild the library with USE_OPENMP=1 option. + - if: unix and blas_impl != "mkl" + then: + - libopenblas * openmp_* + - openblas * openmp_* + ignore_run_exports: + from_package: + - python + - numpy + - cross-python_${{ target_platform }} + by_name: + - python + - numpy + run_exports: + - ${{ pin_subpackage("libtorch", upper_bound="x.x") }} + tests: + - requirements: + run: + # cmake needs a compiler to run package detection, see + # https://discourse.cmake.org/t/questions-about/find-package-cli-msvc/6194 + - ${{ compiler("cxx") }} + # for CMake config to find cuda & nvrtc + - if: cuda_compiler_version != "None" + then: + - ${{ compiler("cuda") }} + - cuda-nvrtc-dev + - nvtx-c + - cmake + - ninja + - pkg-config + script: + # Basic presence checks for key libraries + - if: linux + then: + - test -f $PREFIX/lib/libtorch.so + - test -f $PREFIX/lib/libtorch_cpu.so + - if: osx + then: + - test -f $PREFIX/lib/libtorch.dylib + - test -f $PREFIX/lib/libtorch_cpu.dylib + - if: win + then: + - if not exist %LIBRARY_BIN%\torch.dll exit 1 + - if not exist %LIBRARY_BIN%\torch_cpu.dll exit 1 + # CMake files in share + - if: linux + then: + - test -f $PREFIX/share/cmake/Torch/TorchConfig.cmake + - if: win + then: + - if not exist %LIBRARY_PREFIX%\share\cmake\Torch\TorchConfig.cmake exit 1 + # test integrity of CMake metadata + - if: unix + then: + - cd cmake_test + - cmake -GNinja -DCMAKE_CXX_STANDARD=17 $CMAKE_ARGS . + - if: win + then: + - cd cmake_test + - cmake -GNinja -DCMAKE_CXX_STANDARD=17 %CMAKE_ARGS% . + + # Main Python package + - package: + name: pytorch + build: + script: + - if: unix + then: + - ./build.sh + - if: win + then: + - ./bld.bat + requirements: + build: + - python + - if: build_platform != target_platform + then: + - cross-python_${{ target_platform }} + - numpy + - ${{ stdlib("c") }} + - ${{ compiler("c") }} + - ${{ compiler("cxx") }} + - if: cuda_compiler_version != "None" + then: + - ${{ compiler("cuda") }} + - if: linux and aarch64 and cuda_compiler_version != "None" + then: + - arm-variant * ${{ arm_variant_type }} + - cmake + - ninja + # Keep libprotobuf here so that a compatibile version + # of protobuf is installed between build and host + - libprotobuf + - protobuf + - if: linux + then: + - make + - if: win + then: + - sccache + host: + - ${{ pin_subpackage("libtorch", exact=True) }} + # GPU requirements + - if: cuda_compiler_version != "None" + then: + - cuda-cudart-dev + - cuda-cupti-dev + - cuda-nvml-dev + - cuda-nvrtc-dev + - cuda-nvtx-dev + - cuda-profiler-api + - cuda-version ${{ cuda_compiler_version }}.* + - cusparselt + - libcublas-dev + - libcudnn-dev + - libcudss-dev + - libcufft-dev + - libcurand-dev + - libcusolver-dev + - libcusparse-dev + - libmagma-devel + - nvtx-c + - if: linux and cuda_compiler_version != "None" + then: + - cuda-driver-dev + - libcufile-dev + - nccl + # other requirements + - python + - numpy + - pip + - setuptools + - pyyaml + - requests + - six + - if: blas_impl == "mkl" + then: + - mkl-devel + - libcblas * *_mkl + - if: blas_impl != "mkl" + then: + - libcblas + - liblapack + - libabseil + - libprotobuf + - llvm-openmp + - pybind11 + # see https://github.com/pytorch/pytorch/pull/175115 + - pybind11 <3.0.2 + - pybind11-abi + - eigen + - sleef + - libuv + - if: unix + then: + - pkg-config + - typing_extensions + - zlib + - fmt + - packaging + run: + - ${{ pin_subpackage("libtorch", exact=True) }} + - llvm-openmp + - if: blas_impl == "mkl" + then: + - libblas * *mkl + - if: blas_impl != "mkl" + then: + - nomkl + - if: cuda_compiler_version != "None" and not win + then: + - triton ==${{ triton }} + # avoid that people without GPUs needlessly download ~0.5-1GB + - if: cuda_compiler_version != "None" + then: + - __cuda + - python + # other requirements, see https://github.com/pytorch/pytorch/blame/main/requirements.txt + - filelock + - fsspec + - jinja2 + - 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 + # see https://github.com/conda-forge/sympy-feedstock/issues/67 + - mpmath <1.4 + run_constraints: + # https://github.com/conda-forge/pytorch-cpu-feedstock/issues/65 + - if: cuda_compiler_version == "None" + then: + - pytorch-cpu ==${{ version }} + - pytorch-gpu <0.0a0 + - if: cuda_compiler_version != "None" + then: + - pytorch-gpu ==${{ version }} + - pytorch-cpu <0.0a0 + ignore_run_exports: + by_name: + - libmagma_sparse + tests: + - python: + imports: + - torch + - torch._C + script: + - python -c "import torch; print(torch.__version__)" + - if: x86 and cuda_compiler_version == "None" + then: + - python -c "import torch; assert torch.backends.mkldnn.m.is_available()" + - python -c "import torch; torch.tensor(1).to('cpu').numpy(); print('numpy support enabled!!!')" + - python -c "import torch, numpy" + - python -c "import numpy, torch" + - python -c "import numpy as np, torch; x = torch.tensor([2], dtype=torch.complex128); res = torch.dot(x, x); assert res.real == 4.0, res" + - if: linux or osx + then: + - python -c "import torch; assert torch.distributed.is_available()" + - if: cuda_compiler_version != "None" + then: + - python -c "import torch; assert torch.backends.cuda.is_built()" + - python -c "import torch; assert torch.backends.cudnn.is_available()" + - python -c "import torch; assert torch.backends.cudnn.enabled" + - python -c "import torch; assert torch.version.cuda is not None" + + # Compatibility meta-packages mirroring the cpu / gpu naming scheme + - package: + name: pytorch-cpu + build: {} + requirements: + host: [] + run: + - pytorch ==${{ version }} + tests: + - python: + imports: + - torch + + - package: + name: pytorch-gpu + build: {} + requirements: + host: [] + run: + - pytorch ==${{ version }} + tests: + - python: + imports: + - torch + +about: + homepage: https://pytorch.org/ + repository: https://github.com/pytorch/pytorch + license: BSD-3-Clause + license_family: BSD + license_file: + - LICENSE + - NOTICE + - third_party/CMake/Copyright.txt + summary: PyTorch is an optimized tensor library for deep learning using GPUs and CPUs. + description: | + PyTorch is a Python package that provides two high-level features: + - Tensor computation (like NumPy) with strong GPU acceleration + - Deep neural networks built on a tape-based autograd system + You can reuse your favorite Python packages such as NumPy, SciPy, and Cython to extend PyTorch when needed. + documentation: https://pytorch.org/docs/ + +extra: + recipe-maintainers: + - baszalmstra + - benjaminrwilson + - beckermr + - h-vetinari + - hmaarrfk + - jeongseok-meta + - mgorny + - sodre + - Tobias-Fischer + feedstock-name: pytorch-cpu