Using Other's Idle Time?

All off topic discussions go here. Everything from the funny thing your cat did to your favorite tv shows. Non-programming computer questions are ok too.
Post Reply
pcmattman
Member
Member
Posts: 2566
Joined: Sun Jan 14, 2007 9:15 pm
Libera.chat IRC: miselin
Location: Sydney, Australia (I come from a land down under!)
Contact:

Using Other's Idle Time?

Post by pcmattman »

I've recently been looking around the internet and finding screensavers that allow 'scientific progress' or whatever by contributing your computing power. How can I create my own version of one of these? And how do they work?
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Post by Brynet-Inc »

A good example of this is SETI@home and other BOINC based software..

It's a really neat Open Source distributed computing package, Basically when your not using your system it downloads "packages" of data and uses your computer to process and send results back to the SETI group.. (In this case.. sifting through lots of radio data from space)

(Basically using Internet connected computers to do all the work..)
Wikipedia wrote:With over 5.2 million participants worldwide, the project is the distributed computing project with the most participants to date. Since its launch on May 17, 1999, the project has logged over two million years of aggregate computing time. On September 26, 2001, SETI@home had performed a total of 1021 floating point operations. It is acknowledged by the Guinness World Records as the largest computation in history (Newport 2005). With over 1.2 million computers in the system, as of November 16, 2006, SETI@home has the ability to compute over 238 TeraFLOPS [1]. For comparison, Blue Gene (currently the world's fastest supercomputer) computes 280 TFLOPS.
http://setiathome.ssl.berkeley.edu/
http://en.wikipedia.org/wiki/SETI@home

You can find more about BOINC here: http://boinc.berkeley.edu/

Whats cool is:
(BOINC is distributed under the Lesser GNU Public License. However, BOINC applications need not be open source.)

I myself see it like a very big super computer,
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
pcmattman
Member
Member
Posts: 2566
Joined: Sun Jan 14, 2007 9:15 pm
Libera.chat IRC: miselin
Location: Sydney, Australia (I come from a land down under!)
Contact:

Post by pcmattman »

I've used SETI@Home...
Brynet-Inc wrote: I myself see it like a very big super computer
That's why I want to find out how they do it.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Post by Brendan »

Hi,
pcmattman wrote:
Brynet-Inc wrote:I myself see it like a very big super computer
That's why I want to find out how they do it.
Mostly, the user runs a "client' which connects the the server and asks for N jobs. The server sends N jobs and the client begins processing them. When the client is finished it sends the results and gets more jobs...

It works well if the work can be split into many independant jobs, but doesn't work if the results of one job are needed for the next.

For example, there's one to crack encryption using "brute force" (for a competition - nothing dodgy), where each client is sent a range of numbers (possible encryption keys) and each client tests to see if one of the keys in their range will decrypt the test data correctly. This works because each client only needs a small amount of data to do each job and doesn't need to care about the results from other clients.

If you can't split something up into a lot of small seperate things, then this approach is entirely useless. For example, if you want to find very large prime numbers then you need to know all previous prime numbers to find the next prime number. In this case it can't be split up because the next job needs to know the results from the previous job (and people would need to download a list containing billions of prime numbers before starting any real processing).


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Post by Solar »

Another point is, people must be interested in your project, so that they dedicate their idle time to you (instead of the RCS challenge, Seti@home or whatever)...
Every good solution is obvious once you've found it.
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Post by Brynet-Inc »

@Brendan, BTW won't your OS be similar? I remember reading somewhere on your site that BCOS was an attempt at distributed computing.

Computer 1 uses Computer 2's resources.. etc?
Last edited by Brynet-Inc on Mon Jan 29, 2007 1:13 pm, edited 1 time in total.
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Post by Brendan »

Hi,
Brynet-Inc wrote:@Brendan, BTW won't your OS be similar? I remember reading somewhere on your site that BCOS was an attempt as distributed computing.

Computer 1 uses Computer 2's resources.. etc?
BCOS is a bit different in that all computers (that are part of the cluster) always share all available resources and the cluster as a whole acts like a single larger system, rather than computers giving a limited amount of resources when/if the user gives permission (and acting as clients to a central server).

This means for BCOS, all computers must be "trusted" (as data is shared between computers without any other restrictions), the connections between computers need to be (relatively) low latency, and the system isn't limited to specific types of work.

For things like SETI@home the opposite is true - the client computers don't need to be trusted, the connections between computers can be relatively slow, and it is limited to work that is highly parallel.

IMHO BCOS is a peer-to-peer distributed OS intended for LANs, while things like SETI@home are client/server distributed applications intended for WANs.


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
TheQuux
Member
Member
Posts: 73
Joined: Sun Oct 22, 2006 6:49 pm

Post by TheQuux »

They are somewhat cool... but I've been a little worried about them since I wrote one that spends half the time doing computer vision processing, and the other half cracking the passowrds on the computer :-)

If you're wondering about it, the program name was iprocss.exe (image processing screensaver), and it "calls home" to 192.168.1.102. It shouldn't have left my lan, and if it did, it wouldn't cause much damage.

but, the point is that you have no idea how fast these things should progress on given hardware, so you have no idea whether ALL they're doing is what they say they are. I guess the potential for big-brotherly action is too big for my taste.

Now, if there was an OSS one, that I could read the source of before installing it, I would trust it. And, if there was one for Sparc64, I'd be running it on the two boxes next to my desk (because they ain't doing anything else!)
My project: Xenon
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Post by Brynet-Inc »

TheQuux wrote:They are somewhat cool... but I've been a little worried about them since I wrote one that spends half the time doing computer vision processing, and the other half cracking the passowrds on the computer :-)

If you're wondering about it, the program name was iprocss.exe (image processing screensaver), and it "calls home" to 192.168.1.102. It shouldn't have left my lan, and if it did, it wouldn't cause much damage.
Well that's interesting...

Although nobody wants to hear about your previous Windows "cracking" attempts :roll:

People write silly Windows "trojans" like that on a daily basis.

Do you like my technique of emphasis? :wink:
TheQuux wrote:Now, if there was an OSS one, that I could read the source of before installing it, I would trust it. And, if there was one for Sparc64, I'd be running it on the two boxes next to my desk (because they ain't doing anything else!)
SETI@home and other BOINC based software are usually open source, You're free to look at there source..
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
Post Reply