Page 4 of 11

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 7:41 pm
by Guru
It's funny that you say it's physically impossible for a CPU to handle what a GPU can handle. They are very similar and CPUs were designed to handle much more. Think about what you are saying. You have pretty much stumbled onto your own answer without knowing it. A CPU handles all of the functions of a computer while a GPU handles only the instructions given to it. With that said, isn't it possible for one core to handle all of the processes in a computer? If you have 4 dual-core processors and one core is handling all of the system processes, doesn't that mean that the other 7 can be assigned to the one task that the GPU is handling? Now there's 7 cores working on 7 threads (or more) without doing anything else... Compare than to a GPU...... It shouldn't physically be possible for 1 thread in a GPU to outperform 7 threads on 7 separate cores. The software could definitely be optimized to take advantage of all 7 cores, and it should not be possible for the GPU to keep up. Not only are we talking about different threads, but the processors should be handling more data as well. If the processor has 64 bits and a video card has 512 bits, the video card is running around 400 MHz while the processor is running a 3200 MHz... 3200 MHz / 400 MHz = 8 times faster... 8 times faster * 64 bits = 512 bits... On the 8 core system in my comparison, one is dedicated to system resources and one matches the amount of instructions per second as a 512-bit video card... There are still 6 cores left, so please do explain how it takes 20 processors to get an equivalent score of one GPU...........

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 7:42 pm
by 7im
This is really a waste of time, but since you won't take my word for it...

WU sizes vary from very small to very large, so the count of WUs completed is not representative of any kind of standard performance. You can't use that in any type of rewards system. :roll:

The amount of time donated is also NOT a good judge of performance. Would you make the time donated on a pentium 3 the same as a pentium 4? OR, would you make the amount of time donated on a P4 that ran FAH at 100% CPU usage the same as the exact P4 that does both folding 50% of the time along with word processing, and web surfing? Obviously none of those are equitable for assigning points. :roll:

And total time, or total threads, or total anything goes out the door when you start comparing the differences in the efficiency of the processors doing the work. A Core 2 Duo can process SSE instructions twice as fast as a pentium 4. And because the fah work units are highly optimized to process faster using SSE instructions, that means C2D owners will produce twice as much science as a P4 owner. So if you don't give the C2D owner twice as many points, there is a disincentive for the C2D owner to fold, and that's not good for the project either. :roll:

You guys are 0 for 3 so far? Any other suggestions?



Look. Let me break it down for YOU how the current points system DOES work. Equal pay for equal work. Each work unit is benchmarked, and assigned a points value based on the length of time it takes to complete that work unit on the benchmark computer. And the benchmark points value is assigned based on the amount of science completed. Sounds fair enough, right? Yes is the correct answer. ;)

So, work unit A takes 2 days to fold on the benchmark computer. So that work units is assigned 220 points. Now, if you fold that work unit on a really fast computer, you can complete that work unit in 18 hours and get 220 points. Now if you have an older computer, you can complete that work unit in 5 days, and still get 220 points. Each person gets the SAME total number of points for completing the SAME number of work units, regardless of the time spent and regardless of the hardware type. Equal pay for equal work completed. Nothing is more fair than that.

Yes, I know what you next question is... Sure that works for comparing CPUs to other CPUs, but what about comparing CPUs to GPUs? Well, there isn't much to compare. The work units are very different, and doing very difference science and amounts of science. Stanford evaluates the scientific production and relevance of each client type (CPU, SMP, GPU, etc.) and assigns a benchmark score equitable to that clients performance. Again, the points equal the science, the simplest and most direct comparison. And a fair comparison.


So when you say that the high value of the GPU points devalues the CPU points, you are completely neglecting the value of the science in that comparison. You can't just hold up a large number in one hand, and a small number in the other hand and say, "Look at these numbers, they are unfair." Of course the numbers are very different. One is large, the other is small. But if you hold up BOTH the science produced and the points assigned in each of your hands, then the comparison looks proportional. You get big points with big science, and small points with small science. It's only logical.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 7:43 pm
by Xilikon
A GPU is comprised of stream processors and one stream processor can be considered like one core. A 8800GT have 96 SP and a GTX 280 have 240 SP. That's where the sheer processing power come from and GROMACS happen to like this.

Your understanding of the GPU and CPU workings is flawed.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 7:47 pm
by uncle_fungus
Indeed, and by your argument a CPU alone should be perfectly capable of running modern video games without the need for a GPU. This is obviously fallacious.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 7:52 pm
by Leoslocks
I think the solution is actually simple enough: Socialize the Folding @ Home project. Let us take from the rich and give to the poor.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 7:54 pm
by 7im
Guru wrote:It's funny that you say it's physically impossible for a CPU to handle what a GPU can handle. They are very similar and CPUs were designed to handle much more. Think about what you are saying...
Sorry but this is where you are wrong. GPUs and CPUs are in no way similar in their performance or their design. But you are partially correct, which makes you completely wrong. CPUs were designed to handle much more. CPUs were designed to be a very general purpose chip, to process word documents, to process video streams, to process all the various types of work that computer is good at. Much more variety, but not at great speeds.

And here's where that makes you wrong. The GPU was designed with one very specific goal in mind, process multiple streams of data at the same time so that it can very quickly draw multiple pictures on your screen. No sound. No word documents. Just streams of data.

Well it turns out that a general purpose CPU chip can only do a very specific math calculation at a certain speed because CPUs tend to do one step at a time in serial. Contrary to that, GPUs are very good at doing hundreds of steps at the same time, in parallel.

That's why it takes so many CPUs to equal one GPU.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:01 pm
by JBurton57
Guru wrote:It's funny that you say it's physically impossible for a CPU to handle what a GPU can handle. They are very similar and CPUs were designed to handle much more. Think about what you are saying. You have pretty much stumbled onto your own answer without knowing it. A CPU handles all of the functions of a computer while a GPU handles only the instructions given to it. With that said, isn't it possible for one core to handle all of the processes in a computer? If you have 4 dual-core processors and one core is handling all of the system processes, doesn't that mean that the other 7 can be assigned to the one task that the GPU is handling? Now there's 7 cores working on 7 threads (or more) without doing anything else... Compare than to a GPU...... It shouldn't physically be possible for 1 thread in a GPU to outperform 7 threads on 7 separate cores. The software could definitely be optimized to take advantage of all 7 cores, and it should not be possible for the GPU to keep up. Not only are we talking about different threads, but the processors should be handling more data as well. If the processor has 64 bits and a video card has 512 bits, the video card is running around 400 MHz while the processor is running a 3200 MHz... 3200 MHz / 400 MHz = 8 times faster... 8 times faster * 64 bits = 512 bits... On the 8 core system in my comparison, one is dedicated to system resources and one matches the amount of instructions per second as a 512-bit video card... There are still 6 cores left, so please do explain how it takes 20 processors to get an equivalent score of one GPU...........
I am by no means a computer engineer, but here's how I understand things:

A CPU is a multi-purpose machine designed to undertake a variety of tasks. It has to do lots of random load-store operations on lots of registers, and do lots of cache-swapping as it loads code from main memory (RAM) to the cahce (L1 and L2).

A GPU, by contrast, typically does a very specific task. It loads textures and calculates pixels. These are done sequentially. Do one pixel, move over, and do the exact same thing to it.

By making the tasks repetitive and sequential, the GPU needs less cache. It also needs less complicated memory management. It's much, much easier for the GPU to predict what memory it needs. And loading code from RAM into cache takes a relatively long time, in computer terms. So, a GPU needs to devote less hardware to do the same job because its job is simply easier.

Combine that with the fact that a GPU has to do *a lot* of work. A screen is what? 1440x1280 these days? Call that about 2 million pixels big. That's a lot! But we can do those pixels in parallel. That is to say, all we want are the pixels. They don't interact. Contrast this to a word processor, where I can't process one word until I've typed the one before it. Just doesn't make sense. A GPU can do lots of things at once, where a CPU is designed to follow a single stream of commands.

So, in a sense a GPU is kind of like a 120-core processor. Take a look at the upcoming Larrabee hardware from Intel, and you can see that it has somewhere between 16-48 cores. Throwing this much hardware at the problem is possible because it's so easily scaled. We've got a huge array of data. We just need to manipulate it. That's why they call it "Single-instruction, multiple data" (SIMD) computing.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:04 pm
by Guru
7im wrote: WU sizes vary from very small to very large, so the count of WUs completed is not representative of any kind of standard performance. You can't use that in any type of rewards system. :roll:
You're honestly going to sit there and say that using the number of WUs completed is not fair, but assigning some number to a WU and passing that out is????? Um, you just said that it wasn't fair, but then you turn around and say it is? lol.... :roll: FAIR is listing what you are REALLY DOING. If WU sizes are a factor, then show an average, a minimum, and a maximum, and perhaps even list the number of small, medium, and large WUs... It's really not complicated. I don't get why you can't comprehend it.
7im wrote:The amount of time donated is also NOT a good judge of performance. Would you make the time donated on a pentium 3 the same as a pentium 4? OR, would you make the amount of time donated on a P4 that ran FAH at 100% CPU usage the same as the exact P4 that does both folding 50% of the time along with word processing, and web surfing? Obviously none of those are equitable for assigning points. :roll:
Don't be a fool. There are people interested in how much time is being dedicated to the service, and it's a very real factor in terms of contribution.
7im wrote:And total time, or total threads, or total anything goes out the door when you start comparing the differences in the efficiency of the processors doing the work. A Core 2 Duo can process SSE instructions twice as fast as a pentium 4. And because the fah work units are highly optimized to process faster using SSE instructions, that means C2D owners will produce twice as much science as a P4 owner. So if you don't give the C2D owner twice as many points, there is a disincentive for the C2D owner to fold, and that's not good for the project either. :roll:
No, you're wrong again. All factors, when put together, make up a good comparison. I'm blown away that you think a random scoring system is better than comparing factual data. It this strictly because you've spent a lot of money on video cards?
7im wrote:You guys are 0 for 3 so far? Any other suggestions?
I'm 1 / 1. My idea is awesome, but you're not being logical... Let me assign a scoring system to my clients which results in how much they pay me, and then tell them that they are all being paid differently based on some scoring system I made up. I wonder how logical they will think that is... Sure, the ones getting cheap products will be happy, but the people getting less for their time and effort will probably be pissed off... I highly suggest that you rethink your stance...

7im wrote:Look. Let me break it down for YOU how the current points system DOES work. Equal pay for equal work. Each work unit is benchmarked, and assigned a points value based on the length of time it takes to complete that work unit on the benchmark computer. And the benchmark points value is assigned based on the amount of science completed. Sounds fair enough, right? Yes is the correct answer. ;)

So, work unit A takes 2 days to fold on the benchmark computer. So that work units is assigned 220 points. Now, if you fold that work unit on a really fast computer, you can complete that work unit in 18 hours and get 220 points. Now if you have an older computer, you can complete that work unit in 5 days, and still get 220 points. Each person gets the SAME total number of points for completing the SAME number of work units, regardless of the time spent and regardless of the hardware type. Equal pay for equal work completed. Nothing is more fair than that.
The system is broken. It's like pulling one field of information out of a database and making assumptions on it when in fact there are several fields in the database that will give you a much more accurate view of the scenarios involved with each individual.
7im wrote:Yes, I know what you next question is... Sure that works for comparing CPUs to other CPUs, but what about comparing CPUs to GPUs? Well, there isn't much to compare. The work units are very different, and doing very difference science and amounts of science. Stanford evaluates the scientific production and relevance of each client type (CPU, SMP, GPU, etc.) and assigns a benchmark score equitable to that clients performance. Again, the points equal the science, the simplest and most direct comparison. And a fair comparison.
LOL So they ARE weighting GPU scores!!! Thanks for the confirmation... I'll bet it has a lot to do with financial dontations as well... Hey, I was right about the assumption that they were favoring the GPUs, so that just strengthens my odds of being right about this as well...
7im wrote:So when you say that the high value of the GPU points devalues the CPU points, you are completely neglecting the value of the science in that comparison. You can't just hold up a large number in one hand, and a small number in the other hand and say, "Look at these numbers, they are unfair." Of course the numbers are very different. One is large, the other is small. But if you hold up BOTH the science produced and the points assigned in each of your hands, then the comparison looks proportional. You get big points with big science, and small points with small science. It's only logical.
Very good! Then you agree that you should "hold up" the science involved by displaying the time involved, the type of device (GPU, CPU, etc...), the WUs completed, and all of the other important details!!! I'm glad that you were able to come to this conclusion. =) After all, I am right. Comparing facts will be better than comparing a made up scoring system that can be biased any day of the week...

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:08 pm
by Guru
7im wrote:But you are partially correct, which makes you completely wrong.
lmao So, by the same logic, if I'm partially wrong, does that make me completely correct?

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:09 pm
by Xilikon
Guru, what are you trying to accomplish here ? The system is not perfect but it's close because no suggestion has been taken into account for various reasons.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:22 pm
by 7im
Guru wrote:
7im wrote:But you are partially correct, which makes you completely wrong.
lmao So, by the same logic, if I'm partially wrong, does that make me completely correct?
Opposite logic is not always the same as it's mirror, so no. It does not make your completely correct.

I'll rephrase... But you are partially correct, but your final conclusion is incorrect.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:28 pm
by Foxery
I can't believe you guys are still spending this much time humoring these two. They don't get it, and don't want to.

@Guru: Please stop using a Mad-Libs book to write about logic circuits. It's painful.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:29 pm
by JBurton57
Guru wrote:
You're honestly going to sit there and say that using the number of WUs completed is not fair, but assigning some number to a WU and passing that out is????? Um, you just said that it wasn't fair, but then you turn around and say it is? lol.... :roll: FAIR is listing what you are REALLY DOING. If WU sizes are a factor, then show an average, a minimum, and a maximum, and perhaps even list the number of small, medium, and large WUs... It's really not complicated. I don't get why you can't comprehend it.
The current system isn't that bad. It's not random. What they do is take a benchmark machine that they declare the baseline. I think it's a P4 2.8Ghz without HyperThreading. Then they see how long it takes for the benchmark machine to fold the WU, and for every 24 hours it takes, they give the WU 110 points.

So, a 48-hour WU is worth 220 points.

If a C2D can finish the WU in 1 day, it does 220 points/day because it's faster. The system says, "You just did 220 points worth of work." It doesn't care how long it took you to do it. All it cares about is that the work got done. And yes, this is all compared to a P4 2.8Ghz. But we're all compared to that same benchmark.

Isn't that fair?

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:31 pm
by FordGT90Concept
7im wrote:WU sizes vary from very small to very large, so the count of WUs completed is not representative of any kind of standard performance. You can't use that in any type of rewards system. :roll:
Hey, I don't know the specifics but I do know that if there is a will, there is a way. All I'm saying is that the emphasis needs to move from competition (based off of WUs) to contributions (thread time).

7im wrote:The amount of time donated is also NOT a good judge of performance. Would you make the time donated on a pentium 3 the same as a pentium 4? OR, would you make the amount of time donated on a P4 that ran FAH at 100% CPU usage the same as the exact P4 that does both folding 50% of the time along with word processing, and web surfing? Obviously none of those are equitable for assigning points. :roll:
It is not meant to be. Any type of performance calculations are heavily biased on the various clients and how well they interact with given hardware.

Yes, I would make all time equal because a second is a second is a second. Again, the hardware isn't what counts, it is the effort. If a million P2 computers started folding because their time is valuable, F@H becomes that more effective. Most people won't do that because of associated costs but those that only have P2 processors available to them, their contribution should be considered as valuable as those with a QX9770. In fact, the P2 contibution should be seen as more valuable because the work they do on that computer is penalized by the F@H client taking up most of their clocks. Just because most people don't have the latest and greatest hardware shouldn't mean they can't be competitive in one respect. As I suggested previously, what really needs to happen is two separate scoring systems based off the same figures. One promotes contributions and one promotes competitions.

7im wrote:And total time, or total threads, or total anything goes out the door when you start comparing the differences in the efficiency of the processors doing the work. A Core 2 Duo can process SSE instructions twice as fast as a pentium 4. And because the fah work units are highly optimized to process faster using SSE instructions, that means C2D owners will produce twice as much science as a P4 owner. So if you don't give the C2D owner twice as many points, there is a disincentive for the C2D owner to fold, and that's not good for the project either. :roll:
Another great example of how scores should diminish in responsibility and contributions in the form of time should increase. Your example is a good one too because of the linear pattern computers are going in. That Core 2 Duo would produce twice as much time because it could have two threads running simutaneously as compared to the Pentium 4. GPUs are also going to be heading in that direction too with Larrabee.


7im wrote:Look. Let me break it down for YOU how the current points system DOES work.
Only if you have an 8, 9, or GTX series NVIDIA graphics card.

7im wrote:Equal pay for equal work.
Each one of my quad-core processors use about the same amount of power as a single 8800 GT, yet it can only produce, at maximum, 400 points/day while my 8800 GT, in the same period, produces upwards of 10x as much. The work is about the same in terms of power consumption but the 8800 GT is being paid 10x as much for it. So no, it is far from "equal pay for equal work." The only thing that is equal is the time. For instance, if they both donate 10 hours, they both donate 10 hours. It really is that simple.

7im wrote:So, work unit A takes 2 days to fold on the benchmark computer. So that work units is assigned 220 points. Now, if you fold that work unit on a really fast computer, you can complete that work unit in 18 hours and get 220 points. Now if you have an older computer, you can complete that work unit in 5 days, and still get 220 points. Each person gets the SAME total number of points for completing the SAME number of work units, regardless of the time spent and regardless of the hardware type. Equal pay for equal work completed. Nothing is more fair than that.
IMO, benchmarks aren't necessary. 10 hours of donated work time is 10 hours. If you can't find it work to do in that 10 hours, it's their loss. Regardless, the time was still donated. Look at it as like a volunteer job where instead of getting paid on dollars and cents, you're paid in points per second/minute/hour/day donated. Just like in a job, it really doesn't matter how hard you work so long as you work. The pay is the same unless you get promoted (which I wouldn't rule out as being a possibility for competition sake).

7im wrote:So when you say that the high value of the GPU points devalues the CPU points, you are completely neglecting the value of the science in that comparison. You can't just hold up a large number in one hand, and a small number in the other hand and say, "Look at these numbers, they are unfair." Of course the numbers are very different. One is large, the other is small. But if you hold up BOTH the science produced and the points assigned in each of your hands, then the comparison looks proportional. You get big points with big science, and small points with small science. It's only logical.
Again, that's completely biased towards the client and how it interacts with the hardware. Why should the user's score be belittled just because the client and WU perfers a GPU more so than their CPU. In my opinion, the scientific output is completely outside of the users locus of control and as such, should not be weighed into the score.

Re: Unbalanced Scoring

Posted: Wed Aug 06, 2008 8:43 pm
by John Naylor
FordGT90Concept wrote:
7im wrote:Equal pay for equal work.
Each one of my quad-core processors use about the same amount of power as a single 8800 GT, yet it can only produce, at maximum, 400 points/day while my 8800 GT, in the same period, produces upwards of 10x as much. The work is about the same in terms of power consumption but the 8800 GT is being paid 10x as much for it. So no, it is far from "equal pay for equal work." The only thing that is equal is the time. For instance, if they both donate 10 hours, they both donate 10 hours. It really is that simple.
It really is not. The 8800GT in all probability did 10x as much work in the same amount of time as one of your quad-core processors, and as a result it gets 10x the points. Your whole argument seems to stem from the INCORRECT assumption that a quad-core processor can do as much in one hour as a 8800 can do in one hour, just because they both draw roughly the same amount of power. This is, without putting too fine a point on it, rubbish.