python3Packages.pytorch: fix AArch64 build
aarch64-linux builds fail because of the use of opcodes in QNNPACK that the GNU assembpler does not support. This change cherry-picks an upstream patch that fixes this. See: https://github.com/pytorch/pytorch/issues/33124 https://github.com/pytorch/pytorch/pull/40584
This commit is contained in:
parent
d144f2dfda
commit
5c80cdeb1a
1 changed files with 15 additions and 0 deletions
|
@ -121,6 +121,21 @@ in buildPythonPackage rec {
|
||||||
sha256 = "1xjbn4hi96m7xslv3p2jc6qcsng0fx3w1m6isqfah81piljf8wng";
|
sha256 = "1xjbn4hi96m7xslv3p2jc6qcsng0fx3w1m6isqfah81piljf8wng";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = lib.optionals stdenv.isAarch64 [
|
||||||
|
# GNU aarch64 assembler does not support 4s on neon mov:
|
||||||
|
# https://github.com/pytorch/pytorch/issues/33124
|
||||||
|
#
|
||||||
|
# Fix from:
|
||||||
|
# https://github.com/pytorch/pytorch/pull/40584
|
||||||
|
#
|
||||||
|
# This patch can be removed with the next major version (1.6.0).
|
||||||
|
(fetchpatch {
|
||||||
|
name = "qnnpack-neon-fix.patch";
|
||||||
|
url = "https://github.com/pytorch/pytorch/commit/7676682584d0caf9243bce74ea0a88711ec4a807.diff";
|
||||||
|
sha256 = "13spncaqlpsp8qk2850yly7xqwmhhfwznhmzkk8jgpslkbx75vgq";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
preConfigure = lib.optionalString cudaSupport ''
|
preConfigure = lib.optionalString cudaSupport ''
|
||||||
export TORCH_CUDA_ARCH_LIST="${lib.strings.concatStringsSep ";" final_cudaArchList}"
|
export TORCH_CUDA_ARCH_LIST="${lib.strings.concatStringsSep ";" final_cudaArchList}"
|
||||||
export CC=${cudatoolkit.cc}/bin/gcc CXX=${cudatoolkit.cc}/bin/g++
|
export CC=${cudatoolkit.cc}/bin/gcc CXX=${cudatoolkit.cc}/bin/g++
|
||||||
|
|
Loading…
Reference in a new issue