Folding: The Death of the General Purpose CPU

yeh – as you caught on already Jeff, the figures for the ps3 have been revised, and pretty much halved.
they’re still fairly good, just not as outstanding.

some info here:

http://gizmodo.com/gadgets/ps3folding

ATI X1900s are most definitely not specialized for protien folding, yet at the moment they’re the most powerful protien folders on the market.

X1900s are extremely specialized stream-processing units, and protein folding is a very good fit for stream-processing

I’ve heard similar issues with programming for the PS3 and Xbox

Should actually only be the PS3: the Xbox360 has a tricore general-purpose PPC processor while the PS3 has a 9core CPU composed of a general-purpose PPC-based PPE and 8 stream-processing SPEs with very high floating-point performances.

If you own an ATI X1800 or X1900 series video card, try out the GPU folding@home clients here:

http://folding.stanford.edu/download.html

Normally I recommend the console client, but for GPU support, I recommend the graphical client. It’s the easiest one to set up. Complete GPU client FAQ is here:

http://folding.stanford.edu/FAQ-ATI.html

If you’re curious what the performance/watt breakdown is for the CPU vs. GPU, there’s a nice investigation of that here:

http://techreport.com/etc/2006q4/gpu-folding/index.x?pg=1

Also, based on some forum comments by Jason Cross, GPU clients may get even faster:

[The GPU client] uses DirectX as the interface, which is causing a lot of slowdown. Word on the street is that there should be a client that uses ATI’s “CTM” (close to the metal) programming model which will bypass DirectX, eliminate some of those inefficiencies, and possibly speed up things as much as 2x or more. Hopefully they’ll do the same with Nvidia’s similar “CUDA” thing. If they can bypass DirectX as a GPU interface and use the DX10 cards, those GPU clients could easily turn in way more than 200 gigaflops each. Nutty!

The bottom line is the amount of science done.

Are the PS3/GPU work units full work units, or are they “dumbed down” to work around the limitations (?) of the PS3?

That’s the real question. TFLOPs are nice for stats-nuts, but for us science-nuts, it’s not so important…

One other bonus the PS3, and consoles in general, have in distributed computing initiatives, is that the option to start working is one of very few options on the console’s menu.

Rather than on a PC, where someone has to install the program then remember to run it - there is the option with the press of a few buttons on the console.

If they can get 50% of their installed user-base running the folding program instead of just turning off their machine, they will have a huge processor base to use (hopefully for good rather than evil).

Programmers are so very intolerant of each others’ mistakes. All the more reason to love 'em. :slight_smile:

there’s almost no point in adding general purpose CPUs to the folding network any more.

in the ps3 faq they state that you should still use norem clients too, because the ps3 client can not perform all needed calculations.

If a card with a suitable GPU is 18x faster, and costs the same as 4/5 of a year’s electricity, then maybe you could buy one and run your client for 1/10 the time, and feel virtuous on both folding work and energy fronts (though I don’t know how much energy or other resources the card takes to manufacture), and get a spiffy new card in the process.

Pete

Just a clarification, Intel Macs can also be Minis with the Intel Core Single running at 1.5GHz (I think that’s the slowest Intel Mac there is).

Mike wrote:
The hardware was designed to stream large datasets to which you are doing a very similar set of instruction, with little to no branch prediction.

I would say then that more than anything, this is a vindication of old-school vector processing :slight_smile:

Ars Technica just wrote something about this:

http://arstechnica.com/news.ars/post/20070326-why-the-playstation-3-owns-the-pc-in-fh.html

Well, as others have already said, you’re really comparing apples and oranges (general-purpose vs. highly specialized processors). But, stream processing does have a big future. Look at this Wikipedia article for more info: http://en.wikipedia.org/wiki/Stream_processing

Especially at the bottom of that page there are a number of interesting links. For example:

Stream processing for the Masses? I don’t think so!
http://www.thinkingparallel.com/2006/09/22/stream-processing-for-the-masses-i-dont-think-so/

Note that the Cell processor (the processor of the PS3) isn’t really a stream processor like a GPU is; it is actually a PowerPC CPU with eight floating-point co-processors.

“The measurement of FLOPS isn’t an exact science. It would be more accurate to compare actual work units returned…”

That’s one heck of an understatement.

The “flops” measurement is utterly meaningless, because it’s based pretty much entirely on Sony marketing. Sony has understood for years that if you make big impressive-sounding statements about the raw power of your console, people who really should know better will almost always take them at face value.

What’s really funny about this is that F@H themselves have to set abitrarily low point values so as to avoid gaming their own system.

Even though GPU and PS3 clients do FAR more computations, they can’t award them scores relative to their computing power-- otherwise people would have no incentive whatsoever to run the slower clients. From the PS3 FAQ:


The PS3 is outrunning all the rest of the FAH client types. Should I stop my existing PC/GPU/… FAH clients?

No, the other clients are valuable to us too and we have chosen a points system to try to reflect the relative merits of each different platform to our scientific research. For example, the SMP client has been producing some very exciting scientific results and continues to be very important in our work. By supporting machines with lots of different functionality, we have a very rich set of hardware on which to run calculations, allowing us to tailor calculations to the hardware to achieve maximum performance.

“UPDATE: as of 3/27/2007, the F@H network has arbitrarily halved the TFLOPS score for the PS3.”

Given that I’m reading this at 08:57 BST on March 26th 2007, and there is currently nowhere on the planet that has reached March 27th yet, I’d say that the folding project has taken a leaf out the ‘Dune’ novel by Frank Herbert and has started folding space to effect time travel.

:wink:

It would not be better to report workunits in Folding. Folding consists of the client and the different “cores”, the latter are downloaded by the first as needed. These cores do the actual calculations and they are rather different from each other. One kind could take an hour an another several days, and a different CPU models are stronger on different cores.

That’s the reason Folding started counting “points” in the first place, which is a sort of manually weighted score for each CPU (since they do different work). So it is only natural it takes a while for them to adapt their score calculations to the new PS3 architecture.

So I suspect the GPUs and CPUs don’t always do the same kind of work, making comparisons somewhat an apples and oranges kind of thing.

CISC is otherwise dead.

Yes. Except for the fact that it’s the most common processor architecture in the world today, CISC is otherwise dead. :slight_smile:

Architecturally, modern x86 chips are RISC cores that emulate x86, and have been for a long time.

How does folding proteins make the PS3 specialized? Lots of users are using these for other things, some people are even playing video games on this designed-for-protein CPU.

The 8086 is a badly designed and outdated standard that only remains the standard because volume of production and software compatibility prevent a better designed CPU competing. CISC is otherwise dead.

While you could say the PS3 is more specialized since it performs well only when running in parallel, I would say an 8086 is even more specialized since it is designed primarily around being able to run existing software with performance being secondary.

Interestingly, 8086 seems to be going this direction as well. Dual core is almost standard, quad core is common, and it seems the number of cores is going to keep increasing. Soon 8086 will have the similar limitation of only performing well in parallel.

If Linux even becomes more mainsteam than windows (don’t laugh if you haven’t tried Vista) or if .NET and Java and other interpreted languages overtake compiled to machine level code (more likely) I think we can finally burry 8086.

lol this post didn’t age well at all. Currently all the critical COVID19 work pieces are CPU only. Though this post did illustrate how shitty of a company Intel is. They pretty much held back CPU progress/tech for years if not an entire decade.

2 Likes

Interesting. Will that continue to hold true, though? :thinking:

1 Like