From 5397440aa584cd3de2ef32f3bd5d55bc751942e3 Mon Sep 17 00:00:00 2001 From: zhangshaoning Date: Fri, 28 Feb 2025 13:51:50 +0800 Subject: [PATCH] Add third arch support --- ...atch => 0003-Add-arch-support-for-third_party.patch | 10 +++++----- pytorch.spec | 9 +++++---- 2 files changed, 10 insertions(+), 9 deletions(-) rename 0003-Add-loongarch64-support-for-third_party.patch => 0003-Add-arch-support-for-third_party.patch (92%) diff --git a/0003-Add-loongarch64-support-for-third_party.patch b/0003-Add-arch-support-for-third_party.patch similarity index 92% rename from 0003-Add-loongarch64-support-for-third_party.patch rename to 0003-Add-arch-support-for-third_party.patch index 1194431..e5ddce0 100644 --- a/0003-Add-loongarch64-support-for-third_party.patch +++ b/0003-Add-arch-support-for-third_party.patch @@ -20,7 +20,7 @@ index d65d32a3..4efaf582 100644 return cycles; #endif -#elif defined(__e2k__) || defined(__elbrus__) -+#elif defined(__e2k__) || defined(__elbrus__) || defined(__loongarch64) ++#elif defined(__e2k__) || defined(__elbrus__) || defined(__loongarch64) || defined(__mips__) || defined(__sw_64) struct timeval tv; gettimeofday(&tv, nullptr); return static_cast(tv.tv_sec) * 1000000 + tv.tv_usec; @@ -33,7 +33,7 @@ index 3b376ac5..b0a3c0cb 100644 gettimeofday(&tv, nullptr); return static_cast(tv.tv_sec) * 1000000 + tv.tv_usec; -#elif defined(__mips__) -+#elif defined(__mips__) || defined(__loongarch64) ++#elif defined(__mips__) || defined(__loongarch64) || defined(__sw_64) // mips apparently only allows rdtsc for superusers, so we fall // back to gettimeofday. It's possible clock_gettime would be better. struct timeval tv; @@ -46,7 +46,7 @@ index d65d32a3..4efaf582 100644 return cycles; #endif -#elif defined(__e2k__) || defined(__elbrus__) -+#elif defined(__e2k__) || defined(__elbrus__) || defined(__loongarch64) ++#elif defined(__e2k__) || defined(__elbrus__) || defined(__loongarch64) || defined(__mips__) || defined(__sw_64) struct timeval tv; gettimeofday(&tv, nullptr); return static_cast(tv.tv_sec) * 1000000 + tv.tv_usec; @@ -59,7 +59,7 @@ index 4251fe4c..694e03dc 100644 gettimeofday(&tv, nullptr); return static_cast(tv.tv_sec) * 1000000 + tv.tv_usec; -#elif defined(__mips__) -+#elif defined(__mips__) || defined(__loongarch64) ++#elif defined(__mips__) || defined(__loongarch64) || defined(__sw_64) // mips apparently only allows rdtsc for superusers, so we fall // back to gettimeofday. It's possible clock_gettime would be better. struct timeval tv; @@ -72,7 +72,7 @@ index e77e518f..a8c96e3b 100644 //@#define ENABLE_FMA_SP -#if defined(__AVX2__) || defined(__aarch64__) || defined(__arm__) || defined(__powerpc64__) || defined(__zarch__) || CONFIG == 3 -+#if defined(__AVX2__) || defined(__aarch64__) || defined(__arm__) || defined(__powerpc64__) || defined(__zarch__) || defined(__loongarch64) || CONFIG == 3 ++#if defined(__AVX2__) || defined(__aarch64__) || defined(__arm__) || defined(__powerpc64__) || defined(__zarch__) || defined(__loongarch64) || defined(__mips__) || defined(__sw_64) || CONFIG == 3 #ifndef FP_FAST_FMA #define FP_FAST_FMA //@#define FP_FAST_FMA diff --git a/pytorch.spec b/pytorch.spec index 27eda9b..b238e1d 100644 --- a/pytorch.spec +++ b/pytorch.spec @@ -1,7 +1,7 @@ %global _empty_manifest_terminate_build 0 Name: pytorch Version: 2.1.2 -Release: 5 +Release: 6 Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration License: BSD-3-Clause URL: https://pytorch.org/ @@ -9,9 +9,7 @@ Source0: https://github.com/pytorch/pytorch/releases/download/v%{version}/pytorc Patch1: 0001-add-Wno-error-nonnull-for-test-cpp-api.patch Patch2: 0001-Fix-for-PyTorch-mobile-flatbuffer-loader-out-of-bounds-reads.patch -%ifarch loongarch64 -Patch3: 0003-Add-loongarch64-support-for-third_party.patch -%endif +Patch3: 0003-Add-arch-support-for-third_party.patch %ifarch riscv64 Patch4: 0004-Fix-build-error-for-riscv64.patch %endif @@ -94,6 +92,9 @@ mv %{buildroot}/doclist.lst . %{_docdir}/* %changelog +* Fri Feb 28 2025 zhangshaoning - 2.1.2-6 +- Add third arch support + * Wed Jul 17 2024 Dingli Zhang - 2.1.2-5 - Fix build error for riscv64 -- Gitee