Folding@Home Releases GPU Client
SB_SamuraiSam writes, "Today the Folding@Home Group at Stanford University released a client (download here) that allows participants to fold on their ATI 19xx series R580-core graphics cards. AnandTech reports, 'With help from ATI, the Folding@Home team has created a version of their client that can utilize ATI's X19xx GPUs with very impressive results. While we do not have the client in our hands quite yet, as it will not be released until Monday, the Folding@Home team is saying that the GPU-accelerated client is 20 to 40 times faster than their clients just using the CPU.'"
Anybody got an idea of what kind of power constant full speed GPU calculations are likely to burn?
the Folding@Home team is saying that the GPU-accelerated client is 20 to 40 times faster than their clients just using the CPU.
Yeah, but what kind of results do you get if you combine the GPU-accelerated client with a KillerNIC video card? It must at least triple the speed. at least.
The theory of relativity doesn't work right in Arkansas.
I like the idea of F@H, but I do worry about 1) opening up my computer to security risks and 2)damaging my computer because the processor (or now GPU) is getting hammered by always being accessed.
Are either of my worries vaild? can it damage it (or speed up its death) and what's the probability of a security threat?
*''I can't believe it's not a hyperlink.''
If you are running a cracked version of folding@home you won't be able to play on ranked servers.
I wonder now if I could start a legitimate charity and start fundraising for my new graphics card, with the intention to help solve humanity's problems.
Looks like a good use of my ATI card when I'm not gaming or Google Earthing under Linux. Sweeeet!
---- The geek shall inherit the Earth.
* network card. my bad
The theory of relativity doesn't work right in Arkansas.
I doubt the GPU can do IEEE double precision floating point.
Is 32 bit precision precision enough for a scientific application
like protein folding?
Is the entire algorithm of folding a big approximation anyway?
--- Eat my sig.
While SSE vectoring unit could process a 8 double precision 64-/80-bit numbers at a time, GPU could process vectors of hundreds of numbers, but limited to the single 32-bit prescision.
Most of the established CPU demanding scientific applications will need douuble prescision. Only few problems are very well suited for lower prescision.
For that BOINC port that's been in closed-beta for so very long now...
IMHO, the work the oxford university/grid .org cancer project is more important than understanding folding. It seems that folding@home is not directly working on producing a cure and they are focusing on understanding "how" something happens.
..but I see the oxford univ. as having the most immediate and long term benefit. And iIt's a shame that project receives no publicity.
.. as cpu's get faster .. a delay would have negligible impact to the overall length of time taken. However working on directly on cures for common cancers has a more immediate benefit.
Check out http://www.chem.ox.ac.uk/curecancer.html and decide for yourself. Personally, I don't see direct value/benefit to the folding@home project. I understand that knowing about misfolding is important for certain diseases and maybe even cancers
Since the "time to a cure" by understanding protein is very long term
I highly doubt that they use floating point operations, but I could be wrong. Floating point numbers are inherently inaccurate. If I were the FAH team, I would probably be using fixed point, as it's fairly precise.
I might also think that GPUs can handle doubles as well as floats. But again, could be pure nonsense. I am not familiar enough with the low level operations of a video card.
I think newer cards with HDR and stuff like that can handle a bit more than 32-bit floats.
"With help from ATI, the Folding@Home team has created a version of their client that can utilize ATI's X19xx GPUs with very impressive results."
And therein lies the rub. While GPU's are getting more and more like general purpose vector floating point units, they remain closed architectures, unlike CPUs. Only those that can get help from ATI (or Nvidia) need apply to this game.
People running SETI@home have asked and asked about versions with various processor optimizations, or versions that use GPUs, which are very much suited to lots of parallel operations. The SETI@home team answer is that they won't release versions that use specific optimizations for specific hardware because they're worried about the integrity of the results - They want people to be running as nearly the same client as possible. Given that it's very easy to double-check a given piece of data if there's any question about it, it always made me angry that the SETI team seemed to prefer laziness to getting far more out of their clients. I'm glad the Folding@Home team isn't making the same mistake.
Note that the client is only supported for catalyst 6.5 and 6.10 (not out yet). I'm on 6.8 and getting nonstop "early unit end" errors. I'll hold off on running this until 6.10 is released.
Damn, and I've got a 9600XT just sitting on a shelf.
Sadly, Mac support is still lacking. I've got a Mac Pro with x1900xt, and I'd be happy to donate, but it runs in OS X 99% of the time, so I have to run it emulated, and I can't do the graphics card thing. Any idea when a Universal version (and/or a GPU version) for Mac will be out?
You really don't need that many significant digits for most problems. With floating point numbers, 0.00000000005 (about the width of a hydrogen atom in meters) can be expressed as a float or a double, just like 0.5 can. Also consider that all widths and distances are approximate, since the particles are constantly moving in unpredictable ways. Using 64 bit prescision would be as ridiculous as saying that the moon is 14295433070.866 inches from Earth.
You are reading a copy of my copyrighted post.
Anyone know where I can find good starting places for GPU coding? Our Vectorspace engine would really benefit from that kind of power... I'd love to learn more about it.
meh
That might be a bit challenging, considering that I don't think that GPUs work very well with fixed-point (or any non-floating point) operations.
Ewige Blumenkraft.
Since we're dealing with measurements (or at least simulated measurements) of the real world, the numbers are always going to be inaccurate. Even in fixed point, errors accumulate. They just accumulate in different ways.
One problem with floating point is that it risks being unrepeatable. If you don't carefully define the terms of rounding, you'll have two different machines arrive at different results on the same calculation. But as long as you pick a standard (e.g. IEEE 754), your results are repeatable. Not any more accurate, but repeatability can be important, too, when you're dealing with potentially chaotic systems.
Now, if the GPU hardware doesn't inherently support your rounding standard you'll have a hard time getting repeatable answers out of it. You can compensate but it's a pain in the nuts, and it undoes a lot of the advantage of having your math engine in hardware.
Precision is purely a matter of the number of bits you throw at the problem. Fixed point is not inherently more precise; in fact, if the numbers you're working with aren't in the middle of the range of your chosen fixed point it'll be wildly imprecise.
They may well want to use integer operations rather than floating point or fixed point. When you can redesign your operations for integer arithmetic, you get repeatable results and the operations are very, very fast. But integers can be very imprecise, for the same reason fixed-point operations are.
...but apparently finishing the friggin OSX/Intel port they've been working on since January isn't.
It's ok, I didn't want to help cure cancer anyway.
0 1 - just my two bits
Not all the power gets dissipated as heat. Some gets sent down the Internet tubes.
Obama likes poor people so much, he wants to make more of them.
go figure...
Argh .. I didnt say that we should stop all non direct cancer cure research!!
.. I'd be saying you're the one who's claiming only one project is important, without even doing any real background research to see what other important projects are there.
I am saying, there are other projects that we should know about and help out such as the grid.org one. Why put all eggs in one basket? Basically, if I were to react like you
I would probably be using fixed point, as it's fairly precise.
"Fairly"?
It's a win/win situation. Folding@Home crunches more data and the electric company makes more money.
The point is that you can get documentation to program CPUs, at really low level (instruction sets, register maps, glitches and workarounds, etc), without so much fuss and do whatever you want, just visit Intel, AMD etc sites and get the PDFs. While for GPU you only matter if you are big and keep the information secret or go with the provided code.
1) Pande stole the idea from Seti
2) Why should our computers get ruined for him to get the Nobel Prize or something?
3) Let him apply for grants from NIH or NSF and use the money to build chusters for his computations like everybody else.
4) Stealing computer cycles from you and me, this is not nice. We paid hard cash for our computers, we bought them for ourselves, not for some other scientists.
5) Charity is for poor people, not for scientists.
6) I will NEVER EVER run folding on my computers (maybe SETI, they came up with the idea and deserve credit and some help).
I assume this is just a prelude for what is to come from AMD/ATI.. I can clearly see the line getting blurred!!!
Most of the distributed-computation projects have a very simple communication model - use HTTP to download a chunk of numbers that need crunching, crunch on them for a long time, and use HTTP (PUT or equivalent) to upload the results for that chunk, etc. Works fine through a corporate firewall, and the only significant tracking it's doing is to keep track of the chunks you've worked on for speed/reliability predictions and for the social-network team karma that helps attract participants.
Online games normally have a much more complex communications model - you've got real-time issues, they often want their own holes punched in firewalls, there's user-to-user communication, some of which may involve arbitrary file transfer, and many of the games are effectively a peer-to-peer application server as opposed to the simple client-server model that distributed-computation runs. Fortunately, gamers would never use third-party add-on software to hack their game performance, or share audited-for-malware-safety programs with their buddies, or "share" malware with their rivals, or run DOS or DDOS attacks against other gamers that pissed them off for some reason.....
As far as the effects of running a CPU or GPU at high utilization go, most big problems will show up as temperature, though there may be some subtle effects like RAM-hogging number-crunchers causing your system to page out to disk more often. Not usually a big worry if you're running a temperature monitor to make sure your machine doesn't overheat. Laptop batteries are an entirely separate problem - you really really don't want to be running this sort of application on a laptop on battery power. I used to run the Great Internet Mersenne Prime Search when I was commuting by train, and not only did it suck down battery, the extra discharge/recharge cycles really beat up a couple of rounds of NiMH battery packs. Oh - you're also contributing to Global Warming and to the Heat Death of the Universe. But finding cures for major diseases is certainly a reasonable tradeoff, and we'll do that faster if you're using your GPU as opposed to 10 people using general-purpose CPUs.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
...when somebody would start to do other things with the GPU other than graphics!
When I first started poking around with Open GL, and learning what it is to make a 3d application, i started wondering when other applications would start taking advantage of the matrix crunching power a gpu.
Precisely.
Anybody know if this would benefit from Crossfire?
Great, now we can run Folding @ home 20x faster. And still get nothing out of it.
At least your worry number 2 is somewhat valid. I have a Dell machine whose CPU fan goes faster when the CPU works harder (and therefore gets hotter). After a few weeks of running F@H the machine failed. Luckily it was still in warranty and a new motherboard solved the problem without data-loss. So, I learned that my machine was not built for constant processor work even when it had been (and still is) excellent for irregular heavy usage (Java development)
Has anyone harnessed these folding algorithms for de/compression? Because 20-40x more power that can be stuffed into several PCI slots for parallel de/compression so cheap is worth waiting through all these exotic @Home projects to get better Net streaming.
--
make install -not war
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
But what exactly is folding? And yes, I know I can find out in 30 secs on google, but 1) i'm lazy, that's why I read slashdot and 2) the headline should've given a one sentence description.
My video card, for one, welcomes our new Folding@Home overlords
Workstation-class OpenGl accelerators with 128 bit precision across the entire rendering pipeline. Traditionally used in CAD apps and other 3D content creation apps and now as a highly parallelized solution at render farms. That might do the trick without approximation. But I doubt you could do that with consumer-level gaming cards without the tricks and hacks that people who program these GPUs are so accustomed to use.
Hogwash. That was a defective machine. I've run F@H on plenty of machines -- including Dells -- and have never seen such a failure. (And if one had failed, I would still consider it defective.)
Your god may be dead, but mine aren't!
Is there any way I can use this to make my next graphics card purchase tax deductable?
So how common are the ATI x1900 and x1950 cards? Are they something that 50% of the ATI side of the market has, or are they something that 5% of the leet gamerz use but most other people don't?
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
I hope that shooting the monsters resulting from dna folding and recombination will look quite impressive with these GPUs.
In soviet russia, Home@Folding ?
The power drain of Folding@home on a GPU is not worth worrying about in comparison to the millions of people who play high-end graphics games using their GPU. Even if it is 80 watts for running Folding@home, at the very least it is doing some good, which is more than what can be said for those high-end grapics games. (ducks)
I'm at the junction where you claim Google Earth doesn't support Linux. Perhaps you meant that Folding@Home has no Linux client, despite there benefitting the most from such an install-base having the most security without the fatigue of corruptable data processing. Ryan "Icculus" Gordon had News posted on his ICCULUS domain, here, that he is the developer for Google Earth. On the other hand, for Folding@Home, please don't rule-out a Linux client just yet; distributed computing is the main-course meal of charity among UNIX system and network adminsitrators pledging non-used process to events, for the sake of progress and advertisement for "creditor" fragrancy among the conclusion of said-charrities progress. To think, the Breast Cancer "jogathons" wouldn't be successfull if said "participants" didn't make appearance to assume among their joys at hand the blessing they can bestow in number to complete a calculated milage or task to the event.
Great advertising space, Folding@Home is become. Same as SETI@Home.
without prejudice
I don't know about the math per se, but if you view the your computer as a 'black box,' and just look at what's going into and what's coming out of it, there's little actual work being done in the physical sense, aside from heat production and some air movement due to the cooling fans. (And some photons from lights and some magnetic flux if it's not well shielded.)
a mics_and_information_theory )
I suspect that a good model for its energy consumption would just be a big resistive along with some capacitive and inductive load (I'm not really sure what those switching supplies "look like" from upstream in the power grid). It doesn't send out a whole lot more electricity via its network connections than it receives in from them, so they're basically a zero-sum.
Information theory is not really my area but I think if you want to try to measure or think about the "work" done by a computer, you might be best trying to think about it in terms of information entropy. I guess one could almost think of a computer as a converter, which uses physical (usually electrical) energy and does work by changing the information entropy of the system around it. There seem to be various hypotheses as to links between thermodynamic entropy on the microscopic scale and information entropy, although I'm not sure if any of them are really applicable to your question. (There is a WP article on the subject but it is in rather poor shape: http://en.wikipedia.org/wiki/Entropy_in_thermodyn
In classical terms however, I think it's safe to say that your computer is just a very expensive space heater. It takes in electricity from the mains plug, and produces heat (and light, and sometimes some other trivial outputs); the tough question is that in doing so, does it do something else that is worth to you, the cost of the electricity? Since you're reading this, I think it's a good assumption that the answer is yes.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
You make a very good point.
A computer that does some task today, should -- assuming it wasn't designed to be flawed or have a fixed life expectancy from the very beginning -- still be capable of doing that task in ten years. And for the most part I think this is true; it will.
Most computers that are 10 years old still run fine today (ones that were well-made in the first place); the problem is more one of finding a purpose for them, and then finding software to run on them, then getting them to start. Actually, I would wager that lots of computers that are 20+ years old would still run fine today, depending on how they've been stored and taken care of in the interim.
The problem isn't that machines really "wear out" all that quickly; with some exceptions few do. It's more the relentless drive of increasing expectations that puts working equipment in the landfill. At least for home users; commercial users have their support contracts to worry about, so it's slightly more complicated.
Case in point: I have an Apple IIc in my closet right now, which I know for a fact works fine. I could take it out tomorrow, set it on my desk, put in Apple Write, fire it up and start typing away. Somewhere around I even have a dot-matrix serial printer that I could use to output from it. Everything that Apple advertised that computer as capable of doing, it is just as capable of doing today as it was twenty-one years ago. So why am I not using it? Why am I sitting here with a computer that's only four years old, when I have a perfectly functional computer from 1984 in my closet? It's not because I like spending money. It's because I want to do things that I can't do on an old computer. There are a lot of things that I consider necessities, or at least things that are nice enough to have that I'm willing to pay for them, that weren't possible or even considered more than a few years ago.
If you honestly think that what you can do with a computer today is all you're ever going to want to do -- that you won't see some neat feature on your friend's box in 2014 and decide that you need to have it -- then you're absolutely correct; the computer you have now is the last one you ought to ever have to buy. Realistically though, most people aren't like this; they know that the computer they have today isn't going to be something they're going to want in five or ten years, and they're not willing to pay for a machine that's built to last longer than that.
The things that people use home computers for has changed, and will continue to change, and the tasks that people want to use their computers for will drive the upgrade cycle far faster than the breakdown rate of the components does.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
Methinks you got a bad machine. Good that it was under warranty, though.
I've had more than a few crappy machines that I've run at 100% utilization for months or in one case years on end, without catastrophic failures, so I don't think that any consumer machine is "not built for constant processor work." I suspect that there is a higher rate of manufacturing defects in el cheap consumer machines versus higher-end ones because of more lax quality control, but I don't think they're designed that poorly with certain exceptions (ones that have known overheating issues).
Not that I would recommend that anybody actually purchase one, but if I was going to get a $500 OfficeDepot "blue light special," one of the first things I'd want to do to it would be to put Boinc on and peg the processor and GPU at 100% for however long the return policy on the machine was, just to see if I could find any manufacturing defects. If it incinerates itself, back to the store and get a new one -- it was probably defective. Repeat until one survives, and more likely than not it'll probably still work when you decide to recycle it for something new.
Just as an anecdote, I have an old Compaq 600MHz Celeron that's been running at 100% for several years, with the same uptime as the power company (probably not 'five nines,' but not totally third-world either). At any given time the whole case will be rather hot to the touch. Hasn't failed yet. Admittedly, back when this was being used as a desktop computer, I think it went through a motherboard, two hard drives, and a cooling fan -- pretty much everything in it besides the floppy drive and the PSU crapped out -- so I think it's been exorcised of any defective components.
I really am convinced that the price you pay for better hardware -- and for high quality parts in general -- are less changes to the inherent design, but better quality control and a lower overall defect rate.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
- Is the ATI 19xx available in PCI, AGP or PCIe x1?
- Is a PCI or AGP card an option, or does it need PCIe's throughput?
- When the FAQ says not to run multiple video cards, is that a system limitation due to DirectX, or can you run an nVidia as your primary card and have an ATI 19xx series in, say, the second PCIe x16/8 slot?
- (And for personal interest, is there a 19xx series card that's passively cooled?)
Basically, can I pickup a cheap X1900 and whack it into my PC just for Folding@Home?Finally finished having a little play. Did a bitonic sort of 4.19x10^6 floats in 0.09s. LU decomp with partial pivot (n = 2000) in 1.2s. Does beg the question, why don't they put this power into ordinary CPUs? I understand only special algorithms will work, but, damn!
.
Based on these results, we can clearly say that Radeon X1900 XTX is targeted to really heavy gamers running DirectX 9.0 and beyond games at a resolution of at least 1600x1200 with all image quality settings at their max. If you won't run your games at these configurations, buying a Radeon X1900 XTX is pointless, since you can have almost similar performance with "cheaper" products.
In our opinion, paying between USD 590 and USD 650 for a video card is insanity even for the most hardcore gamers, as there are high-end video cards that provide far better cost/benefit ratio available at the market (Radeon X1800 XT and GeForce 7800 GTX are good options with you have the money to buy them and Radeon X1800 XL and GeForce 7800 GT are terrific solutions for those that aren't crazy enough to pay more than USD 400 on a video card).
--hardwaresecrets.com
I predict that this new client that runs on ATI hardware will cause a spike in sales of their products. I, for one, will be trying to get this card for my computer so that I can improve the rate that folding@home runs on my system. And I'm certain that others have the same intention.
If you think about that, it says something about us that I think is important; people want to help and they're willing to spend their money to be helpful.
The concept of voluntary grid computing is a curious one. Why do people do this? Surely one more little CPU grinding away at a huge problem won't make a difference. Yet even though we all know this, we do it anyway. The result of this collective hopefulness and helpfulness is tangible. But what else is strange is that so little notice is given to grid computing. I don't recall hearing about it on CNN or any other news television program. SETI gets air time because it's so, well, 'out there', but the folding, aids, cancer/find-a-drug stuff is operating in obscurity.
BTW, kudos to Slashdot for helping get the word out. I first heard about grid computing here.
Best regards.
> Folding@Home team is saying that the GPU-accelerated client is 20 to 40 times faster than their clients just using the CPU
What kind of hardware they tested it on? If the CPU is 2 GHz, doesn't 20-40 times faster mean that the GPU runs at something like 40-80 GHz? That's incredible.
Or do the triangle rendering algorithms in the graphics card somehow help the folding calculations?
.. but not interesting.. I don't want my tax dollars to go to graphics cards. (I understand the parent was being funny, but a mod doesn't seem to.)
// MD_Update(&m,buf,j);
How reliable will the results from the GPU client be? I've got a video card that's on the verge of overheating, so it often exhibits stuff like a few flashing polygons when playing games. It doesn't crash, though.
Will things like this affect the outcome of the calculations, and give bad results? While an overheated CPU usually crashes and burns long before it can submit bad data, I am worried that overheating GPUs might give bad data which aren't obviously bad.
Whereas grid.org is part-sponsored by them, presumably because of interest in smallpox and other bioweapons...Not saying grid.org's evil, just something to bear in mind...
Obviously scientists don't even trust Macs :)
Because you wouldn't be able to implement the binary operations to create IEEE-754 double-prescision floating point math based on matrix operations or shader programs ... mhm.
Latest technology will solve "*@home" projects first
"u = 6.0f; if( isnan(i) ) i = free(man);"
assert(free(i), isnan(*i));
(Unfortunately, doomed to fail.... maybe that says something?)
Problem: Given 1D chain of aminoacids, predict 3D structure they fold into.
Solution involves resolving two major problems.
1) For any given two folds identify which one is the "real" one, or closer to the "real" one. This is done by assessing the quality of the fold using a scoring function, for example Gibbs energy (more physical approach) or how well the fold resembles one of the naturally existing folds (empirical approach).
2) One has to be able quickly review myriads of different folds, preferably bypassing obviously unreasonable folds en masse.
The second problem is practically solved for small one-domain globular proteins. The folding of a small globular protein in nature might take 1microsec and methods of molecular dynamics (think Newton laws applied to polypeptide chains) are capable to model the process of folding at this time scale using massive computing (for example, the subj project)
THe first problem, au contre is not solved at all. We do not know perfect scoring function or scoring function that is good enough to distinguish between two folds of the protein. We even might never know it.
You need both problems to be solved to be able to solve the folding problem.
I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
double and quad precision is possible on a gpu. link to paper.
I wonder if there are any plans to make a FAH client.
There are a WHOLE lot of Xbox 360s out there already.
Even if you only want the result of a calculation to single precision (with an error of around 3 parts in a billion), you may *require* far more precision for intermediate results. For example, in solving linear systems of equations you may need double precision for the computation for single precision accuracy in the result (basically the result will be stored in 64-bits, but only 32-bits worth are reliable... the rest is noise). This occurs when the matrix associated with the linear system has a large "condition number", a measure of the instability of error sensitivity. You can require arbitrary amounts of intermediate precion (1024 bits per number!) depending on how big the condition number is.