summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--0001-Fix-illegal-opcode-bug-in-caffe2-40584.patch54
-rw-r--r--0002-disable-SVE-for-v1.6.0-due-to-sleef-build-error.patch29
-rw-r--r--pytorch.spec100
-rw-r--r--sources1
5 files changed, 185 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..2696f1d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -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
diff --git a/sources b/sources
new file mode 100644
index 0000000..f22d9fc
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+0c98b29051e839b8dd445adc21aa2eda pytorch-1.6.0-include-submodules.tar.bz2