Help optimize SETI@Home

Message boards : Number crunching : Help optimize SETI@Home
Message board moderation

To post messages, you must log in.

1 · 2 · Next

AuthorMessage
Eric Korpela Project Donor
Volunteer moderator
Project administrator
Project developer
Project scientist
Avatar

Send message
Joined: 3 Apr 99
Posts: 1382
Credit: 54,506,847
RAC: 60
United States
Message 45967 - Posted: 12 Nov 2004, 23:01:48 UTC

Are you a programmer? C++ expert, or know SSE or Altivec?
Mabye you know the latest GPUs (graphics processing units) for newer graphics cards
and their Floating Point features.

Then perhaps seti@home is looking for you...

Who?
o C++ experts who believe in fast clean code.
o SIMD experts - 3DNow, SSE, SSE2, PNI(SSE3), Altivec
o CPU experts - Identifying cpu at runtime + CPU features (cache, FP features).
o Documenting how the testers should use, and enhancing function documentation
o Benchmarks - RAM access speed

Why?
We are aiming to improve the speed of seti@home.

How?
The original programmers used various methods to try and make their analyses both thorough,
rigorous, and also timely. However with newer CPUs offering features such as SIMD, and newer
programming paradigms and methods, it is likeley that the original code can be speeded up by
a large percentage on the machines it already runs on.

This will allow the original data to be processed in a more timely manner.

Obstacles:
The original code is somewhat intermixed, being open source, and as such has differing levels
of documentation, commenting, and source code styles. This can sometimes be difficult to deduce
the original intent or purpose of some of the code modules.

Managing all of the different types of SIMD processors, and integrating it into the code in
an organized manner, without further complicating the source will be a major goal and difficulty.

What?:

* Optimization in C++ of existing code with no reduction in efficacy or scientific value.
* Specialized routines to take advantage of specific CPU's SIMD (Simultaneous Instruction, Multiple Data) processors. These
routines will generate as nearly identical scientific results but at much faster pace.
* CPU type, and feature set identification by the "worker" machines at runtime.

Where?
http://setiboinc.sourceforge.net/

Post your interest, along with your qualifications to the
I want to help
forum.

@SETIEric@qoto.org (Mastodon)

ID: 45967 · Report as offensive
Profile Captain Avatar
Volunteer tester
Avatar

Send message
Joined: 17 May 99
Posts: 15133
Credit: 529,088
RAC: 0
United States
Message 45985 - Posted: 13 Nov 2004, 0:25:55 UTC - in response to Message 45967.  

Hi Eric,

Very impressive resume, I noticed you have been a member since 1969?
ID: 45985 · Report as offensive
Profile Contact
Volunteer tester
Avatar

Send message
Joined: 16 Jan 00
Posts: 194
Credit: 2,249,004
RAC: 0
Canada
Message 45999 - Posted: 13 Nov 2004, 1:48:12 UTC - in response to Message 45985.  


> Very impressive resume, I noticed you have been a member since 1969?
>
This dude:


http://setiathome.ssl.berkeley.edu/~korpela/


Whatever year he wants!
ID: 45999 · Report as offensive
Profile Benher
Volunteer developer
Volunteer tester

Send message
Joined: 25 Jul 99
Posts: 517
Credit: 465,152
RAC: 0
United States
Message 46004 - Posted: 13 Nov 2004, 2:37:43 UTC

Hi all,

Eric is part of the development team and specifically is the
"...Eric Korpela (main programmer for SETI@home)" - David Anderson



ID: 46004 · Report as offensive
wckesq
Volunteer tester

Send message
Joined: 17 May 99
Posts: 15
Credit: 246,704
RAC: 0
United States
Message 46005 - Posted: 13 Nov 2004, 2:53:10 UTC
Last modified: 13 Nov 2004, 2:56:44 UTC


ID: 46005 · Report as offensive
Ulrich Metzner
Volunteer tester
Avatar

Send message
Joined: 3 Jul 02
Posts: 1256
Credit: 13,565,513
RAC: 13
Germany
Message 46156 - Posted: 13 Nov 2004, 19:12:41 UTC

Hello,

i feel qualified enough to contribute to this, but is there any way to get it also compiled on MSVC++ 6.0 SP6 with processor option pack? I don't have VC++ 7.0 at hand and since i don't see any special .net babble in the code i think it could be done.

Aloha, Uli

ID: 46156 · Report as offensive
Guido Alexander Waldenmeier
Avatar

Send message
Joined: 3 Apr 99
Posts: 587
Credit: 18,397
RAC: 0
Canada
Message 46157 - Posted: 13 Nov 2004, 19:39:33 UTC

@Ulrich
Bei mir liegt Microsoft Visual C++ net 2003 Standard (deutsch)rum.
Habe es mir mal gekauft bei Amazon,bin aber nie dazugekommen mich einzuarbeiten.
Würde dir das helfen in irgend einer Form.
ID: 46157 · Report as offensive
Profile Benher
Volunteer developer
Volunteer tester

Send message
Joined: 25 Jul 99
Posts: 517
Credit: 465,152
RAC: 0
United States
Message 46166 - Posted: 13 Nov 2004, 20:16:24 UTC - in response to Message 46156.  

> Hello,
>
> i feel qualified enough to contribute to this, but is there any way to get it
> also compiled on MSVC++ 6.0 SP6 with processor option pack? I don't have VC++
> 7.0 at hand and since i don't see any special .net babble in the code i think
> it could be done.
>
>

Ulrich,

Please come to sourceforge.net , create an account and join us.

The original seti@home was written for MSVC++ 6.0 (and GCC for linux), then updated to MSVC++ 7.0.
The original 6.0 project files are still there but have not been updated recently. Some people on the earlier boinc_opt mailing list were trying to get it to work with both, and I believe it still should if the project files were updated.
I don't have access to 6.0 myself, but having someone on the project keep that working would be great.

Feel free to go to setiboinc.sourceforge.net and checkout the online web CVS of the source code. SSE/3DNow and SIMD template are there.

=Benher
ID: 46166 · Report as offensive
Ulrich Metzner
Volunteer tester
Avatar

Send message
Joined: 3 Jul 02
Posts: 1256
Credit: 13,565,513
RAC: 13
Germany
Message 46203 - Posted: 14 Nov 2004, 0:07:52 UTC - in response to Message 46157.  

> @Ulrich
> Bei mir liegt Microsoft Visual C++ net 2003 Standard (deutsch)rum.
> Habe es mir mal gekauft bei Amazon,bin aber nie dazugekommen mich
> einzuarbeiten.
> Würde dir das helfen in irgend einer Form.
>

Danke für das Angebot Guido, aber ich bin aus dem Alter, in dem man Schwarzkopien verwendet, schon lange raus ;)
[english]
Thanks for the offer Guido, but i'm much too old to use pirated software at all ;)
[/english]

@Benher:
I'm registered user ulibaer @ sf since 2001. Can i simply join your project?
Aloha, Uli

ID: 46203 · Report as offensive
Hans Dorn
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 3 Apr 99
Posts: 2262
Credit: 26,448,570
RAC: 0
Germany
Message 46206 - Posted: 14 Nov 2004, 0:18:40 UTC - in response to Message 46203.  

> Thanks for the offer Guido, but i'm much too old to use pirated software at
> all ;)
>

Hi Ulrich!

I don't know if you want to do this to yourself, but you might
try installing cygwin and use gcc under windows.

Regards Hans

P.S:
Getting the unix files to compile is not for the faint of heart :O)

P.P.S:
I have no idea if all the libraries you'll need are available for cygwin...

ID: 46206 · Report as offensive
Ulrich Metzner
Volunteer tester
Avatar

Send message
Joined: 3 Jul 02
Posts: 1256
Credit: 13,565,513
RAC: 13
Germany
Message 46214 - Posted: 14 Nov 2004, 0:49:05 UTC - in response to Message 46206.  

> Hi Ulrich!
>
> I don't know if you want to do this to yourself, but you might
> try installing cygwin and use gcc under windows.
>
> Regards Hans
>

Thanks for the offer, this time really ;)

I already use the mingw (Minimal GNU for Windows) compiler for smaller dll/cli programs in the eclipse environment with CDT ( C development tools ) plugin. But since there is a MSVC workspace in the project i think it's easier to use that.

PS: ...on the other hand: The GNU compiler has much more optimizing options ;)

Aloha, Uli

ID: 46214 · Report as offensive
Guido Alexander Waldenmeier
Avatar

Send message
Joined: 3 Apr 99
Posts: 587
Credit: 18,397
RAC: 0
Canada
Message 46311 - Posted: 14 Nov 2004, 9:09:38 UTC - in response to Message 46157.  
Last modified: 14 Nov 2004, 9:27:06 UTC


ID: 46311 · Report as offensive
Guido Alexander Waldenmeier
Avatar

Send message
Joined: 3 Apr 99
Posts: 587
Credit: 18,397
RAC: 0
Canada
Message 46316 - Posted: 14 Nov 2004, 9:26:50 UTC - in response to Message 46311.  

> > @Ulrich
> > Bei mir liegt Microsoft Visual C++ net 2003 Standard (deutsch)rum.
> > Habe es mir mal gekauft bei Amazon,bin aber nie dazugekommen mich
> > einzuarbeiten.
> > Würde dir das helfen in irgend einer Form.
> >
> >Hallo Ulrich richtig lesen,es ist keine Schwarzkopie sondern orginal bei
> Amazon gekauft vor ein paar Monaten. für 124 Euro mit Orginal Rechnung von
> Amazon bei Bedarf,Ich bin selbst zu alt(Baujahr 1962) um etwas einzusetzen,das
> nicht ordnungsmäßig erworben wurde.
> siehe link
Falls du ein Fax Gerät hast kann ich dir ja die Orginal Rechnung zufaxen,so das du dich überzeugen kannst das alles seine Ordnung hat!
> http://www.amazon.de/exec/obidos/ASIN/B00009QWKW/qid=1100423348/ref=sr_8_xs_ap_i1_xgl/302-0001620-0569668
>
ID: 46316 · Report as offensive
Ned Slider

Send message
Joined: 12 Oct 01
Posts: 668
Credit: 4,375,315
RAC: 0
United Kingdom
Message 46349 - Posted: 14 Nov 2004, 11:29:26 UTC - in response to Message 46214.  

> > Hi Ulrich!
> >
> > I don't know if you want to do this to yourself, but you might
> > try installing cygwin and use gcc under windows.
> >
> > Regards Hans
> >
>
> Thanks for the offer, this time really ;)
>
> I already use the mingw (Minimal GNU for
> Windows)
compiler for smaller dll/cli programs in the <a> href="http://www.eclipse.org">eclipse[/url] environment with CDT ( C development
> tools ) plugin. But since there is a MSVC workspace in the project i think
> it's easier to use that.
>
> PS: ...on the other hand: The GNU compiler has much more optimizing
> options ;)
>
>

I have compiled the windows boinc cli client using Cygwin and the linux sources. It compiles fine and runs no problem. I've not tried compiling the seti client source using this method.

It would be nice to work out how to use the freely available MSVC 7.1 toolkit compiler so those that do not have access to the full MSVC or .NET applications can participate.

Will the processor-specific optimised code (SIMD, 3DNow, SSE, SSE2 etc) make it into the public sources?

Ned

*** My Guide to Compiling Optimised BOINC and SETI Clients ***
*** Download Optimised BOINC and SETI Clients for Linux Here ***
ID: 46349 · Report as offensive
Ulrich Metzner
Volunteer tester
Avatar

Send message
Joined: 3 Jul 02
Posts: 1256
Credit: 13,565,513
RAC: 13
Germany
Message 46427 - Posted: 14 Nov 2004, 14:32:06 UTC - in response to Message 46316.  
Last modified: 14 Nov 2004, 14:34:41 UTC

> > >Hallo Ulrich richtig lesen,es ist keine Schwarzkopie sondern orginal
> bei
> > Amazon gekauft vor ein paar Monaten. für 124 Euro mit Orginal Rechnung
> von
> > Amazon bei Bedarf,Ich bin selbst zu alt(Baujahr 1962) um etwas
> einzusetzen,das
> > nicht ordnungsmäßig erworben wurde.
> > siehe link
> Falls du ein Fax Gerät hast kann ich dir ja die Orginal Rechnung zufaxen,so
> das du dich überzeugen kannst das alles seine Ordnung hat!
> >

Hallo Guido,
sorry, habe Dich falsch verstanden. Ich will Dir natürlich nichts unterstellen. Da aber auch andere an einem Rückport auf VC++6.0 Interesse haben interessiert mich das mehr, zumal die alte Umgebung auch schneller und ressourcenschonender ist.
Danke nochmal für das Angebot.
[english]
Hello Guido,
sorry, have mistaken you. I didn't want to call you a pirate. Since there are more people interested in a back port to VC++6.0 i'm more interested in that. Additionally the old environment is also faster and less ressource wasting.
Tanks again for the offer.
[/english]
Aloha, Uli

ID: 46427 · Report as offensive
Profile Benher
Volunteer developer
Volunteer tester

Send message
Joined: 25 Jul 99
Posts: 517
Credit: 465,152
RAC: 0
United States
Message 46464 - Posted: 14 Nov 2004, 17:45:34 UTC - in response to Message 46349.  

Ned,

> I have compiled the windows boinc cli client using Cygwin and the linux
> sources. It compiles fine and runs no problem. I've not tried compiling the

== Cygwin was where I started with the source also ;)

I got the seti (back then) to compile eventually, but it allways had "Error -9 too many results". I didn't figure out why at that time, might no longer be a problem.

>
> It would be nice to work out how to use the freely available MSVC 7.1 toolkit
> compiler so those that do not have access to the full MSVC or .NET
> applications can participate.

== Several people on the boinc_opt mailing list were attempting to do this also.
I don't think they finished, but they did post all of their windows batch files to the boinc_opt mailing list. Poke around and you can find it.
Please could you help figuring this out?

> Will the processor-specific optimised code (SIMD, 3DNow, SSE, SSE2 etc) make
> it into the public sources?

== Yes. The code will determine CPU type and features at runtime and then during WU call the fastest functions it can for that CPU.

You have a good deal of experience with this ned. Could you perhaps help us with writing documentation on how to get a compile working? (I have a primitive one now on setiboinc.sourceforge.net)

> Ned
>
>
ID: 46464 · Report as offensive
Ned Slider

Send message
Joined: 12 Oct 01
Posts: 668
Credit: 4,375,315
RAC: 0
United Kingdom
Message 46629 - Posted: 15 Nov 2004, 6:34:51 UTC - in response to Message 46464.  

> >
> > It would be nice to work out how to use the freely available MSVC 7.1
> toolkit
> > compiler so those that do not have access to the full MSVC or .NET
> > applications can participate.
>
> == Several people on the boinc_opt mailing list were attempting to do this
> also.
> I don't think they finished, but they did post all of their windows batch
> files to the <a> href="http://www.ssl.berkeley.edu/mailman/listinfo/boinc_opt">boinc_opt
> mailing list[/url]. Poke around and you can find it.
> Please could you help figuring this out?
>


If a soultion is found I can certainly test. Unfortunately, I'm no programmer/developer so I doubt I'm the right person to try and get it working.


> > Will the processor-specific optimised code (SIMD, 3DNow, SSE, SSE2 etc)
> make
> > it into the public sources?
>
> == Yes. The code will determine CPU type and features at runtime and then
> during WU call the fastest functions it can for that CPU.


That's good news :)


>
> You have a good deal of experience with this ned. Could you perhaps help us
> with writing documentation on how to get a compile working? (I have a
> primitive one now on setiboinc.sourceforge.net)
>
> > Ned
> >

Yes, this would be an area where I could contribute (I have significant experience writing scientific publications). I would be happy to help in writing any documentation required or an online guide as required.

Ned

*** My Guide to Compiling Optimised BOINC and SETI Clients ***
*** Download Optimised BOINC and SETI Clients for Linux Here ***
ID: 46629 · Report as offensive
Profile Benher
Volunteer developer
Volunteer tester

Send message
Joined: 25 Jul 99
Posts: 517
Credit: 465,152
RAC: 0
United States
Message 46783 - Posted: 15 Nov 2004, 17:28:31 UTC

Ned,

Join up on sourceforge.
-- https://sourceforge.net/account/register.php

... and post your sourceforge ID. I will then make you a "documenter".

There is a doc posting section for managing online docs.

Anyone can post probationary documentation, only admins and documenters can make them visibile to site visitors.

ID: 46783 · Report as offensive
Profile 1202 Program Alarm
Avatar

Send message
Joined: 16 Jun 99
Posts: 239
Credit: 19,164,944
RAC: 38
United Kingdom
Message 46793 - Posted: 15 Nov 2004, 17:58:31 UTC

Is it (at least theoretically) possible for BOINC and the S@H science application to be optimized to run on a cluster? How difficult would it be to do?


SetiUK - The Offical UK Seti Site - Team Lookers
The Space Directory
Visit Seti.org.uk
SETI News Mailing List


S@h Berkeley's Staff Friends Club ©
[/url]
ID: 46793 · Report as offensive
Profile Paul D. Buck
Volunteer tester

Send message
Joined: 19 Jul 00
Posts: 3898
Credit: 1,158,042
RAC: 0
United States
Message 47376 - Posted: 17 Nov 2004, 15:17:33 UTC - in response to Message 46793.  

> Is it (at least theoretically) possible for BOINC and the S@H science
> application to be optimized to run on a cluster? How difficult would it be to
> do?

Actually, it has been done already ... YOur computers are one node in a VERY large cluster of loosly coupled processors.

Clustering is traditionally done to ensure work completions in the face of hardware failures (and in some cases software failures). Since that is not an issue with BOINC Powered Projects there is no need to run the BOINC Software on a local cluster. Each processor runs its individual WU and if there is a problem with it finishing the work is abandoned and processed elsewhere.

I hope that all makes sense ...
ID: 47376 · Report as offensive
1 · 2 · Next

Message boards : Number crunching : Help optimize SETI@Home


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