Why isn't fps proportional to display resolution?

lehtv

Elite Member
Dec 8, 2010
11,897
74
91
I've always thought that if you increase resolution by x % your fps will be x % higher with your original resolution. For instance, 2560x1440 has 77% more pixels than 1920x1080, so 1980x1080 would have 77% better fps, bottlenecks notwithstanding. And by extension, I've thought that higher resolution requires proportionally faster graphics card to reach the same fps.

And this is something I didn't really even think to question because I thought it was obvious, but apparently it isn't true. Looking at fps numbers on different resolutions in literally any graphics card or game performance review, it seems a doubling in resolution only results in 1/3 lower fps. Or going from 1080p to 1440p (which has 77% more pixels) results in only 25-30% lower fps, and not 1 - (1/1.77) = 44% lower as I expected.

Can someone explain to me why this works like this? If a GPU has twice as many pixels to render, shouldn't it take twice as long to put out each frame?
 

know of fence

Senior member
May 28, 2009
555
2
71
One minor reason is, resolution and frame rate they are inversely proportional. Which needs to be accounted for. +100% resolution should result in 50% less frames.

I wonder what happens if you switch FPS for increasing frame times. Well they still wouldn't be quite proportional. Still, this conversion has to be done, first.

Another minor thing is that high resolutions/ long frame time remove the CPU/memory limit.

My rule of thumb is 4 times the resolution (1080p to 4K), results in 1/3 of FPS, which is a quadrupling of resolution BTW.
 

Piroko

Senior member
Jan 10, 2013
905
79
91
Can someone explain to me why this works like this? If a GPU has twice as many pixels to render, shouldn't it take twice as long to put out each frame?
There are quite a lot of operations that are not directly connected to your output resolution. Calculating shadow maps is a good example, most engines do this in a fixed precision. The number of draw calls, particles and light sources doesn't increase with resolution either unless you also change the draw distance.
 

lehtv

Elite Member
Dec 8, 2010
11,897
74
91
One minor reason is, resolution and frame rate they are inversely proportional. Which needs to be accounted for. +100% resolution should result in 50% less frames.

That is what I meant, so that doesn't count as an answer to my question.. but thanks for the clarification.

Another minor thing is that high resolutions/ long frame time remove the CPU/memory limit.

Well no, that's another topic. The point is that fps doesn't seem to be inversely proportional to resolution even when no bottlenecking occurs at the lower resolution. Just look at any graphics card review from guru3d, techpowerup etc.
 

Thala

Golden Member
Nov 12, 2014
1,355
653
136
Can someone explain to me why this works like this? If a GPU has twice as many pixels to render, shouldn't it take twice as long to put out each frame?

Three differences spring to mind immediatly:

1) geometry load is resolution independent and as such constant.
2) triangles have longer spans and thus higher spatial locality saving effective bandwidth and latency
3) texture resolution does not increase, so you have higher temporal locality saving effective bandwidth and latency#

That having said, if you would increase texture resolution and geometry as the resolution goes up, you would certainly see a more proportional decline in framerate.
 
Last edited:

know of fence

Senior member
May 28, 2009
555
2
71
GTA5 on GTX 1080 from AT bench
1920x1080 (105.5 FPS) = 9.47867 ms per frame
3840x2160 (36.7 FPS) = 27.2479 ms
4x resolution ( ) ≠ 2.87x frame time

Not exactly proportional. I too like to hear the technical nitty gritty. Something like only building the geometry is proportional to resolution, but various filters, driver overhead and post processing aren't.

Doom with Vulcan from CB R9 Fury
1920x1080 (160.4 FPS) = 6.234 ms per frame
3840x2160 (45.4 FPS) = 22.03ms
4x resolution ( ) ≠ 3.53x frame time
 

lehtv

Elite Member
Dec 8, 2010
11,897
74
91
Hmm, seems kind of obvious now. Thanks. Somehow I just imagined the graphics card has to do twice as much work for twice as many pixels since pixels are what each frame physically consists of. But if that were the case then rendering a 2D desktop at 4K would be four times slower than rendering Crysis at 1080p, so there you have it ...
 

know of fence

Senior member
May 28, 2009
555
2
71
The biggest gains from Vulcan are seen on lower resolutions, which means that the close to metal API improves resolution scaling. How many sites hyping this stuff up, actually figured it and managed to point it out?

The ratio of how much stuff should scale to how much performance actually scales, would be the scaling coefficient. 2.87x / 4x = 0.718 (for GTA V at fixed settings)
Which can be used as an indication of how good a test platform is for graphics benchmarking. For instance using a crappy CPU with low BW memory would result in a lower scaling coefficient.
 

Wall Street

Senior member
Mar 28, 2012
691
44
91
Not exactly proportional. I too like to hear the technical nitty gritty. Something like only building the geometry is proportional to resolution, but various filters, driver overhead and post processing aren't.

Geometry is not dependent on resolution. What this means is that if there are a million triangles in a scene, the transformation and shading of the vertexes needs to be done for those million triangles no matter if you are rendering to 320x240 or 4k resolution. If there are a million triangles, then the GPU needs to draw them and run the vertex shaders based on the number of vertices. Certain techniques like shadow maps also tend to not be resolution dependent. Because the game runs the shadow map at the same resolution independent of the display resolution, this will not scale. In general the "model quality" and "shadow quality" settings impact things that don't scale with resolution.

Pixel-shader driven code does scale based on the resolution. Think of this as the "lighting" setting in most games. Settings that scale with resolution include HBAO, lighting/effects quality, reflection/refraction, and most forms of antialiasing (MSAA, FXAA, etc.).

Texture quality and anisotropic filtering settings tend to be VRAM limited. MSAA or SSAA can also be VRAM limited. VRAM usage can be reduced by either using less memory for textures (e.g. using medium textures instead of high textures, or 4x AF instead of 16x AF) or by using less memory for frame buffers (e.g., lower resolution, 2x MSAA instead of 4x MSAA or disabling triple buffering). In modern games, a vast majority of VRAM is used for textures, which is why some games require 4 GB+ cards to enable their highest texture settings regardless of what other settings you use.

Of course some games run into a CPU bottleneck, in this case the frame rate stops going higher as you lower the resolution which results in almost no scaling. Usually in these cases there isn't much you can do because few have CPU based settings (the game simulation has to be run by the CPU at least once a frame).
 

beginner99

Diamond Member
Jun 2, 2009
5,312
1,749
136
Can someone explain to me why this works like this? If a GPU has twice as many pixels to render, shouldn't it take twice as long to put out each frame?

depends on which GPU but high-end GPUs are easily CPU bottlenecked at 1080p.

Plus as others have said maybe there are some resolution independent aspects in GPU pipeline.
 

Thala

Golden Member
Nov 12, 2014
1,355
653
136
Also rasterization and shading efficiency increases as polygons get bigger in screen. (Due to quad overdraw.

I covered this already with:
2) triangles have longer spans and thus higher spatial locality saving effective bandwidth and latency
 

Pottuvoi

Senior member
Apr 16, 2012
416
2
81
I covered this already with:
2) triangles have longer spans and thus higher spatial locality saving effective bandwidth and latency
Yes.

Just wanted to chime in the quad problem, not sure how many actually have read about it. (Shading efficiency.)