Seti@Home optimized science apps and information
 
Welcome, Guest. Please login or register.
Did you miss your activation email?
08 Jan 2009, 04:03:43 pm

Login with username, password and session length
 
If you've registered already but never got your activation email, please click here.
 
 
Seti@Home optimized science apps and information  |  Optimized Seti@Home apps  |  Linux  |  Topic: How to make your own optimized Seti@Home client for Linux 0 Members and 0 Guests are viewing this topic. « previous next »
Pages: [1] 2 Go Down Print
This message is marked as News.
Author Topic: How to make your own optimized Seti@Home client for Linux  (Read 5500 times)
Simon
Ni!
Lord o' the Board
Knight who says 'Ni!'
*****
Offline Offline

Posts: 1053



View Profile WWW
How to make your own optimized Seti@Home client for Linux
« on: 25 Jun 2006, 06:18:50 pm »

Hi,

you can find this How-To in the Articles section - here's a direct link:

How to make your own optimized Seti@Home client for Linux.

Please post about your success or failure using it!

Good luck,
Simon
« Last Edit: 28 Jun 2006, 02:53:19 am by Simon » Logged
Jocker
Knave
*
Offline Offline

Posts: 1


View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #1 on: 17 Aug 2006, 12:39:18 pm »

Hi,

I've tried to build the Seti@Home client myself, but the Intel C Compiler did not supported GCC 4.1.
Yesterday i've seen that there is a new version of the compiler and i've loaded it.
But there is no more a fftw2mkl. So how to build with Intel's new compiler the Client?
Logged
Simon
Ni!
Lord o' the Board
Knight who says 'Ni!'
*****
Offline Offline

Posts: 1053



View Profile WWW
Re: How to make your own optimized Seti@Home client for Linux
« Reply #2 on: 17 Aug 2006, 05:29:30 pm »

Jocker,

the Linux How-Tos need an update - MKL is not really necessary (I found out it doesn't alter speed at all).

Still, the source package and build scripts that are currently online still include references to both, which would be too much to list here.

Instead, I'll be updating the source packages this weekend, and please have patience until then - I've had much better build results with gcc-3.3/3.4 than 4.0, by the way, though it might not be so easy to switch.

Regards,
Simon.
Logged
ngdias
Knave
*
Offline Offline

Posts: 2


View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #3 on: 28 Aug 2006, 07:37:12 am »

Somewhere on your guide you mention:

"Note: all these instructions (as well as the scripts) are tuned for 32-bit Linux. You will have to edit them for 64-bit Linux (especially the compile-boinc-* and compile-seti-* scripts)."

I'm an Ubuntu 6.06 64-bit user and I have very little experience in compiling software. Could you please add to your guide the required instructions for 64bit?

Another 3 questions:
1. I have a Pentium D, so I guess the Intel compiler is adequate. But the AMD users should use it too?

2. If the SETI team decides to upgrade the client, what happens if I'm using yours, which is modified?

3. I think Pentium D supports SSE3, can I use this in ./compile-boinc-xxxx? Or should I use EM64T? This question also extends to ' CFLAGS="-march=pentium4 -msse2 -mfpmath=sse ${CFLAGS}" '. What should I have instead of 'pentium4'?
Logged
Simon
Ni!
Lord o' the Board
Knight who says 'Ni!'
*****
Offline Offline

Posts: 1053



View Profile WWW
Re: How to make your own optimized Seti@Home client for Linux
« Reply #4 on: 28 Aug 2006, 12:07:46 pm »

Hi ngdias,

yes, the Intel compiler is appropriate to use for AMD owners, as well, as it produces the fastest code for PCs around - even though AMD CPUs may be slightly slower than Intels using these versions, they are still quicker than if you use any other compiler/library package.

When the S@H team decides to release a new app, I will release one as well (based on the official sources). As with all other optimized apps so far, you will have to update yours manually. Sorry, there is and will be no auto-update of the applications, that is way outside the scope of my activities Smiley Still, I may release a separate app that tries and finds out what version you're using and whether there is a more recent one available. Will take time.

Yes, you can create a new compile script that uses SSE3 - however, you will have to do more than just copy it to a new name - specifically, you will need to edit the compile script and change all occurrences of sse2 to sse3 as well as change "/xW" or "/xN" to "/xP". Please consult the ICC man pages for explanations on what these options really do Smiley

I will release updated Linux sources and update the How-To as well to reflect these changes, so either do it yourself now or be patient, please Smiley

As for 64-bit compilation, I really cannot give you hints there as I haven't been able to devote much time to it yet.

Regards,
Simon.
Logged
ngdias
Knave
*
Offline Offline

Posts: 2


View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #5 on: 28 Aug 2006, 04:29:08 pm »

Thanks for your reply. I'll wait for your update to see how it's done... I hope you will be able to do some more testing in 64bit too.
Logged
Simon
Ni!
Lord o' the Board
Knight who says 'Ni!'
*****
Offline Offline

Posts: 1053



View Profile WWW
Re: How to make your own optimized Seti@Home client for Linux
« Reply #6 on: 03 Sep 2006, 04:49:33 pm »

Hi folks,

I finally had time to update the BOINC & SETI@Home Linux sources and build scripts. So, the sources archive in the Downloads section now points to the new file. These sources include build scripts for MMX-SSE3 with all flavours in between, the checkpoint() fix as well as some minor tweaks in the IPP department.

HTH,
Simon.
Logged
Sancio
Squire
*
Offline Offline

Posts: 13



View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #7 on: 20 Dec 2006, 03:16:48 pm »

Hi, I tried to compile 1.3 source but unsuccessfully.
My system:
Pentium 4 3GHz
Slackware 10.1
ICC 9.1.045
IPP beta 5.2.011

Only missing requisite libcurl>=7.13.2, I have 7.12.2.

boinc compile fine with compile-boinc-sse3-p4 adding the option --disable-client to the configure because of the libcurl
Could be this the error?
The client is needed or are enough the library?

For seti_boinc I used compile-seti-sse3-p4 not modified with the exception of the icc/ipp path (in attach)
I tried too the configure modify that you suggest for SSE2, but with the same results with the exception of this warning:
icpc: Command line warning: ignoring unknown option '-mfpmath=sse'

The errors are in attach, some example:

icpc: Command line warning: ignoring unknown option '-finclude'
/home/gtoso/src/kwsn/boinc/lib/util.h(66): remark #981: operands are evaluated i
n unspecified order
          s.size()>=suffix.size() &&
[...]
../db/track_mem.h(31): remark #193: zero used for undefined preprocessing identi
fier
  #if DEBUG_ALLOCATIONS
      ^
[...]
icpc: Command line warning: no action performed for specified file(s)
[...]
sincos.h(44): error: omission of exception specification is incompatible with pr
evious function "sincos" (declared at line 82 of "/usr/include/bits/mathcalls.h"
)
  void sincos(double angle, double *s, double *c);
                                                 ^

Where I mistake?
Thanks,
Gianluca.

* compile-seti-sse3-p4.txt (1.01 KB - downloaded 2 times.)
* errore2.txt.gz (3.6 KB - downloaded 2 times.)
Logged

Sancio
Squire
*
Offline Offline

Posts: 13



View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #8 on: 23 Dec 2006, 01:51:42 pm »

I retried to compile with new libcurl, but unsuccessfully  Angry
boinc compile fine (client too), but seti no.
It's a Slack problem? Or IPP 5.2 beta? I need IPP 5.1 or old?
May be I'll retry with IPP 5.1...
But if you can help me it's better  Grin

Thanks,
goodbye.
Logged

Simon
Ni!
Lord o' the Board
Knight who says 'Ni!'
*****
Offline Offline

Posts: 1053



View Profile WWW
Re: How to make your own optimized Seti@Home client for Linux
« Reply #9 on: 23 Dec 2006, 10:11:38 pm »

Hi Gianluca,

I've had those errors often as well. I usually "fixed" them, if nothing else helped, by editing the respective #ifdefs and #defines that redefine sincos and the other mathematical functions.

However, Michael Buckingham has offered to help porting the 2.0 sources to Linux, so maybe we will soon have new stuff to compile anyway Wink

Merry Christmas!
Simon.
Logged
Sancio
Squire
*
Offline Offline

Posts: 13



View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #10 on: 24 Dec 2006, 12:21:01 pm »

Thanks for the hint Simon and Merry Christmas to you too!!!
Logged

talaktalan
Knave
*
Offline Offline

Posts: 7


View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #11 on: 24 Dec 2006, 10:03:46 pm »

Hello and Merry Christmas!

Did anyone sucessfully install the IPP libraries on Ubuntu 6.10?

I was able to install the ICC compiler (*) but the installation of the IPP libs fails. The workaround for the MKL libs, which is given in the Ubunto knowledgebase, seems not to work for the IPP libs. Anyone had sucess here?

Thanks for any help.

Best regards

Alex

(*) With a few changes to the install scripts: /bin/bash instead of /bin/sh and alien instead of rpm.
Logged
Sancio
Squire
*
Offline Offline

Posts: 13



View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #12 on: 25 Dec 2006, 10:07:25 pm »

Hi Gianluca,

I've had those errors often as well. I usually "fixed" them, if nothing else helped, by editing the respective #ifdefs and #defines that redefine sincos and the other mathematical functions.

Thanks,
Finally the compilation has gone successfully Grin

I commented line 44-48 of client/sincos.h
and added "tools/Makefile" to AC_CONFIG_FILES in configure.ac
(otherwise tools/Makefile is not updated and compile fail).
However I doubt that I need fakedata...

My first binary (SSE3/P4 ICC 9.1.045 IPP beta 5.2.011) seem to crunch fine.
In my tests it's the quickest with the exception of Josefs-WU where KWSN SSE2 is better.

For curiosity I will try to compile a SSE2 client in order to see if the improvements depend on the new version of ICC/IPP or on SSE3.

Code:
Current WU: testWU-4

---------------------------------------------------
Testing seti-sse3-p4...
Running S@H client seti-sse3-p4....
Time for seti-sse3-p4:
261.35user 5.83system 4:54.54elapsed 90%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (1major+375869minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing crunch3r-sse3...
Running S@H client crunch3r-sse3....
Time for crunch3r-sse3:
295.70user 3.71system 5:25.84elapsed 91%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (15major+375575minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing setiathome-5.15-kwsn-1.3-sse2-p4...
Running S@H client setiathome-5.15-kwsn-1.3-sse2-p4....
Time for setiathome-5.15-kwsn-1.3-sse2-p4:
270.68user 3.81system 4:56.97elapsed 92%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (29major+20977minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing default-512...
Running S@H client default-512....
Time for default-512:
500.46user 2.34system 9:33.83elapsed 87%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (34major+8620minor)pagefaults 0swaps
---------------------------------------------------


Current WU: testWU-1

---------------------------------------------------
Testing seti-sse3-p4...
Running S@H client seti-sse3-p4....
Time for seti-sse3-p4:
2713.52user 22.77system 50:32.40elapsed 90%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (49major+1448335minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing crunch3r-sse3...
Running S@H client crunch3r-sse3....
Time for crunch3r-sse3:
3005.21user 22.43system 55:49.68elapsed 90%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (27major+1448340minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing setiathome-5.15-kwsn-1.3-sse2-p4...
Running S@H client setiathome-5.15-kwsn-1.3-sse2-p4....
Time for setiathome-5.15-kwsn-1.3-sse2-p4:
2676.01user 14.39system 53:07.93elapsed 84%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (59major+40139minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing default-512...
Running S@H client default-512....
Time for default-512:
4431.06user 20.63system 1:21:13elapsed 91%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (49major+13157minor)pagefaults 0swaps
---------------------------------------------------


Current WU: testWU-6

---------------------------------------------------
Testing seti-sse3-p4...
Running S@H client seti-sse3-p4....
Time for seti-sse3-p4:
48.45user 2.99system 0:54.73elapsed 93%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (47major+34454minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing crunch3r-sse3...
Running S@H client crunch3r-sse3....
Time for crunch3r-sse3:
69.82user 0.39system 1:14.21elapsed 94%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (20major+34192minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing setiathome-5.15-kwsn-1.3-sse2-p4...
Running S@H client setiathome-5.15-kwsn-1.3-sse2-p4....
Time for setiathome-5.15-kwsn-1.3-sse2-p4:
52.51user 2.16system 0:58.44elapsed 93%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (47major+15527minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing default-512...
Running S@H client default-512....
Time for default-512:
93.22user 0.47system 1:59.16elapsed 78%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (5major+8383minor)pagefaults 0swaps
---------------------------------------------------


Current WU: Josefs-WU

---------------------------------------------------
Testing seti-sse3-p4...
Running S@H client seti-sse3-p4....
Time for seti-sse3-p4:
483.40user 5.47system 8:50.17elapsed 92%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+161341minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing crunch3r-sse3...
Running S@H client crunch3r-sse3....
Time for crunch3r-sse3:
542.71user 3.34system 9:52.80elapsed 92%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (10major+161055minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing setiathome-5.15-kwsn-1.3-sse2-p4...
Running S@H client setiathome-5.15-kwsn-1.3-sse2-p4....
Time for setiathome-5.15-kwsn-1.3-sse2-p4:
463.96user 4.41system 8:27.15elapsed 92%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (32major+17910minor)pagefaults 0swaps
---------------------------------------------------

---------------------------------------------------
Testing default-512...
Running S@H client default-512....
Time for default-512:
802.40user 3.43system 14:44.12elapsed 91%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (49major+8768minor)pagefaults 0swaps
---------------------------------------------------

Code:
gtoso@marte:~/src/kwsn/seti_boinc/client/test/testData$ ../rescmp result.sah.default-512.Josefs-WU result.sah.seti-sse3-p4.Josefs-WU
Result: these are strongly similar.
gtoso@marte:~/src/kwsn/seti_boinc/client/test/testData$ ../rescmp result.sah.default-512.testWU-1 result.sah.seti-sse3-p4.testWU-1 
Result: these are strongly similar.
gtoso@marte:~/src/kwsn/seti_boinc/client/test/testData$ ../rescmp result.sah.default-512.testWU-4 result.sah.seti-sse3-p4.testWU-4
Result: these are strongly similar.
gtoso@marte:~/src/kwsn/seti_boinc/client/test/testData$ ../rescmp result.sah.default-512.testWU-6 result.sah.seti-sse3-p4.testWU-6
Result: these are strongly similar.
gtoso@marte:~/src/kwsn/seti_boinc/client/test/testData$

However, Michael Buckingham has offered to help porting the 2.0 sources to Linux, so maybe we will soon have new stuff to compile anyway Wink

Very good news,
you tell me if I can help even if my C is much rusting.

Goodbye and sorry for my bad English :-(
Logged

Simon
Ni!
Lord o' the Board
Knight who says 'Ni!'
*****
Offline Offline

Posts: 1053



View Profile WWW
Re: How to make your own optimized Seti@Home client for Linux
« Reply #13 on: 25 Dec 2006, 10:16:02 pm »

Hi Gianluca,

tutto bene Wink

Happy you got it to compile, good work!

Regards,
Simon.
Logged
Sancio
Squire
*
Offline Offline

Posts: 13



View Profile
Re: How to make your own optimized Seti@Home client for Linux
« Reply #14 on: 25 Dec 2006, 10:21:44 pm »


My first binary (SSE3/P4 ICC 9.1.045 IPP beta 5.2.011) seem to crunch fine.
In my tests it's the quickest with the exception of Josefs-WU where KWSN SSE2 is better.


Emmh in testWU-1 is quicker KWSN, too.
I'm confused for the presence of elapsed time and not real time (as in bash builtin time)
Logged

Pages: [1] 2 Go Up Print 
Seti@Home optimized science apps and information  |  Optimized Seti@Home apps  |  Linux  |  Topic: How to make your own optimized Seti@Home client for Linux « previous next »
Jump to:  


Quote!
No act of kindness, no matter how small, is ever wasted.
- Aesop, The Lion and the Mouse

 
Site Statistics
Total Members:1,187
Total Posts:12,411
Total Topics:482
Downloads
Apps
Windows R-1.x25,177
Windows R-2.020,387
Windows R-2.236,768
Linux 32bit 1.x6,589
Linux 32bit 2.24,472
Linux 64bit 2.21,839
Alpha/IA64216
FreeBSD655
HPUX355
Subtotal:95,232
Source packs:4,170
Tool/WU packs:8,146
Total:162,728
GBs dl'd:283.99
Pages served
Today:3,124
Total:3,576,944
(since 6/26/2006)
173 Donations to S@H
U.S. Dollars:3,196.59
Euros:863.90
Last 24h:$ 0.00
Avg./24h:$ 6.18
Estim. total:$ 4,319.66
Latest Member:
phod
 
 
Seti@Home optimized science apps and information | Powered by Enigma 2.0 (RC1).
© 2003-2009, LSP Dev Team. All Rights Reserved.
Seti@Home optimized science apps and information Forums | Powered by SMF.
© 2005, Simple Machines LLC. All Rights Reserved.
Powered by MySQL Powered by PHP Valid XHTML 1.0! Valid CSS!