Version 3 of faster SETI cruncher for Linux

Message boards : Number crunching : Version 3 of faster SETI cruncher for Linux
Message board moderation

To post messages, you must log in.

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

AuthorMessage
Gary Zhang

Send message
Joined: 19 Apr 04
Posts: 26
Credit: 32,583
RAC: 0
Taiwan
Message 184674 - Posted: 1 Nov 2005, 4:18:46 UTC - in response to Message 184669.  

Well, if you feel strongly (heh-heh) about this, I'll use no-prec-div and
no-prec-sqrt with the next client. Are you confident about this result?


I can not guarantee anything. But just see the comparision of rescmp, they are strongly similar so far.
ID: 184674 · Report as offensive
Profile michael37
Avatar

Send message
Joined: 23 Jul 99
Posts: 311
Credit: 6,955,447
RAC: 0
United States
Message 184684 - Posted: 1 Nov 2005, 5:19:22 UTC - in response to Message 184674.  

Well, if you feel strongly (heh-heh) about this, I'll use no-prec-div and
no-prec-sqrt with the next client. Are you confident about this result?


I can not guarantee anything. But just see the comparision of rescmp, they are strongly similar so far.

Harold, I can volunteer to test a no-prec build on my dual-Xeon. It'll go fast, and if all workunits validate, we'll have a winner.



ID: 184684 · Report as offensive
Harold Naparst
Volunteer tester

Send message
Joined: 11 May 05
Posts: 236
Credit: 91,803
RAC: 0
Sweden
Message 184738 - Posted: 1 Nov 2005, 11:26:51 UTC - in response to Message 184684.  
Last modified: 1 Nov 2005, 11:27:17 UTC


Harold, I can volunteer to test a no-prec build on my dual-Xeon. It'll go fast, and if all workunits validate, we'll have a winner.



Give me a day or so, and I'll release another one.
I found another 10% speedup, and I just want to do some testing, OK?
The time is down to 26 minutes, 43 seconds with Gary's flags too.
Harold Naparst
ID: 184738 · Report as offensive
Profile S.L.Chia
Volunteer tester

Send message
Joined: 3 Apr 99
Posts: 98
Credit: 2,667,122
RAC: 1
Malaysia
Message 184739 - Posted: 1 Nov 2005, 11:33:02 UTC

another 10% speedup??

ID: 184739 · Report as offensive
Profile Crunch3r
Volunteer tester
Avatar

Send message
Joined: 15 Apr 99
Posts: 1546
Credit: 3,438,823
RAC: 0
Germany
Message 184742 - Posted: 1 Nov 2005, 11:45:17 UTC - in response to Message 184738.  


Harold, I can volunteer to test a no-prec build on my dual-Xeon. It'll go fast, and if all workunits validate, we'll have a winner.



Give me a day or so, and I'll release another one.
I found another 10% speedup, and I just want to do some testing, OK?
The time is down to 26 minutes, 43 seconds with Gary's flags too.


Let me guess naparst-3.2 is comming :-(


Join BOINC United now!
ID: 184742 · Report as offensive
Ned Slider

Send message
Joined: 12 Oct 01
Posts: 668
Credit: 4,375,315
RAC: 0
United Kingdom
Message 184748 - Posted: 1 Nov 2005, 12:07:47 UTC - in response to Message 184742.  


Harold, I can volunteer to test a no-prec build on my dual-Xeon. It'll go fast, and if all workunits validate, we'll have a winner.



Give me a day or so, and I'll release another one.
I found another 10% speedup, and I just want to do some testing, OK?
The time is down to 26 minutes, 43 seconds with Gary's flags too.


Let me guess naparst-3.2 is comming :-(


Ohh goodie, and just in time for the weekend - maybe I can get under 1 hour for the reference unit on my old Athlon XP :D

Hey Crunch3r - you getting fed up of compiling yet ;)

Ned

*** My Guide to Compiling Optimised BOINC and SETI Clients ***
*** Download Optimised BOINC and SETI Clients for Linux Here ***
ID: 184748 · Report as offensive
Harold Naparst
Volunteer tester

Send message
Joined: 11 May 05
Posts: 236
Credit: 91,803
RAC: 0
Sweden
Message 184749 - Posted: 1 Nov 2005, 12:08:01 UTC - in response to Message 184742.  


Harold, I can volunteer to test a no-prec build on my dual-Xeon. It'll go fast, and if all workunits validate, we'll have a winner.



Give me a day or so, and I'll release another one.
I found another 10% speedup, and I just want to do some testing, OK?
The time is down to 26 minutes, 43 seconds with Gary's flags too.


Let me guess naparst-3.2 is comming :-(


But it might only be weakly similar, or you might have to wait a few more
days.
Harold Naparst
ID: 184749 · Report as offensive
Profile ML1
Volunteer moderator
Volunteer tester

Send message
Joined: 25 Nov 01
Posts: 20510
Credit: 7,508,002
RAC: 20
United Kingdom
Message 184750 - Posted: 1 Nov 2005, 12:08:37 UTC - in response to Message 184738.  
Last modified: 1 Nov 2005, 12:09:19 UTC

... Give me a day or so, and I'll release another one.
I found another 10% speedup, and I just want to do some testing, OK?...

You can have a full week if that gives yet another 70% speedup! ( ;-P )

What have we been doing all this time??!

Go for it,

Regards,
Martin
See new freedom: Mageia Linux
Take a look for yourself: Linux Format
The Future is what We all make IT (GPLv3)
ID: 184750 · Report as offensive
Ned Slider

Send message
Joined: 12 Oct 01
Posts: 668
Credit: 4,375,315
RAC: 0
United Kingdom
Message 184751 - Posted: 1 Nov 2005, 12:11:13 UTC - in response to Message 184738.  


I found another 10% speedup, and I just want to do some testing, OK?
The time is down to 26 minutes, 43 seconds with Gary's flags too.


Harold - is this a source code improvement too or purely a compiler optimization?


*** My Guide to Compiling Optimised BOINC and SETI Clients ***
*** Download Optimised BOINC and SETI Clients for Linux Here ***
ID: 184751 · Report as offensive
Profile S.L.Chia
Volunteer tester

Send message
Joined: 3 Apr 99
Posts: 98
Credit: 2,667,122
RAC: 1
Malaysia
Message 184752 - Posted: 1 Nov 2005, 12:14:51 UTC - in response to Message 184749.  


Harold, I can volunteer to test a no-prec build on my dual-Xeon. It'll go fast, and if all workunits validate, we'll have a winner.



Give me a day or so, and I'll release another one.
I found another 10% speedup, and I just want to do some testing, OK?
The time is down to 26 minutes, 43 seconds with Gary's flags too.


Let me guess naparst-3.2 is comming :-(


But it might only be weakly similar, or you might have to wait a few more
days.


crunch3r still have few more days to rest...:)
ID: 184752 · Report as offensive
Harold Naparst
Volunteer tester

Send message
Joined: 11 May 05
Posts: 236
Credit: 91,803
RAC: 0
Sweden
Message 184755 - Posted: 1 Nov 2005, 12:18:58 UTC - in response to Message 184751.  


I found another 10% speedup, and I just want to do some testing, OK?
The time is down to 26 minutes, 43 seconds with Gary's flags too.


Harold - is this a source code improvement too or purely a compiler optimization?



Source code improvement. Just removing bottlenecks. There are a lot of them,
and more to go, too. The bar is higher now, because I have to make sure that
it works with ACML, gcc, FFTW flags and all.. A lot of testing just to
get to the point I can commit it to the repository.
Harold Naparst
ID: 184755 · Report as offensive
Ned Slider

Send message
Joined: 12 Oct 01
Posts: 668
Credit: 4,375,315
RAC: 0
United Kingdom
Message 184757 - Posted: 1 Nov 2005, 12:30:02 UTC - in response to Message 184755.  
Last modified: 1 Nov 2005, 12:30:35 UTC


Source code improvement. Just removing bottlenecks. There are a lot of them,
and more to go, too. The bar is higher now, because I have to make sure that
it works with ACML, gcc, FFTW flags and all.. A lot of testing just to
get to the point I can commit it to the repository.


I understand. If you want help testing GCC/FFTW aspects for compatability, just bounce pre-release copies of the source my way and I can try a quick test compile for you if that helps at all. I've not tried the ACML so unfortunately won't be able to help there. We understand if errors creep in though, and you always get them fixed quickly on the rare occasion they do :)

Ned

*** My Guide to Compiling Optimised BOINC and SETI Clients ***
*** Download Optimised BOINC and SETI Clients for Linux Here ***
ID: 184757 · Report as offensive
Profile Crunch3r
Volunteer tester
Avatar

Send message
Joined: 15 Apr 99
Posts: 1546
Credit: 3,438,823
RAC: 0
Germany
Message 184762 - Posted: 1 Nov 2005, 12:42:31 UTC - in response to Message 184755.  


I found another 10% speedup, and I just want to do some testing, OK?
The time is down to 26 minutes, 43 seconds with Gary's flags too.


Harold - is this a source code improvement too or purely a compiler optimization?



Source code improvement. Just removing bottlenecks. There are a lot of them,
and more to go, too. The bar is higher now, because I have to make sure that
it works with ACML, gcc, FFTW flags and all.. A lot of testing just to
get to the point I can commit it to the repository.


So thats a good opportunity to tell you that naparst-3.1 failed to compile on FreeBSD 5.4 using fftw.

There's something around line 116-118 in analyzeFuncs.cpp

static int init[21]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int i,len=1,info;
i = (int) round(log2(n));
if (i>20)

If i remember corectly gcc complains about "undeclared i" and something else about float or something like that.

naparst 3.0. compiled clean on FreeBSE :-)


Join BOINC United now!
ID: 184762 · Report as offensive
Harold Naparst
Volunteer tester

Send message
Joined: 11 May 05
Posts: 236
Credit: 91,803
RAC: 0
Sweden
Message 184773 - Posted: 1 Nov 2005, 13:17:24 UTC - in response to Message 184762.  

@Crunch3r --> My eyes are too bleary to figure out what the compiler warning might have been. Could you please generate the exact text of the error for me?

@Ned --> Because we both use linux, it should be a quick thing for me to just
compile the stuff before giving it to you. But, a question for you:

The changes this time involve replacing bits like

for (i=0;i<n;i++) sum += a[i];

with IPP routines. ACML also offers sum routines, which I could use.
Is there any interest in having an ACML path? Right now, you'll have a choice
between IPP and the really slow code above.

Harold Naparst
ID: 184773 · Report as offensive
Profile ML1
Volunteer moderator
Volunteer tester

Send message
Joined: 25 Nov 01
Posts: 20510
Credit: 7,508,002
RAC: 20
United Kingdom
Message 184777 - Posted: 1 Nov 2005, 13:45:27 UTC - in response to Message 184773.  

[...]
for (i=0;i<n;i++) sum += a[i];

with IPP routines. ACML also offers sum routines, which I could use.

Is not:

for (i=-1;++i<=n;) sum += a[i];

a little faster?

What do the IPP routines do to speed this up further? Do they just simply do explicit loop unrolling?

Regards,
Martin
See new freedom: Mageia Linux
Take a look for yourself: Linux Format
The Future is what We all make IT (GPLv3)
ID: 184777 · Report as offensive
Profile spacemeat
Avatar

Send message
Joined: 4 Oct 99
Posts: 239
Credit: 8,425,288
RAC: 0
United States
Message 184823 - Posted: 1 Nov 2005, 16:10:04 UTC - in response to Message 184411.  


Ned, what BOINC source are you compiling against? i haven't had success with GCC/FFTW on any of the caching sources yet.

have you changed the optimization flags at all?

You need the BOINC 4.45 source to get i working.


when getting to xml_util i keep getting:
make: *** No rule to make target ../../boinc/lib/acct_mgr_client.o', needed by `seti_boinc'. Stop.

on harold's sources v2.7-3.1
using boinc trees for 4.45 and 4.72
ID: 184823 · Report as offensive
Profile Crunch3r
Volunteer tester
Avatar

Send message
Joined: 15 Apr 99
Posts: 1546
Credit: 3,438,823
RAC: 0
Germany
Message 184826 - Posted: 1 Nov 2005, 16:20:06 UTC - in response to Message 184773.  

@Crunch3r --> My eyes are too bleary to figure out what the compiler warning might have been. Could you please generate the exact text of the error for me?


Ok here's the output:

if g++ -DHAVE_CONFIG_H -I. -I. -I.. -DUSE_FFTWF -DHAVE_CONFIG_H -DTEXT_UI -DNDEBUG -DCLIENT -include ../config.h -I../db -I/tmp/seti/boinc/api -I/tmp/seti/boinc/lib -D_THREAD_SAFE -pthread -DUSE_FFTWF -MT seti_boinc-analyzeFuncs.o -MD -MP -MF ".deps/seti_boinc-analyzeFuncs.Tpo" -c -o seti_boinc-analyzeFuncs.o `test -f 'analyzeFuncs.cpp' || echo './'`analyzeFuncs.cpp; then mv -f ".deps/seti_boinc-analyzeFuncs.Tpo" ".deps/seti_boinc-analyzeFuncs.Po"; else rm -f ".deps/seti_boinc-analyzeFuncs.Tpo"; exit 1; fi
analyzeFuncs.cpp: In function `float* acml_fft_comm(int)':
analyzeFuncs.cpp:117: error: `log2' undeclared (first use this function)
analyzeFuncs.cpp:117: error: (Each undeclared identifier is reported only once for each function it appears in.)
*** Error code 1

Join BOINC United now!
ID: 184826 · Report as offensive
Harold Naparst
Volunteer tester

Send message
Joined: 11 May 05
Posts: 236
Credit: 91,803
RAC: 0
Sweden
Message 184830 - Posted: 1 Nov 2005, 16:27:08 UTC - in response to Message 184826.  

@Crunch3r --> My eyes are too bleary to figure out what the compiler warning might have been. Could you please generate the exact text of the error for me?


Ok here's the output:

if g++ -DHAVE_CONFIG_H -I. -I. -I.. -DUSE_FFTWF -DHAVE_CONFIG_H -DTEXT_UI -DNDEBUG -DCLIENT -include ../config.h -I../db -I/tmp/seti/boinc/api -I/tmp/seti/boinc/lib -D_THREAD_SAFE -pthread -DUSE_FFTWF -MT seti_boinc-analyzeFuncs.o -MD -MP -MF ".deps/seti_boinc-analyzeFuncs.Tpo" -c -o seti_boinc-analyzeFuncs.o `test -f 'analyzeFuncs.cpp' || echo './'`analyzeFuncs.cpp; then mv -f ".deps/seti_boinc-analyzeFuncs.Tpo" ".deps/seti_boinc-analyzeFuncs.Po"; else rm -f ".deps/seti_boinc-analyzeFuncs.Tpo"; exit 1; fi
analyzeFuncs.cpp: In function `float* acml_fft_comm(int)':
analyzeFuncs.cpp:117: error: `log2' undeclared (first use this function)
analyzeFuncs.cpp:117: error: (Each undeclared identifier is reported only once for each function it appears in.)
*** Error code 1



log2 is supposed to be in math.h,
according to the iso standard.

Harold Naparst
ID: 184830 · Report as offensive
Profile Crunch3r
Volunteer tester
Avatar

Send message
Joined: 15 Apr 99
Posts: 1546
Credit: 3,438,823
RAC: 0
Germany
Message 184831 - Posted: 1 Nov 2005, 16:33:14 UTC - in response to Message 184830.  
Last modified: 1 Nov 2005, 16:40:34 UTC

@Crunch3r --> My eyes are too bleary to figure out what the compiler warning might have been. Could you please generate the exact text of the error for me?


Ok here's the output:

if g++ -DHAVE_CONFIG_H -I. -I. -I.. -DUSE_FFTWF -DHAVE_CONFIG_H -DTEXT_UI -DNDEBUG -DCLIENT -include ../config.h -I../db -I/tmp/seti/boinc/api -I/tmp/seti/boinc/lib -D_THREAD_SAFE -pthread -DUSE_FFTWF -MT seti_boinc-analyzeFuncs.o -MD -MP -MF ".deps/seti_boinc-analyzeFuncs.Tpo" -c -o seti_boinc-analyzeFuncs.o `test -f 'analyzeFuncs.cpp' || echo './'`analyzeFuncs.cpp; then mv -f ".deps/seti_boinc-analyzeFuncs.Tpo" ".deps/seti_boinc-analyzeFuncs.Po"; else rm -f ".deps/seti_boinc-analyzeFuncs.Tpo"; exit 1; fi
analyzeFuncs.cpp: In function `float* acml_fft_comm(int)':
analyzeFuncs.cpp:117: error: `log2' undeclared (first use this function)
analyzeFuncs.cpp:117: error: (Each undeclared identifier is reported only once for each function it appears in.)
*** Error code 1



log2 is supposed to be in math.h,
according to the iso standard.


But maybe not on FreeBSE (and that's not all they use 16-byte aligned malloc. took me awhile to figure that out to get the fftw compiled).
Seems as if this guy -->
is a bit freaked out :-)

Anyway it was just an information.



Join BOINC United now!
ID: 184831 · Report as offensive
Ned Slider

Send message
Joined: 12 Oct 01
Posts: 668
Credit: 4,375,315
RAC: 0
United Kingdom
Message 184846 - Posted: 1 Nov 2005, 17:37:27 UTC - in response to Message 184823.  


Ned, what BOINC source are you compiling against? i haven't had success with GCC/FFTW on any of the caching sources yet.

have you changed the optimization flags at all?

You need the BOINC 4.45 source to get i working.


when getting to xml_util i keep getting:
make: *** No rule to make target ../../boinc/lib/acct_mgr_client.o', needed by `seti_boinc'. Stop.

on harold's sources v2.7-3.1
using boinc trees for 4.45 and 4.72


What switches are you using to configure boinc and seti? I use the following for boinc:

./configure --disable-server --disable-dependency-tracking --build=i686-pc-linux-gnu

and for seti:

./configure --disable-server --disable-gui --disable-dynamic-graphics --disable-dependency-tracking

You probably don't need the --build switch for boinc, but it fixes a bug in the configure script for me where Red Hat (and Fedora) systems return i686-redhat-linux-gnu as the host type which is invalid.

Also, I use the nightly boinc source from 25 May 2005 (just checked), version 4.43 which was, until recently, the latest stable release for Linux.

Ned

*** My Guide to Compiling Optimised BOINC and SETI Clients ***
*** Download Optimised BOINC and SETI Clients for Linux Here ***
ID: 184846 · Report as offensive
Previous · 1 . . . 3 · 4 · 5 · 6 · 7 · 8 · Next

Message boards : Number crunching : Version 3 of faster SETI cruncher for Linux


 
©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.