View Full Version : Advancing the course of human science in your spare time!
Got some spare cpu cycles? Is your server not 100% busy all the time?
Think about contributing spare cpu-cycles to a good cause.
http://www.stanford.edu/group/pandegroup/folding/
I thought it would be fun if we had a serverbeach group to see how well we could do. The group number is 37786. It might not show up in the statistics page for a day or so.
Interesting to note, Google (and its collective through toolbar) has taken the number one spot in terms of cpu cycles donated.
http://toolbar.google.com/dc/faq_dc.html
You can configure it to run in the background and only process data when nothing else is going on. You and your customers won't even notice its there. But tell them about it for even more good karma!
Perhaps when next time you, a friend, or a family member gets sick, we'll be able to better treat the disease due in some small part to your box folding proteins.
Best of all it doesn't cost you anything. And it yields oodles of good karma.
If anyone needs instructions how to set this up to run without interfering with normal server operations on a Unix box, let me know and I will post a short howto. (its really simple)
Thanks,
fork()
Just a note on this.
A while back after using SETI (http://setiathome.ssl.berkeley.edu) I signed up for a cancer research one. It turned out to be just a generic drug company using to test their drugs for profit only. Just be weary of who you are helping. I am not saying this is deceptive.
SETI is the Search for Extra Terrestrial Intelligence http://setiathome.ssl.berkeley.edu
Please read some of the information surrounding folding@home before comparing it to some drug company scam.
The analogy I can best come up with, is you are comparing Home Depot to some Multi-level marketing scam that promises everyone a free appliance if they just send out 500 letters...
You give people the wrong impression.
This is one of the most respected large-scale distributing computer efforts ever, on par with SETI at home.
fork()
ferret
2004-06-15, 11:16 AM
I thought the address of "stanford.edu" should have hinted that it was legit.
Infopro
2004-06-16, 23:21 PM
I'd like to read your instructions if you'd like to post them. I haven't looked into that at all, but would like to do that if I could.
Our team (http://vspx27.stanford.edu/cgi-bin/main.py?qtype=teampage&teamnum=35656) is in the top 1000 right now. We're an up and coming group on this helping to find a cure and I'd love to hook up the server to run this (quietly) in the background if I could.
I have it on two boxes here at home running 50% of my CPU whenever it gets its hands on the system.
Thanks in advance.
Sure thing.
Following is intended to be done from a user shell, NOT ROOT, and not some web control panel thingie.
things inside '...' are commands
the script is intended to be cut and pasted as is. note the ` in the ---- begin / end script ---- are BACKTICKS
1. give folding at home a new home. (punny!)
'mkdir ~/fah'
2. cd to home
'cd ~/fah'
3. grab the binary from stanford.edu
'wget http://www.stanford.edu/group/pandegroup/release/FAH4Console-Linux.exe'
4. fix permissions
'chmod 755 ./FAH4Console-Linux.exe'
5. verify you have the real file by comparing checksums
'md5sum ./FAH4Console-Linux.exe''
5a. you should see the following:
d8ca3f78a3fff62059b780891d4c1e06 ./FAH4Console-Linux.exe
6. run program normally first to configure your user account / group account etc. (note you need to create an account on their website first)
'./FAH4Console-Linux.exe'
6a. # follow the simple setup instructions, don't worry about advanced setup.
7. write a little script to automagically startup folding at home properly.
'cat > ~/fah/do_folding.sh'
*** CUT N PASTE THE SCRIPT INTO THE WINDOW
---- script begin----
#!/bin/bash
`which nice` --adjustment=19 `which nohup` ~/fah/FAH4Console-Linux.exe &
---- script end ----
*** HIT CONTROL D TO SAVE THE SCRIPT
8. fix permissions on script
'chmod 755 ./do_folding.sh'
9. run script
'./do_folding.sh'
9a. you should see something like
[fork@testbox fah]$ ./do_folding.sh
[fork@testbox fah]$ nohup: appending output to `nohup.out'
10. verify the folding daemon is running properly.
'top'
You should see a process called ./FahCore_soething.exe
and in the column under "NI" it should read 19 and in the column under "%CPU" it should be pretty high (whatever idle cycles are available).
11. want to watch your output ?
'tail -f ~/fah/nohup.out'
control-c will exit out of viewing the logfile
*** Turning it off.
1. If you want to stop folding from running do this
'ps -aux |grep FAH |grep -v grep'
you should see a line like:
fork 4029 6.5 0.1 37884 764 pts/8 SN 00:59 0:04 /home/fork/fah/FAH4Console-Linux.exe
2. kill the process gently, replace 4029 with whatever the first number from above is on your box
'kill -15 4029'
2a. wait about 5-30 seconds and verify the daemon exited. (it needs a few seconds to shutdown cleanly, you can view the logfile as in step 11 to make sure this is working)
'ps -aux |grep FAH |grep -v grep'
2aa.After you allow some reasonable amount of time (depends on how loaded your machine is at doing other things) you should see nothing when you run the above command the second time.
2b. if for some reason you still see it, kill it not-so-gently.
'kill -9 4029'
Notes:
You can safely logout of the machine and the program will continue running in the background.
Anytime you reboot, simply run ~/fah/do_folding.sh to start it up again.
the 'nice' command is not strictly needed here because the daemon renices itself to 19, but I like to be explicit.
users who cut and paste the script on windows and upload it to linux will have to remove the CRLF with a program like dos2unix first. (search the forums here for some information as well as google for it)
Please post any corrections/bugs to this thread.
--fork()
ferret
2004-06-17, 09:17 AM
Do be careful though. I'll try fork's method of scripts later, but if you just plain run the Linux console by itself and don't care about building a log file up like he did, I had it cause a kernel panic on a Debian Unstable system with 2.6.4 installed. Could be entirely due to the fact that the server is running Unstable Debian, but I wouldn't throw this on a production server by any means.
Your kernel panic is related to running unstable kernels, I have stated in another thread, 2.6.x IS NOT STABLE.
That thread is here:
http://forums.serverbeach.com/showthread.php?s=&threadid=3591
The latest kernel is 2.6.7 released yesterday morning, so if you're going to run development kernels, you should get the latest since in all likelyhood anything less than the bleeding edge, when you're talking bleeding edge, is guaranteed to be more broken.
If you value your business, you would be foolish to run 2.6.xx on anything in production.
Please do not confuse unstable kernels, with folding at home not being safe for production systems.
Folding@home runs in userspace, not kernel space. Userland can't force a kernel panic unless it triggers an underlying bug in kernel land... This is fundamental to how UNIX is designed.
Run the program on a stable kernel (2.4.xx)
Note: the 2.6.xx is a bit deceiving because we were led to beleive that 2.even is stable, and 2.odd is development. Well that is supposed to be true, however there is no 2.7.xx so all development work is currently being done in 2.6.xx (with the hopes of it actually becoming stable). As soon as the kernel is reasonable stable (AND IT IS NOT THERE YET), a 2.7.xx branch will be created (there are a bunch of changes Linus is making in general to the way in which peoples code is validated before accepting patches.) 2.7.xx will need to institute all of these new policies that are currently being discussed and solidified.
--fork()
P.S. If folding@home triggers a kernel panic in the latest and greatest 2.6.xx or 2.4.xx i'm sure the linux kernel developers would love to hear about it so they could fix the underlying kernel issue. But check to make sure you are running the latest and greatest, because otherwise your issue is most likely already discovered and fixed.
Supplemental instructions to the mini-howto:
Add a 'cd ~/fah' right after the #!/bin/bash line in the script like so:
---- script begin----
#!/bin/bash
cd ~/fah
`which nice` --adjustment=19 `which nohup` ~/fah/FAH4Console-Linux.exe &
---- script end ----
This insures that if you run the script from anywhere it will properly be able to find its working data/config files.
If you want to erase the 'logfile' at any time, simply
1. 'cd ~/fah'
2. '> nohup.out'
Unless your computer is perhaps 1000 times faster than the fastest X86/AMD chip being sold today, the logfile will grow by perhaps 1-10 lines per hour. At that rate, it will most likely be years before the logfile grows to even 1 megabyte in size. 80 gigs = 80,000 megabytes, or 80,000 years before it fills up an 80 gig harddrive (approximately).
--fork()
Infopro
2004-06-18, 22:29 PM
Thanks for that, I'll give it a go. :)
I came across a forum with some neat code to make a stats page.
Here's my version of it (http://forums.infoprosjoint.net/stats/) Just loaded it today so the graphs empty.
BTW, there's a link at bottom to that thread where I got the code.
:beer:
vBulletin® v3.6.8, Copyright ©2000-2008, Jelsoft Enterprises Ltd.