Linux (ARM processor) app and alternatives

Message boards : Number crunching : Linux (ARM processor) app and alternatives
Message board moderation

To post messages, you must log in.

Previous · 1 . . . 3 · 4 · 5 · 6 · 7 · 8 · Next

AuthorMessage
sorcrosc
Volunteer tester

Send message
Joined: 13 Dec 08
Posts: 3
Credit: 2,374,066
RAC: 0
Italy
Message 1848400 - Posted: 12 Feb 2017, 22:47:54 UTC - in response to Message 1848398.  

Thanks Raistmer. What about targeting v7 instead of v6?
ID: 1848400 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1848401 - Posted: 12 Feb 2017, 22:51:46 UTC - in response to Message 1848400.  
Last modified: 12 Feb 2017, 22:52:52 UTC

Thanks Raistmer. What about targeting v7 instead of v6?

Well, 8.04 not my build so "ideally" doesn't mean it's really how it is (cause I just don't know how it is in 8.04)
Maybe worth to get 2 binaries instead of one if performance gain for newer chips is great enough.
As I understand v7 has different ISA than v6? Then it can be the reason of failure too, not just NEON...
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1848401 · Report as offensive
sorcrosc
Volunteer tester

Send message
Joined: 13 Dec 08
Posts: 3
Credit: 2,374,066
RAC: 0
Italy
Message 1848403 - Posted: 12 Feb 2017, 23:17:17 UTC - in response to Message 1848401.  

Ok, I tried 8.02 from seti which reports v7 target and neon too, and it works. Sorry for my useless intrusion :)
ID: 1848403 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1848419 - Posted: 13 Feb 2017, 0:30:28 UTC

KWSN-Linux-MBbench v3.0 cache-keeping edition
Running on parallella at Sun 12 Feb 2017 04:27:15 PM UTC
----------------------------------------------------------------
Starting benchmark run...
----------------------------------------------------------------
Suspending BOINC
Listing wu-file(s) in /testWUs :
#WisGen1_v8.wu
#WisGen2_v8.wu
PG0009_tiny_v8.wu
PG0395_tiny_v8.wu
PG0444_tiny_v8.wu
PG1327_tiny_v8.wu

Listing executable(s) in /APPS :
setiathome_8.02_arm-unknown-linux-gnueabihf

Listing executable in /REF_APPS :
setiathome_8.02_arm-unknown-linux-gnueabihf
----------------------------------------------------------------
Current WU: #WisGen1_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 43 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 44.24 sec 39.16 sec 2.34 sec
Elapsed Time : ...................... 44 seconds
Speed compared to default : ......... 97 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 100.0%

----------------------------------------------------------------
Done with #WisGen1_v8.wu

====================================================================
Current WU: #WisGen2_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 41 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 41.41 sec 36.57 sec 2.78 sec
Elapsed Time : ...................... 42 seconds
Speed compared to default : ......... 97 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 100.0%

----------------------------------------------------------------
Done with #WisGen2_v8.wu

====================================================================
Current WU: PG0009_tiny_v8.wu

----------------------------------------------------------------
Running default app with command :... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 1973.78 sec 1955.63 sec 15.77 sec
Elapsed Time: ....................... 1974 seconds

----------------------------------------------------------------
Running app with command : .......... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 1968.85 sec 1949.63 sec 17.09 sec
Elapsed Time : ...................... 1969 seconds
Speed compared to default : ......... 100 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 100.0%

----------------------------------------------------------------
Done with PG0009_tiny_v8.wu

====================================================================
Current WU: PG0395_tiny_v8.wu

----------------------------------------------------------------
Running default app with command :... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 2281.79 sec 2262.67 sec 16.98 sec
Elapsed Time: ....................... 2282 seconds

----------------------------------------------------------------
Running app with command : .......... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 2317.32 sec 2298.56 sec 16.55 sec
Elapsed Time : ...................... 2318 seconds
Speed compared to default : ......... 98 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 100.0%

----------------------------------------------------------------
Done with PG0395_tiny_v8.wu

====================================================================
Current WU: PG0444_tiny_v8.wu

----------------------------------------------------------------
Running default app with command :... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 2139.51 sec 2118.51 sec 16.86 sec
Elapsed Time: ....................... 2139 seconds

----------------------------------------------------------------
Running app with command : .......... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 2119.59 sec 2098.61 sec 17.04 sec
Elapsed Time : ...................... 2119 seconds
Speed compared to default : ......... 100 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 100.0%

----------------------------------------------------------------
Done with PG0444_tiny_v8.wu

====================================================================
Current WU: PG1327_tiny_v8.wu

----------------------------------------------------------------
Running default app with command :... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 2439.85 sec 2399.87 sec 36.05 sec
Elapsed Time: ....................... 2439 seconds

----------------------------------------------------------------
Running app with command : .......... setiathome_8.02_arm-unknown-linux-gnueabihf -verb
./setiathome_8.02_arm-unknown-linux-gnueabihf -verb 2433.24 sec 2394.51 sec 34.89 sec
Elapsed Time : ...................... 2433 seconds
Speed compared to default : ......... 100 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 100.0%

----------------------------------------------------------------
Done with PG1327_tiny_v8.wu

====================================================================
Hosts CPU data ...
model name	: ARMv7 Processor rev 0 (v7l)

Done with Benchmark run! Removing temporary files!
Resuming BOINC


These "tiny" more manageable for such slow devices.
Next will be test with verbose new ones.
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1848419 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 13,255,975
RAC: 6
United States
Message 1848453 - Posted: 13 Feb 2017, 2:52:31 UTC

The errors on ARMv6 devices (Raspberry Pi 1s and Zeros) might be FFTW 3.3.6-pl1. 8.02 and 8.03 are built against the Debian repository FFTW library which includes automatic testing for if NEON is present. If NEON is present, it uses it. It looks like this is in FFTW 3.3.6-pl1, but maybe it is not. I will look to see if the Debian package has a patch that does this.
ID: 1848453 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 13,255,975
RAC: 6
United States
Message 1848464 - Posted: 13 Feb 2017, 4:05:05 UTC - in response to Message 1848453.  

The errors on ARMv6 devices (Raspberry Pi 1s and Zeros) might be FFTW 3.3.6-pl1. 8.02 and 8.03 are built against the Debian repository FFTW library which includes automatic testing for if NEON is present. If NEON is present, it uses it. It looks like this is in FFTW 3.3.6-pl1, but maybe it is not. I will look to see if the Debian package has a patch that does this.


The Debian package has a patch for FFTW that does proper NEON run-time detection. I've applied it and will test it to see if it works on my Raspberry Pi 1.
ID: 1848464 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 13,255,975
RAC: 6
United States
Message 1848468 - Posted: 13 Feb 2017, 4:26:18 UTC

If you are building this app, this is the Debian patch for fftw-3.3.6-pl1/simd-support/neon.c:

Description: Fix runtime detection of NEON support on armhf and arm64
Author: Edmund Grimley Evans <edmund.grimley.evans@gmail.com>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=767138
Forwarded: no
Reviewed-by: Sébastien Villemot <sebastien@debian.org>
Last-Update: 2016-09-20
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/simd-support/neon.c
+++ b/simd-support/neon.c
@@ -23,54 +23,45 @@
 
 #if HAVE_NEON
 
-/* check for an environment where signals are known to work */
-#if defined(unix) || defined(linux)
-  # include <signal.h>
-  # include <setjmp.h>
-
-  static jmp_buf jb;
-
-  static void sighandler(int x)
-  {
-       UNUSED(x);
-       longjmp(jb, 1);
-  }
-
-  static int really_have_neon(void)
-  {
-       void (*oldsig)(int);
-       oldsig = signal(SIGILL, sighandler);
-       if (setjmp(jb)) {
-	    signal(SIGILL, oldsig);
-	    return 0;
-       } else {
-	    /* paranoia: encode the instruction in binary because the
-	       assembler may not recognize it without -mfpu=neon */
-	    /*asm volatile ("vand q0, q0, q0");*/
-	    asm volatile (".long 0xf2000150");
-	    signal(SIGILL, oldsig);
-	    return 1;
-       }
-  }
-
-  int X(have_simd_neon)(void)
-  {
-       static int init = 0, res;
-
-       if (!init) {
-	    res = really_have_neon();
-	    init = 1;
-       }
-       return res;
-  }
+#ifdef __linux__
 
+#ifdef __aarch64__
+
+/* HWCAP_ASIMD is defined in <asm/hwcap.h> but not included by <sys/auxv.h>.
+   Since all current AArch64 implementations have NEON/ASIMD it is probably
+   better to return 1 than include a header file which is not intended for
+   use by user programs. */
+
+int X(have_simd_neon)(void)
+{
+  return 1;
+}
 
 #else
-/* don't know how to autodetect NEON; assume it is present */
-  int X(have_simd_neon)(void)
-  {
-       return 1;
-  }
+
+#include <sys/auxv.h>
+
+int X(have_simd_neon)(void)
+{
+  static int cached = 2;
+  int ret;
+
+  /* This should be thread-safe in all reasonable circumstances. */
+  ret = cached;
+  if (ret == 2)
+    {
+      ret = !!(getauxval(AT_HWCAP) & HWCAP_ARM_NEON);
+      cached = ret;
+    }
+  return ret;
+}
+
+#endif
+
+#else
+
+#error Please implement a run-time test for NEON/ASIMD for your platform.
+
 #endif
 
 #endif
ID: 1848468 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 13,255,975
RAC: 6
United States
Message 1848516 - Posted: 13 Feb 2017, 14:13:18 UTC - in response to Message 1848468.  

Success! This patch makes it so it runs correctly on a Raspberry Pi 1 (ARMv6 - no NEON).
ID: 1848516 · Report as offensive
Claggy
Volunteer tester

Send message
Joined: 5 Jul 99
Posts: 4654
Credit: 47,537,079
RAC: 4
United Kingdom
Message 1848554 - Posted: 13 Feb 2017, 20:19:06 UTC

The 'BUG: unsupported FP instruction in kernel mode' Bug hopefully has been fixed on the Original Raspberry Pi, anyone wishing to try it, and running it here on the Main project,
can get the latest fixed kernel by doing:

sudo apt-get install rpi-update
sudo rpi-update

If you get 4.4.48+ #964 or 4.9.9+ #965 or later then you'll have a kernel with the fix.

8.02 apps at the Main project should work no problem now, and 8.03 at Beta should too, 8.04 don't work on the Pi full stop, expect 8.05 soon hopefully.

Claggy
ID: 1848554 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 13,255,975
RAC: 6
United States
Message 1848555 - Posted: 13 Feb 2017, 20:29:27 UTC - in response to Message 1848554.  

Claggy -

Thanks. I will update my Pi 1 and try it.

I sent 8.05 to Eric this morning. Hopefully he will get it on Beta soon.

- Tom
ID: 1848555 · Report as offensive
Claggy
Volunteer tester

Send message
Joined: 5 Jul 99
Posts: 4654
Credit: 47,537,079
RAC: 4
United Kingdom
Message 1848556 - Posted: 13 Feb 2017, 20:33:21 UTC - in response to Message 1848555.  

Claggy -

Thanks. I will update my Pi 1 and try it.

I sent 8.05 to Eric this morning. Hopefully he will get it on Beta soon.

- Tom

There's a further posting on Beta about it, once that kernel or a later version comes out as a production kernel, then i'll get the Pi News thread unlocked and post there too.

Claggy
ID: 1848556 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1848564 - Posted: 13 Feb 2017, 21:16:20 UTC
Last modified: 13 Feb 2017, 21:18:51 UTC

Here are results from PG tiny test:

KWSN-Linux-MBbench v3.0 cache-keeping edition
Running on parallella at Mon 13 Feb 2017 12:31:21 AM UTC
----------------------------------------------------------------
Starting benchmark run...
----------------------------------------------------------------
Suspending BOINC
Listing wu-file(s) in /testWUs :
#WisGen1_v8.wu
#WisGen2_v8.wu
PG0009_tiny_v8.wu
PG0395_tiny_v8.wu
PG0444_tiny_v8.wu
PG1327_tiny_v8.wu

Listing executable(s) in /APPS :
setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp
setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default
setiathome_8.04_arm-unknown-linux-gnueabihf

Listing executable in /REF_APPS :
setiathome_8.02_arm-unknown-linux-gnueabihf
----------------------------------------------------------------
Current WU: #WisGen1_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 43 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 402.03 sec 393.56 sec 6.11 sec
Elapsed Time : ...................... 402 seconds
Speed compared to default : ......... 10 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.99%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb 102.48 sec 97.87 sec 2.57 sec
Elapsed Time : ...................... 103 seconds
Speed compared to default : ......... 41 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.99%

----------------------------------------------------------------
Running app with command : .......... setiathome_8.04_arm-unknown-linux-gnueabihf -verb
./setiathome_8.04_arm-unknown-linux-gnueabihf -verb 106.42 sec 100.42 sec 3.33 sec
Elapsed Time : ...................... 106 seconds
Speed compared to default : ......... 40 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.99%

----------------------------------------------------------------
Done with #WisGen1_v8.wu

====================================================================
Current WU: #WisGen2_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 41 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 106.17 sec 100.42 sec 3.11 sec
Elapsed Time : ...................... 106 seconds
Speed compared to default : ......... 38 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.99%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb 101.35 sec 96.08 sec 3.23 sec
Elapsed Time : ...................... 102 seconds
Speed compared to default : ......... 40 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.99%

----------------------------------------------------------------
Running app with command : .......... setiathome_8.04_arm-unknown-linux-gnueabihf -verb
./setiathome_8.04_arm-unknown-linux-gnueabihf -verb 106.34 sec 100.40 sec 3.25 sec
Elapsed Time : ...................... 106 seconds
Speed compared to default : ......... 38 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.99%

----------------------------------------------------------------
Done with #WisGen2_v8.wu

====================================================================
Current WU: PG0009_tiny_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 1974 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 1551.25 sec 1531.74 sec 16.55 sec
Elapsed Time : ...................... 1551 seconds
Speed compared to default : ......... 127 %

-----------------
Comparing results
Result : Strongly similar, Q= 99.99%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb 1640.92 sec 1622.52 sec 15.70 sec
Elapsed Time : ...................... 1641 seconds
Speed compared to default : ......... 120 %
-----------------
Comparing results
Result : Strongly similar, Q= 100.0%

----------------------------------------------------------------
Running app with command : .......... setiathome_8.04_arm-unknown-linux-gnueabihf -verb
./setiathome_8.04_arm-unknown-linux-gnueabihf -verb 1615.00 sec 1594.45 sec 17.32 sec
Elapsed Time : ...................... 1615 seconds
Speed compared to default : ......... 122 %
-----------------
Comparing results
Result : Strongly similar, Q= 100.0%

----------------------------------------------------------------
Done with PG0009_tiny_v8.wu

====================================================================
Current WU: PG0395_tiny_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 2282 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 1831.62 sec 1810.82 sec 15.42 sec
Elapsed Time : ...................... 1832 seconds
Speed compared to default : ......... 124 %

-----------------
Comparing results
Result : Strongly similar, Q= 99.95%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb 1928.78 sec 1908.70 sec 18.01 sec
Elapsed Time : ...................... 1929 seconds
Speed compared to default : ......... 118 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.95%

----------------------------------------------------------------
Running app with command : .......... setiathome_8.04_arm-unknown-linux-gnueabihf -verb
./setiathome_8.04_arm-unknown-linux-gnueabihf -verb 1890.34 sec 1871.40 sec 16.47 sec
Elapsed Time : ...................... 1890 seconds
Speed compared to default : ......... 120 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.95%

----------------------------------------------------------------
Done with PG0395_tiny_v8.wu

====================================================================
Current WU: PG0444_tiny_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 2139 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 1708.79 sec 1688.94 sec 16.65 sec
Elapsed Time : ...................... 1708 seconds
Speed compared to default : ......... 125 %

-----------------
Comparing results
Result : Strongly similar, Q= 99.95%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb 1787.16 sec 1768.58 sec 15.40 sec
Elapsed Time : ...................... 1787 seconds
Speed compared to default : ......... 119 %
-----------------
Comparing results
Result : Strongly similar, Q= 99.98%

----------------------------------------------------------------
Running app with command : .......... setiathome_8.04_arm-unknown-linux-gnueabihf -verb
./setiathome_8.04_arm-unknown-linux-gnueabihf -verb 1750.24 sec 1729.19 sec 17.78 sec
Elapsed Time : ...................... 1750 seconds
Speed compared to default : ......... 122 %
-----------------
Comparing results
Result : Strongly similar, Q= 100.0%

----------------------------------------------------------------
Done with PG0444_tiny_v8.wu

====================================================================
Current WU: PG1327_tiny_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 2439 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 1523.85 sec 1484.82 sec 35.92 sec
Elapsed Time : ...................... 1524 seconds
Speed compared to default : ......... 160 %

-----------------
Comparing results
Result : Strongly similar, Q= 99.96%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default -verb 1735.98 sec 1693.02 sec 40.05 sec
Elapsed Time : ...................... 1736 seconds
Speed compared to default : ......... 140 %
-----------------
Comparing results
Result : Strongly similar, Q= 100.0%

----------------------------------------------------------------
Running app with command : .......... setiathome_8.04_arm-unknown-linux-gnueabihf -verb
./setiathome_8.04_arm-unknown-linux-gnueabihf -verb 1716.20 sec 1675.62 sec 37.29 sec
Elapsed Time : ...................... 1716 seconds
Speed compared to default : ......... 142 %
-----------------
Comparing results
Result : Strongly similar, Q= 100.0%

----------------------------------------------------------------
Done with PG1327_tiny_v8.wu

====================================================================
Hosts CPU data ...
model name : ARMv7 Processor rev 0 (v7l)

Done with Benchmark run! Removing temporary files!
Resuming BOINC


stderr.setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_default.PG0444_tiny_v8.wu.txt
Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.005215 0.00000  test
            vfp_GetPowerSpectrum 0.003225 0.00000  test
           neon_GetPowerSpectrum 0.003501 0.00000  test
            vfp_GetPowerSpectrum 0.003225 0.00000  choice

                     v_ChirpData 0.178233 0.00000  test
                   fpu_ChirpData 0.173405 1.51106  test
               fpu_opt_ChirpData 0.193583 0.00000  test
                     v_ChirpData 0.178233 0.00000  choice

                     v_Transpose 0.149689 0.00000  test
                    v_Transpose2 0.077378 0.00000  test
                    v_Transpose4 0.043121 0.00000  test
                    v_Transpose8 0.058047 0.00000  test
                 fftwf_transpose 0.027199 0.00000  test
                  v_pfTranspose2 0.072181 0.00000  test
                  v_pfTranspose4 0.046788 0.00000  test
                  v_pfTranspose8 0.076512 0.00000  test
                 v_vfpTranspose2 0.083128 0.00000  test
                 fftwf_transpose 0.027199 0.00000  choice

                 FPU opt folding 0.044374 0.00000  test
                 opt VFP folding 0.034257 0.19827  test
                opt NEON folding 0.027513 0.00000  test
                opt NEON folding 0.027513 0.00000  choice

                   Test duration    30.50 seconds

stderr.setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp.PG0444_tiny_v8.wu.txt
Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.005769 0.00000  test
            vfp_GetPowerSpectrum 0.003613 0.00000  test
           neon_GetPowerSpectrum 0.003797 0.00000  test
            vfp_GetPowerSpectrum 0.003613 0.00000  choice

                     v_ChirpData 0.191753 0.00000  test
                   fpu_ChirpData 0.191053 1.51106  test
               fpu_opt_ChirpData 0.211642 0.00000  test
                  neon_ChirpData 0.079536 0.00000  test
                  neon_ChirpData 0.079536 0.00000  choice

                     v_Transpose 0.163054 0.00000  test
                    v_Transpose2 0.084624 0.00000  test
                    v_Transpose4 0.047427 0.00000  test
                    v_Transpose8 0.064182 0.00000  test
                 fftwf_transpose 0.029658 0.00000  test
                  v_pfTranspose2 0.079094 0.00000  test
                  v_pfTranspose4 0.046948 0.00000  test
                  v_pfTranspose8 0.076827 0.00000  test
                 v_vfpTranspose2 0.083352 0.00000  test
                 fftwf_transpose 0.029658 0.00000  choice

                 FPU opt folding 0.044367 0.00000  test
                 opt VFP folding 0.034358 0.19827  test
                opt NEON folding 0.027593 0.00000  test
                opt NEON folding 0.027593 0.00000  choice

                   Test duration    36.68 seconds

stderr.setiathome_8.04_arm-unknown-linux-gnueabihf.PG0444_tiny_v8.wu.txt
Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.005215 0.00000  test
            vfp_GetPowerSpectrum 0.003225 0.00000  test
           neon_GetPowerSpectrum 0.003557 0.00000  test
            vfp_GetPowerSpectrum 0.003225 0.00000  choice

                     v_ChirpData 0.174492 0.00000  test
                   fpu_ChirpData 0.184554 1.51106  test
               fpu_opt_ChirpData 0.180076 0.00000  test
                     v_ChirpData 0.174492 0.00000  choice

                     v_Transpose 0.149246 0.00000  test
                    v_Transpose2 0.077268 0.00000  test
                    v_Transpose4 0.043231 0.00000  test
                    v_Transpose8 0.058766 0.00000  test
                 fftwf_transpose 0.027126 0.00000  test
                  v_pfTranspose2 0.072034 0.00000  test
                  v_pfTranspose4 0.041720 0.00000  test
                  v_pfTranspose8 0.068238 0.00000  test
                 v_vfpTranspose2 0.076070 0.00000  test
                 fftwf_transpose 0.027126 0.00000  choice

                 FPU opt folding 0.038182 0.00000  test
                 opt VFP folding 0.030074 0.19827  test
                opt NEON folding 0.023993 0.00000  test
                opt NEON folding 0.023993 0.00000  choice

                   Test duration    31.46 seconds

SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1848564 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1848566 - Posted: 13 Feb 2017, 21:23:36 UTC

Here is my binary:
https://cloud.mail.ru/public/7sVS/sEgfNQqQb
Uploaded from Windows host do don't forget to chmod for execution.
Has sense to run it on NEON-enabled ARMs only cause linked vs unpatched FFTW + additional speedup comes directly from additional NEON-based function usage (ChirpData)
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1848566 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1848568 - Posted: 13 Feb 2017, 21:49:47 UTC

Seems have vfp_ChirpData working too, but for Parallella it benched slower than NEON one:
before Chirp test: vfp_ChirpData
in[0].xy=(1.00000,0.00000)]
in[1].xy=(1.00000,0.00000)]
in[2].xy=(1.00000,0.00001)]
after Chirp test: vfp_ChirpData
out[0].xy=(1.00000,0.00000)]
out[1].xy=(1.00000,-0.00000)]
out[2].xy=(1.00000,-0.00000)]
vfp_ChirpData 0.084548 0.00000 test
in[0].xy=(1.00000,0.00000)]
in[1].xy=(1.00000,0.00000)]
in[2].xy=(1.00000,0.00001)]
after Chirp test: neon_ChirpData
out[0].xy=(1.00000,0.00000)]
out[1].xy=(1.00000,-0.00000)]
out[2].xy=(1.00000,-0.00000)]
neon_ChirpData 0.072051 0.00000 test
neon_ChirpData 0.072051 0.00000 choice
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1848568 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1848569 - Posted: 13 Feb 2017, 21:50:55 UTC

What steps should I do to have FFTW3.3.6 patched and not fail on ARM w/o NEON chips?
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1848569 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 13,255,975
RAC: 6
United States
Message 1848579 - Posted: 14 Feb 2017, 0:14:23 UTC - in response to Message 1848569.  
Last modified: 14 Feb 2017, 0:16:41 UTC

What steps should I do to have FFTW3.3.6 patched and not fail on ARM w/o NEON chips?


I just cut and paste removing the - lines and adding the + lines. The file was short enough. You can also use the Linux patch command:

http://www.thegeekstuff.com/2014/12/patch-command-examples

Then

make clean
make
sudo make install
ID: 1848579 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1848622 - Posted: 14 Feb 2017, 7:52:13 UTC - in response to Message 1848579.  
Last modified: 14 Feb 2017, 7:55:01 UTC

Thanks!

And here is VFP-only chirp testing:

KWSN-Linux-MBbench v3.0 cache-keeping edition
Running on parallella at Mon 13 Feb 2017 10:02:50 PM UTC
----------------------------------------------------------------
Starting benchmark run...
----------------------------------------------------------------
Suspending BOINC
Listing wu-file(s) in /testWUs :
#WisGen1_v8.wu
#WisGen2_v8.wu
PG0009_tiny_v8.wu
PG0395_tiny_v8.wu
PG0444_tiny_v8.wu
PG1327_tiny_v8.wu

Listing executable(s) in /APPS :
setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp
setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled

Listing executable in /REF_APPS :
setiathome_8.02_arm-unknown-linux-gnueabihf
----------------------------------------------------------------
Current WU: #WisGen1_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 43 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 105.74 sec 100.42 sec 3.11 sec
Elapsed Time : ...................... 105 seconds
Speed compared to default : ......... 40 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.99%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled 106.06 sec 100.62 sec 3.21 sec
Elapsed Time : ...................... 106 seconds
Speed compared to default : ......... 40 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.99%

----------------------------------------------------------------
Done with #WisGen1_v8.wu

====================================================================
Current WU: #WisGen2_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 41 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 106.34 sec 100.25 sec 2.61 sec
Elapsed Time : ...................... 107 seconds
Speed compared to default : ......... 38 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.99%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled 101.24 sec 96.28 sec 2.96 sec
Elapsed Time : ...................... 101 seconds
Speed compared to default : ......... 40 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.99%

----------------------------------------------------------------
Done with #WisGen2_v8.wu

====================================================================
Current WU: PG0009_tiny_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 1974 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 1594.12 sec 1574.16 sec 16.37 sec
Elapsed Time : ...................... 1594 seconds
Speed compared to default : ......... 123 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.99%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled 1582.39 sec 1564.17 sec 15.64 sec
Elapsed Time : ...................... 1582 seconds
Speed compared to default : ......... 124 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.99%

----------------------------------------------------------------
Done with PG0009_tiny_v8.wu

====================================================================
Current WU: PG0395_tiny_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 2282 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 1854.03 sec 1835.67 sec 16.36 sec
Elapsed Time : ...................... 1854 seconds
Speed compared to default : ......... 123 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.95%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled 1855.14 sec 1836.23 sec 16.12 sec
Elapsed Time : ...................... 1855 seconds
Speed compared to default : ......... 123 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.95%

----------------------------------------------------------------
Done with PG0395_tiny_v8.wu

====================================================================
Current WU: PG0444_tiny_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 2139 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 1698.12 sec 1676.46 sec 16.17 sec
Elapsed Time : ...................... 1698 seconds
Speed compared to default : ......... 125 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.95%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled 1740.50 sec 1721.98 sec 15.40 sec
Elapsed Time : ...................... 1740 seconds
Speed compared to default : ......... 122 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.95%

----------------------------------------------------------------
Done with PG0444_tiny_v8.wu

====================================================================
Current WU: PG1327_tiny_v8.wu

----------------------------------------------------------------
Skipping default app setiathome_8.02_arm-unknown-linux-gnueabihf, displaying saved result(s)
Elapsed Time: ....................... 2439 seconds
----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_NEONchirp -verb 1496.14 sec 1458.92 sec 34.12 sec
Elapsed Time : ...................... 1496 seconds
Speed compared to default : ......... 163 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.96%

----------------------------------------------------------------
Running app with command : .......... setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled
./setiathome-8.0.armv7l-unknown-linux-gnueabihf_R_VFPChirp_enabled_NEONchirp_disabled 1538.38 sec 1500.97 sec 34.63 sec
Elapsed Time : ...................... 1539 seconds
Speed compared to default : ......... 158 %
-----------------
Comparing results
Result      : Strongly similar,  Q= 99.96%

----------------------------------------------------------------
Done with PG1327_tiny_v8.wu

====================================================================
Hosts CPU data ...
model name	: ARMv7 Processor rev 0 (v7l)

Done with Benchmark run! Removing temporary files!
Resuming BOINC


Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)
            vfp_GetPowerSpectrum 0.003558 0.00000 
                   vfp_ChirpData 0.093684 0.00000 
                 fftwf_transpose 0.029237 0.00000 
                opt NEON folding 0.027707 0.00000 


Slower than NEON one but better than generic.
So I'll do commit and post corresponding build (after FFTW patching perhaps to allow non-NEON chips).

BTW, look as chirp share increases with AR increase. This particular bench is very revealing IMHO. All other params but ChirpData are the same here.
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1848622 · Report as offensive
MarkJ Crowdfunding Project Donor*Special Project $75 donorSpecial Project $250 donor
Volunteer tester
Avatar

Send message
Joined: 17 Feb 08
Posts: 1139
Credit: 80,854,192
RAC: 5
Australia
Message 1848633 - Posted: 14 Feb 2017, 10:28:58 UTC

Is that fixed chirp version going to appear on beta as 8.06 then? Currently still getting 8.04 on beta as stock app on Pi2 and Pi3.
BOINC blog
ID: 1848633 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 13,255,975
RAC: 6
United States
Message 1848759 - Posted: 15 Feb 2017, 6:13:18 UTC - in response to Message 1848622.  

Raistmer -

Thanks for all your work on fixing the ARM app so it uses the VFP and NEON chirp functions. I will try building it and running it on my various ARM devices including my Raspberry Pi 1 with Claggy's patched kernel.

- Tom
ID: 1848759 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1848794 - Posted: 15 Feb 2017, 13:12:10 UTC - in response to Message 1848759.  

Great, it saves me from FFTW patching cause Parallella prevers NEON anyway.
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1848794 · Report as offensive
Previous · 1 . . . 3 · 4 · 5 · 6 · 7 · 8 · Next

Message boards : Number crunching : Linux (ARM processor) app and alternatives


 
©2024 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.