Unverified Commit 007f41bf authored by Pol Dellaiera's avatar Pol Dellaiera Committed by GitHub
Browse files

Merge pull request #306749 from GaetanLepage/pytorch

python3Packages.{torch,torch-bin}: 2.2.2 -> 2.3.0
parents aff33c6a d3454a2a
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -25,7 +25,7 @@ let
  pyVerNoDot = builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion;
  srcs = import ./binary-hashes.nix version;
  unsupported = throw "Unsupported system";
  version = "2.2.2";
  version = "2.3.0";
in buildPythonPackage {
  inherit version;

@@ -34,7 +34,7 @@ in buildPythonPackage {

  format = "wheel";

  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.12");
  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.13");

  src = fetchurl srcs."${stdenv.system}-${pyVerNoDot}" or unsupported;

@@ -109,7 +109,7 @@ in buildPythonPackage {
    # torch-bin used to vendor CUDA. It still links against CUDA and MKL.
    license = with licenses; [ bsd3 issl unfreeRedistributable ];
    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
    platforms = [ "aarch64-darwin" "aarch64-linux" "x86_64-darwin" "x86_64-linux" ];
    platforms = [ "aarch64-darwin" "aarch64-linux" "x86_64-linux" ];
    hydraPlatforms = []; # output size 3.2G on 1.11.0
    maintainers = with maintainers; [ junjihashimoto ];
  };
+51 −56
Original line number Diff line number Diff line
@@ -6,86 +6,81 @@
# To add a new version, run "prefetch.sh 'new-version'" to paste the generated file as follows.

version : builtins.getAttr version {
  "2.2.2" = {
  "2.3.0" = {
    x86_64-linux-38 = {
      name = "torch-2.2.2-cp38-cp38-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.2.2%2Bcu121-cp38-cp38-linux_x86_64.whl";
      hash = "sha256-wXi+srsB93NgF3e8SBx2Ub5bHxic8YDwwKzqwHiaqaU=";
      name = "torch-2.3.0-cp38-cp38-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp38-cp38-linux_x86_64.whl";
      hash = "sha256-lZi5WfVk7j6+NgOwugHSQXTKgBb+ypgQTwMB8UkGF8o=";
    };
    x86_64-linux-39 = {
      name = "torch-2.2.2-cp39-cp39-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.2.2%2Bcu121-cp39-cp39-linux_x86_64.whl";
      hash = "sha256-EU6TlYZ+6GAWZWLYzB8oCSJfnil4PdXnIXXZqaeoUFw=";
      name = "torch-2.3.0-cp39-cp39-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp39-cp39-linux_x86_64.whl";
      hash = "sha256-PMFeTCaCqFUYEhogUNa+eXbZj8SEO7wTtvW+4nWhtu4=";
    };
    x86_64-linux-310 = {
      name = "torch-2.2.2-cp310-cp310-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.2.2%2Bcu121-cp310-cp310-linux_x86_64.whl";
      hash = "sha256-yt5P1sjOfYJtvPq9ZfHVOw7goFjbjBgJ1lv9YFG1VTA=";
      name = "torch-2.3.0-cp310-cp310-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp310-cp310-linux_x86_64.whl";
      hash = "sha256-ChKqmqa8RC3/iCOsi0jZkf0HcVYuqjhZP5yBltZfcAc=";
    };
    x86_64-linux-311 = {
      name = "torch-2.2.2-cp311-cp311-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.2.2%2Bcu121-cp311-cp311-linux_x86_64.whl";
      hash = "sha256-TJTk0aItcKu9/3Ft7Jm6Xv+UtDQP+nO0+2KflA27inU=";
    };
    x86_64-darwin-38 = {
      name = "torch-2.2.2-cp38-none-macosx_10_9_x86_64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp38-none-macosx_10_9_x86_64.whl";
      hash = "sha256-gVF29iyPN8z7shCBwHaaiLG6pptxaRGapCtl7l8QTi0=";
    };
    x86_64-darwin-39 = {
      name = "torch-2.2.2-cp39-none-macosx_10_9_x86_64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp39-none-macosx_10_9_x86_64.whl";
      hash = "sha256-8TdigY3CgP7KfjD2CZWhe6jR0asz/vttB/0sj/FXHqo=";
    };
    x86_64-darwin-310 = {
      name = "torch-2.2.2-cp310-none-macosx_10_9_x86_64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp310-none-macosx_10_9_x86_64.whl";
      hash = "sha256-5nfE102wz8KxCSPeG95XXZgculRQXdwIKwUI2WQRmFA=";
    };
    x86_64-darwin-311 = {
      name = "torch-2.2.2-cp311-none-macosx_10_9_x86_64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp311-none-macosx_10_9_x86_64.whl";
      hash = "sha256-QwDLu00EKMUbXBlBkBaQGNW4GP2fb6/Ci76P2E3tF0A=";
      name = "torch-2.3.0-cp311-cp311-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp311-cp311-linux_x86_64.whl";
      hash = "sha256-XffjyzlhAYqJHk7e8eC8HzMEqNlD+BskqMa/aHykmmc=";
    };
    x86_64-linux-312 = {
      name = "torch-2.3.0-cp312-cp312-linux_x86_64.whl";
      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp312-cp312-linux_x86_64.whl";
      hash = "sha256-8VtvVJ7rxuayKyZ1Tk8dfkRpvNLUuh6qtXJorYC8ypY=";
    };
    aarch64-darwin-38 = {
      name = "torch-2.2.2-cp38-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp38-none-macosx_11_0_arm64.whl";
      hash = "sha256-7RTSpDZEIEkDg9JveQCj99XFDDLlzf3d3/+Dd22eD9Q=";
      name = "torch-2.3.0-cp38-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp38-none-macosx_11_0_arm64.whl";
      hash = "sha256-aun2SwlRa6pO+JCvBnLcmBwgsfDYKc4RXUQgokfoj7o=";
    };
    aarch64-darwin-39 = {
      name = "torch-2.2.2-cp39-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp39-none-macosx_11_0_arm64.whl";
      hash = "sha256-/q2//ddjTP40Xqh9fuQDGzAPnHZFIFkOA0idZYtpMds=";
      name = "torch-2.3.0-cp39-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp39-none-macosx_11_0_arm64.whl";
      hash = "sha256-dg+L7f9QbOnm4QNJj5senhWAngCDaFlMOma/dKilE4A=";
    };
    aarch64-darwin-310 = {
      name = "torch-2.2.2-cp310-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp310-none-macosx_11_0_arm64.whl";
      hash = "sha256-tSDRTS8oEK1dp1i+oQyveXjvNkNWW8APkN6JLgDXeSU=";
      name = "torch-2.3.0-cp310-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp310-none-macosx_11_0_arm64.whl";
      hash = "sha256-dY75ON6HomU7unS5H3A0WMFVafFWK/S2xjxi2cWgwfU=";
    };
    aarch64-darwin-311 = {
      name = "torch-2.2.2-cp311-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp311-none-macosx_11_0_arm64.whl";
      hash = "sha256-gipYlnXLqKzwRX1qTltspEGtO0w6RKHLyPizGueWRF4=";
      name = "torch-2.3.0-cp311-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp311-none-macosx_11_0_arm64.whl";
      hash = "sha256-0k4ygibY4q98+A/LHS8dEI4N4yd3+rSqorN7l2XYvnM=";
    };
    aarch64-darwin-312 = {
      name = "torch-2.3.0-cp312-none-macosx_11_0_arm64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp312-none-macosx_11_0_arm64.whl";
      hash = "sha256-3KmGIUJns0Blp5AAzuVCMuYrQd/x7Cyrmrw/yLPe4K0=";
    };
    aarch64-linux-38 = {
      name = "torch-2.2.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-mJTc3W71tbYDzYzqPjcR+eJ3CC/3sPFLFSb90ay4JSE=";
      name = "torch-2.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-RunxqfQgKcBuY/v5yXE0PYsqCIZyO8T/McZ6m3pHNXM=";
    };
    aarch64-linux-39 = {
      name = "torch-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-1dhev9E/fNA+UGMlP4R57RpXBSZBZtXdH8abS5YjGyA=";
      name = "torch-2.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-N7zdkm811ccvGm0oIpczJEuyZTqPp3nEwQ3ZfjMNa6I=";
    };
    aarch64-linux-310 = {
      name = "torch-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-OiwHUhgIHvnHv4xVxwbyNtrrt1PaQd5JispxYyVzgL0=";
      name = "torch-2.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-fiTBOMO6zIxRHGuCEfCcO/VH08vjdWMhrOwb3OQP7Gs=";
    };
    aarch64-linux-311 = {
      name = "torch-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-WUgt9dxA2uEF5z9I3Sk/TMxndkCCLCzjQnOjh1SZA64=";
      name = "torch-2.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-FHmS068B4/KncqaId+iTeYnlfEIluCpJidPNlYLIvNE=";
    };
    aarch64-linux-312 = {
      name = "torch-2.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
      hash = "sha256-bhOCYa8GzZAqgmUmCCreU0tmCTudj2/y1AHOQ5qiNQw=";
    };
  };
}
+4 −4
Original line number Diff line number Diff line
{ stdenv, lib, fetchFromGitHub, fetchpatch, buildPythonPackage, python,
{ stdenv, lib, fetchFromGitHub, buildPythonPackage, python,
  config, cudaSupport ? config.cudaSupport, cudaPackages,
  autoAddDriverRunpath,
  effectiveMagma ?
@@ -14,7 +14,7 @@
  buildDocs ? false,

  # Native build inputs
  cmake, linkFarm, symlinkJoin, which, pybind11, removeReferencesTo,
  cmake, symlinkJoin, which, pybind11, removeReferencesTo,
  pythonRelaxDepsHook,

  # Build inputs
@@ -130,7 +130,7 @@ let
in buildPythonPackage rec {
  pname = "torch";
  # Don't forget to update torch-bin to the same version.
  version = "2.2.2";
  version = "2.3.0";
  pyproject = true;

  disabled = pythonOlder "3.8.0";
@@ -148,7 +148,7 @@ in buildPythonPackage rec {
    repo = "pytorch";
    rev = "refs/tags/v${version}";
    fetchSubmodules = true;
    hash = "sha256-la9wL9pOlgrSfq5V8aRKXt3hjW+Er/6484m0oUujlzk=";
    hash = "sha256-UmH4Mv5QL7Mz4Y4pvxn8F1FGBR/UzYZjE2Ys8Oc0FWQ=";
  };

  patches = lib.optionals cudaSupport [
+3 −4
Original line number Diff line number Diff line
@@ -15,18 +15,17 @@ url_and_key_list=(
  "x86_64-linux-39 $linux_cuda_bucket/torch-${version}%2B${linux_cuda_version}-cp39-cp39-linux_x86_64.whl torch-${version}-cp39-cp39-linux_x86_64.whl"
  "x86_64-linux-310 $linux_cuda_bucket/torch-${version}%2B${linux_cuda_version}-cp310-cp310-linux_x86_64.whl torch-${version}-cp310-cp310-linux_x86_64.whl"
  "x86_64-linux-311 $linux_cuda_bucket/torch-${version}%2B${linux_cuda_version}-cp311-cp311-linux_x86_64.whl torch-${version}-cp311-cp311-linux_x86_64.whl"
  "x86_64-darwin-38 $darwin_bucket/torch-${version}-cp38-none-macosx_10_9_x86_64.whl torch-${version}-cp38-none-macosx_10_9_x86_64.whl"
  "x86_64-darwin-39 $darwin_bucket/torch-${version}-cp39-none-macosx_10_9_x86_64.whl torch-${version}-cp39-none-macosx_10_9_x86_64.whl"
  "x86_64-darwin-310 $darwin_bucket/torch-${version}-cp310-none-macosx_10_9_x86_64.whl torch-${version}-cp310-none-macosx_10_9_x86_64.whl"
  "x86_64-darwin-311 $darwin_bucket/torch-${version}-cp311-none-macosx_10_9_x86_64.whl torch-${version}-cp311-none-macosx_10_9_x86_64.whl"
  "x86_64-linux-312 $linux_cuda_bucket/torch-${version}%2B${linux_cuda_version}-cp312-cp312-linux_x86_64.whl torch-${version}-cp312-cp312-linux_x86_64.whl"
  "aarch64-darwin-38 $darwin_bucket/torch-${version}-cp38-none-macosx_11_0_arm64.whl torch-${version}-cp38-none-macosx_11_0_arm64.whl"
  "aarch64-darwin-39 $darwin_bucket/torch-${version}-cp39-none-macosx_11_0_arm64.whl torch-${version}-cp39-none-macosx_11_0_arm64.whl"
  "aarch64-darwin-310 $darwin_bucket/torch-${version}-cp310-none-macosx_11_0_arm64.whl torch-${version}-cp310-none-macosx_11_0_arm64.whl"
  "aarch64-darwin-311 $darwin_bucket/torch-${version}-cp311-none-macosx_11_0_arm64.whl torch-${version}-cp311-none-macosx_11_0_arm64.whl"
  "aarch64-darwin-312 $darwin_bucket/torch-${version}-cp312-none-macosx_11_0_arm64.whl torch-${version}-cp312-none-macosx_11_0_arm64.whl"
  "aarch64-linux-38 $linux_cpu_bucket/torch-${version}-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
  "aarch64-linux-39 $linux_cpu_bucket/torch-${version}-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
  "aarch64-linux-310 $linux_cpu_bucket/torch-${version}-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
  "aarch64-linux-311 $linux_cpu_bucket/torch-${version}-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
  "aarch64-linux-312 $linux_cpu_bucket/torch-${version}-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
)

hashfile="binary-hashes-$version.nix"
+14 −14
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@

buildPythonPackage rec {
  pname = "torchaudio";
  version = "2.2.2";
  version = "2.3.0";
  format = "wheel";

  src =
@@ -27,9 +27,15 @@ buildPythonPackage rec {
    in
    fetchurl srcs;

  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.12");
  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.13");

  buildInputs = with cudaPackages; [
  buildInputs = [
    # We need to patch the lib/_torchaudio_ffmpeg[4-6]
    ffmpeg_4.dev
    ffmpeg_5.dev
    ffmpeg_6.dev
    sox
  ] ++ lib.optionals stdenv.isLinux (with cudaPackages; [
    # $out/${sitePackages}/torchaudio/lib/libtorchaudio*.so wants libcudart.so.11.0 but torch/lib only ships
    # libcudart.$hash.so.11.0
    cuda_cudart
@@ -37,24 +43,18 @@ buildPythonPackage rec {
    # $out/${sitePackages}/torchaudio/lib/libtorchaudio*.so wants libnvToolsExt.so.2 but torch/lib only ships
    # libnvToolsExt-$hash.so.1
    cuda_nvtx
  ]);

    # We need to patch the lib/_torchaudio_ffmpeg[4-6]
    ffmpeg_4.dev
    ffmpeg_5.dev
    ffmpeg_6.dev
    sox
  ];

  nativeBuildInputs = [
  nativeBuildInputs = lib.optionals stdenv.isLinux [
    autoPatchelfHook
    addOpenGLRunpath
  ];

  propagatedBuildInputs = [
  dependencies = [
    torch-bin
  ];

  preInstall = ''
  preInstall = lib.optionals stdenv.isLinux ''
    addAutoPatchelfSearchPath "${torch-bin}/${python.sitePackages}/torch"
  '';

@@ -72,7 +72,7 @@ buildPythonPackage rec {
    # https://www.intel.com/content/www/us/en/developer/articles/license/onemkl-license-faq.html
    license = licenses.bsd3;
    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
    platforms = [ "aarch64-linux" "x86_64-linux" "aarch64-darwin" "x86_64-darwin" ];
    platforms = [ "aarch64-linux" "x86_64-linux" "aarch64-darwin" ];
    maintainers = with maintainers; [ junjihashimoto ];
  };
}
Loading