![]() |
![]() |
#1 |
I moo ablest echo power!
May 2013
185510 Posts |
![]()
I'm trying to build sr1sieve on the RPi Model 3B running Raspbian Jessie 4.4 (32-bit), and encountering the following error:
Code:
gcc -O2 -ffast-math -march=armv8-a -mtune=cortex-a53 -Wall -DNDEBUG -c -o sr1sieve.o sr1sieve.c In file included from sr1sieve.c:23:0: arithmetic.h: In function ‘PRE2_MULMOD64_INIT’: arithmetic.h:97:3: error: ‘b_over_p’ undeclared (first use in this function) b_over_p = (double)((int64_t)b) * one_over_p; Code:
extern double _b_over_p; This obviously isn't an emergency, but I'd like to learn more about the Pi and what it can do. Thanks for any help. ![]() |
![]() |
![]() |
![]() |
#2 | |
Banned
"Luigi"
Aug 2002
Team Italia
485910 Posts |
![]() Quote:
|
|
![]() |
![]() |
![]() |
#3 |
I moo ablest echo power!
May 2013
5×7×53 Posts |
![]()
It could be, but I can't even get the 32-bit versions to build. I had no problems getting the GGNFS sievers to build a 32-bit version, but this one has stumped me so far.
|
![]() |
![]() |
![]() |
#4 |
Feb 2003
192010 Posts |
![]()
You can easily change this line:
Code:
extern double _b_over_p; Code:
extern double b_over_p; I tried this on a Pi2 using the source code version 1.4.5 of sr1sieve and got a stable binary. The single core performance is about 1/20th of a single i3770 core. |
![]() |
![]() |
![]() |
#5 |
Feb 2003
27·3·5 Posts |
![]()
I forgot to mention that in the Makefile you need to disable the x86 assembly code:
Code:
ASSEMBLER=no Code:
#ARCH=x86_64 |
![]() |
![]() |
![]() |
#6 |
I moo ablest echo power!
May 2013
5·7·53 Posts |
![]()
Fantastic! I'll try this at home tonight.
|
![]() |
![]() |
![]() |
#7 |
I moo ablest echo power!
May 2013
185510 Posts |
![]()
Just writing to confirm that your steps worked, and that the performance of the binary is atrocious. 4-threads on an i7-4930K gives about 125-130 million p/sec. 4-threads on the Model 3B gives about 5 million p/sec. Still, now have something to mess with, and I can try some other compilation with it. Thanks again!
![]() |
![]() |
![]() |
![]() |
#8 | |
Banned
"Luigi"
Aug 2002
Team Italia
43·113 Posts |
![]() Quote:
|
|
![]() |
![]() |
![]() |
#9 |
Feb 2003
27·3·5 Posts |
![]()
I did it at my end on the Pi2B, and the results and factors are matching.
Last fiddled with by Thomas11 on 2017-03-03 at 16:47 |
![]() |
![]() |
![]() |
#10 |
I moo ablest echo power!
May 2013
34778 Posts |
![]()
I did not, but I won't be able to for now. I'm currently working on getting the Gentoo 64-bit image loaded and working properly. I'm having some overheating issues at the moment.
|
![]() |
![]() |
![]() |
#11 |
Banned
"Luigi"
Aug 2002
Team Italia
485910 Posts |
![]()
Keep me informed about it :-) I suppose you could get a 2.5x speedup from using the Arm8 code, the FPUs and the 64bits.
Last fiddled with by ET_ on 2017-03-03 at 17:53 |
![]() |
![]() |
![]() |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
sr1sieve with work files? | masser | Conjectures 'R Us | 1 | 2017-12-28 17:43 |
32-bit of sr1sieve and sr2sieve for Win | pepi37 | Software | 5 | 2013-08-09 22:31 |
Building gcc 4.4.0 | CRGreathouse | Software | 1 | 2009-07-07 22:25 |
sr1sieve and big P | barcode | Software | 5 | 2007-12-27 04:05 |
sr1sieve 1.2.0 | arminius | Riesel Prime Search | 14 | 2007-12-02 22:53 |