diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | 0001-Fix-illegal-opcode-bug-in-caffe2-40584.patch | 54 | ||||
-rw-r--r-- | 0002-disable-SVE-for-v1.6.0-due-to-sleef-build-error.patch | 29 | ||||
-rw-r--r-- | pytorch.spec | 100 | ||||
-rw-r--r-- | sources | 1 |
5 files changed, 185 insertions, 0 deletions
@@ -0,0 +1 @@ +/pytorch-1.6.0-include-submodules.tar.bz2 diff --git a/0001-Fix-illegal-opcode-bug-in-caffe2-40584.patch b/0001-Fix-illegal-opcode-bug-in-caffe2-40584.patch new file mode 100644 index 0000000..5fef70d --- /dev/null +++ b/0001-Fix-illegal-opcode-bug-in-caffe2-40584.patch @@ -0,0 +1,54 @@ +From 7676682584d0caf9243bce74ea0a88711ec4a807 Mon Sep 17 00:00:00 2001 +From: Mitchell Spryn <mspryn@fb.com> +Date: Fri, 26 Jun 2020 11:08:56 -0700 +Subject: [PATCH] Fix illegal opcode bug in caffe2 (#40584) + +Summary: +Pull Request resolved: https://github.com/pytorch/pytorch/pull/40584 + +Also patch [this github issue](https://github.com/pytorch/pytorch/issues/33124) +involving an illegal assembly instruction in 8x8-dq-aarch64-neon.S. + +Test Plan: +Build binaries, copy to shaker, run executables. Also run all +existing caffe tests. + +Reviewed By: kimishpatel + +Differential Revision: D22240670 + +fbshipit-source-id: 51960266ce58699fe6830bcf75632b92a122f638 +--- + .../cpu/qnnpack/src/q8gemm/8x8-dq-aarch64-neon.S | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/8x8-dq-aarch64-neon.S b/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/8x8-dq-aarch64-neon.S +index 7a67c6d401..b8bde02006 100644 +--- a/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/8x8-dq-aarch64-neon.S ++++ b/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/8x8-dq-aarch64-neon.S +@@ -687,14 +687,14 @@ BEGIN_FUNCTION pytorch_q8gemm_dq_ukernel_8x8__aarch64_neon + + SUB x1, x1, 4 + +- MOV V8.4s, V9.4s +- MOV v10.4s, v11.4s +- MOV v12.4s, V13.4s +- MOV V14.4s, V15.4s +- MOV V16.4s, V17.4s +- MOV V18.4s, V19.4s +- MOV V20.4s, V21.4s +- MOV V22.4s, V23.4s ++ MOV V8.16b, V9.16b ++ MOV v10.16b, v11.16b ++ MOV v12.16b, V13.16b ++ MOV V14.16b, V15.16b ++ MOV V16.16b, V17.16b ++ MOV V18.16b, V19.16b ++ MOV V20.16b, V21.16b ++ MOV V22.16b, V23.16b + + 5: + CMP x1, 2 +-- +2.18.4 + diff --git a/0002-disable-SVE-for-v1.6.0-due-to-sleef-build-error.patch b/0002-disable-SVE-for-v1.6.0-due-to-sleef-build-error.patch new file mode 100644 index 0000000..c035b2a --- /dev/null +++ b/0002-disable-SVE-for-v1.6.0-due-to-sleef-build-error.patch @@ -0,0 +1,29 @@ +From 9fa24f75ca24761183ea2fe664744f2284007e3f Mon Sep 17 00:00:00 2001 +From: Zhipeng Xie <xiezhipeng1@huawei.com> +Date: Wed, 3 Feb 2021 10:22:31 -0500 +Subject: [PATCH] disable SVE for v1.6.0 due to sleef build error. + +sleef build error due to SVE not fully supported, so +disable it temporarily. + +Signed-off-by: Zhipeng Xie <xiezhipeng1@huawei.com> +--- + third_party/sleef/Configure.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/sleef/Configure.cmake b/third_party/sleef/Configure.cmake +index 25fc675e..02c364d2 100644 +--- a/third_party/sleef/Configure.cmake ++++ b/third_party/sleef/Configure.cmake +@@ -545,7 +545,7 @@ endif() + + # SVE + +-option(DISABLE_SVE "Disable SVE" OFF) ++option(DISABLE_SVE "Disable SVE" ON) + option(ENFORCE_SVE "Build fails if SVE is not supported by the compiler" OFF) + + if(SLEEF_ARCH_AARCH64 AND NOT DISABLE_SVE) +-- +2.27.0 + diff --git a/pytorch.spec b/pytorch.spec new file mode 100644 index 0000000..8ddeac8 --- /dev/null +++ b/pytorch.spec @@ -0,0 +1,100 @@ +%global _empty_manifest_terminate_build 0 +Name: pytorch +Version: 1.6.0 +Release: 4 +Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration +License: BSD-3 +URL: https://pytorch.org/ +#sh -x updateSource.sh +Source0: pytorch-%{version}-include-submodules.tar.bz2 + +Patch0001: 0001-Fix-illegal-opcode-bug-in-caffe2-40584.patch +Patch0002: 0002-disable-SVE-for-v1.6.0-due-to-sleef-build-error.patch + +BuildRequires: g++ +Requires: python3-future +Requires: python3-numpy + +%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. + +%package -n python3-pytorch +Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration +Provides: python-torch +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pyyaml +BuildRequires: cmake +BuildRequires: make +BuildRequires: python3-numpy + +%description -n python3-pytorch +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. + +%package help +Summary: Development documents and examples for torch +Provides: python3-pytorch-doc +%description help +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. + +%prep +%autosetup -p1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-pytorch -f filelist.lst +%dir %{python3_sitearch}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Dec 26 2022 wangdongxing <dxwangk@isoftstone.com> - 1.6.0-4 +- fixes: error: add build requires make for compile local + +* Mon Jun 28 2021 wulei <wulei80@huawei.com> - 1.6.0-3 +- fixes: error: the CXX compiler identification is unknown + +* Thu Feb 4 2021 Zhipeng Xie<xiezhipeng1@huawei.com> - 1.6.0-2 +- disable SVE to fix compile error in gcc 9 + +* Sun Sep 27 2020 Zhipeng Xie<xiezhipeng1@huawei.com> - 1.6.0-1 +- Package init @@ -0,0 +1 @@ +0c98b29051e839b8dd445adc21aa2eda pytorch-1.6.0-include-submodules.tar.bz2 |