• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

Reason for GPU limitation

xFlankerx

Limp Gawd
Joined
Oct 30, 2005
Messages
259
Please leave comments about the Conroe article out of this thread.

I'm having a debate with someone else regarding why a faster CPU doesn't show any improvement.

My view, which is supported by almost every benchmark out there, including this latest review, is that the GPU needs to get instructions from the CPU. If the CPU is already providing the GPU with more instructions than it can compute, then there is no point in going with a faster CPU, which would only send in more instructions. And I know that the CPU also calculates AI and Physics, which is why a faster CPU helps in ES4:Oblivion where there are a lot of NPCs and a lot of AI to compute.

His view is that the GPU is independant of the CPU and that the CPU has no control over the GPU. I really don't understand what he's saying, but you can find his views in this thread on another forum. He's "gaara."

I know you guys are really knowledgable and have helped clear things up for me before. Any final explanations on this issue would be greatly appreciated.
 
The CPU runs the game code pure and simple. The CPU handles AI, Physics, motion (which I guess is part of physics), game events, etc. The GPU is just a co-processor, it does not know what it should render until the CPU executes the proper game code first.

Now, as for why there is the limitation: CPUs have advanced to the point that most game code is a cinch. The CPU gives the GPU the information it needs, then waits until the GPU is done drawing what the CPU told it to draw. Until the GPU is finished rendering the scene the CPU instructed it to, the CPU knows not to keep going ahead.

Imagine a military drill instructor calling out commands for a number of marching recruits. The instructor could call out commands at a much faster rate than the recruits could physically march, but that would not speed up the pace at which they marched them, they would still be limited by their own feet.
 
The reason 3D games are GPU bound at higher resolutions is because the CPU does the same amount of work whether at 640x480 or 1600x1200.

However, the GPU has far more work to do at 1600x1200 than 640x480.

There comes a point where a CPU is already providing enough data to the GPU, and a faster CPU wouldn't make any difference as long as the GPU is the bottleneck.
 
so yea, hopefully future titles really push AI/physics hard, so the CPU has to work like hell to keep up.... then maybe things will get better...
 
So now that I've solidified my belief on why the GPU is a bottleneck, I need help shooting down this other guy. First of all, I don't KNOW what he's saying in the last quote that I post, lol. This is what he's saying;

Yes it is dude, it has a dedicated processor, dedicated memory and it's own internal memory bus and cache...if a GPU wasn't independant that wouldn't make any sense as the purpose of a GPU is to create a specialized processor for drawing and rendering images to pull that load off the CPU

You're trying to tell me that a CPU does half the work and then sends an unfinished instruction to the GPU to finish the job. It doesn't work that way, they work simulteanously and each complete every single instruction sent to them. An operation isn't an operation until it passes through a pipeline, gets decoded and analyzed at various stages, and becomes usable and readable to the computer. A half finished instruction is impossible as the computer won't be able to understand what it's supposed to do with it

Point being, regardless of how powerful your CPU is your GPU will always have a constant FLOPS rate, and vice versa. They aren't directly connected to one another and are not dependant on one another to operate. You either have a slow CPU that is "bottlenecking" itself or you have a slow GPU that is "bottlenecking" itself.

I'm positive I went over this before...CPU is responsible for acting as the brain of the game and the GPU is responsible for acting as the eyes, that said, CPU uses it's own unique instruction sets (MMX, SSE, 3DNow!, x86-64 etc) whereas GPU has it's own unique instruction sets written for it (DirectX, OpenGL) so yes it does grab instructions out of thin air. The only time the GPU needs stuff sent to it is when there's a level change and it needs to pull new textures and shades off the hard drive and store them in your VRAM for use, and even then we're talking about I/O bandwidth which can get as high as 6.4Gb/sec needed to fill up at MOST 512MB of VRAM, so you're looking at less than 1/6 of a second which is hardly a bottleneck

He gave a more detailed post on his view;

Ok, I'll reference the very first benchmark here

Apart from one instant, the average framerate didn't vary more than ~2FPS between the different CPU speeds, this alone implies that:

1) All CPUs of the same family operate at the same FSB/HTT speed regardless of internal clock frequency, therefore all I/O bandwidth will be equal among all cores of that family. Average I/O bandwidth of modern processors is over 6GB/sec which is nowhere near the size of an instruction set or compiled data, therefore it takes a fraction of a second to send instructions from point-to-point

2) A GPU and a CPU are dedicated independant components working at seperate speeds simulteanously. Therefore the speed of either the CPU or GPU will have absolutely no bearing on the speed of the other component as they are never directly communicating with one another, nor are they dependant on one another to operate. A GPU will always have a pixel fillrate of x pixels per second and a CPU will always have a set number of FLOPS regardless of the capabilities of either

3) Rendering is entirely dependant on the pixel fillrate of the GPU, the CPU has absolutely no workload in regards to drawing the image you see on your screen. Therefore as illustrated in the benchmarks, a bottleneck is not present (let me remind you that a bottleneck is a slowest communication in a set of operations). The reason the framerates are the same is because the GPU has reached the limit in regards to how quickly it can render the image, and seeing how the CPU has no contribution to the process of rendering the image, a faster CPU will not attribute a faster rendering process. Likewise, adding a faster GPU will not result in an increased number of calculations of physics laws in a game as a GPU has no contribution to the process of executing physics information.

Let me repeat this last part, neither part are bottlenecking each other. Once you reach a steady and unpassable framerate it simply means that one component is limiting ITSELF, it has absolutely nothing to do with the workload of the other component

Now, by your definition, and according to "all of your supposed benchmarks", the framerate should greatly vary among different clocked CPUs. I have illustrated that this is not the case, and now I would like to ask you why exactly you think I am wrong, and why exactly you think you are right, apart from simply telling me I am wrong and not justifying anything you have said

I don't even know why I'm wasting so much time trying to clarify this, I'm freaking sick of people getting misconceptions about what a bottleneck is and what is simply means to have a slow piece of hardware...the only bottleneck that exists in PCs is the FSB/Mem Bus ratio and any overclocker who uses memory dividers should know exactly what I'm talking about and what EXACTLY a bottleneck is
 
Back
Top