Texture overflow

MistaPi

Regular
This is something that usually causes stuttering, but why is that exactly. Is it because of sudden excessive drop in framerate because of the limited AGP bus?
 
If the video memory is not enough for the textures, you need to wait for uploading them. Theoretically, if you can preload the textures before you need them, you can save time and reduce or eliminate the stuttering, however, it is not easy.
 
If you suddenly need a lot of new textures, then yes, it'll kill performance. On the other hand, if you just have few small textures which can't be fit into the video memory, you can reload them every frame and the performance hit could be small.
 
Personally, I think this topic is very interesting.

It brings up a very specific contrast between optimizing for benchmarks, and optimizing for game performance. That is, it may be better for 99.9% of all benchmarks to just allow the textures to overflow for on frame out of 1000. This way, most of the time the average framerate will be high, but there will be one or two frames of massive stuttering.

Instead, it may be possible with the exact same video card to always load a few textures over AGP memory, so that most frames are a little bit slower than previously, but there is no frame that stutters massively. In the end, this second method may end up with a lower average framerate (which is typically the only reported rate), but will be much more playable.

This is why I, personally, feel that there are three numbers that would be important in determining how well a card performs:

1. Average framerate
2. Framerate deviation
3. Number of massive drops in framerate

This way one could encompass all aspects of performance: how fast it usually is, how much the framerate deviates from that speed, and how frequently there are significant performance issues.
 
Chalnoth said:
This is why I, personally, feel that there are three numbers that would be important in determining how well a card performs:

1. Average framerate
2. Framerate deviation
3. Number of massive drops in framerate

Agreed.

However: The fault is not entirely with the card, it CANNOT be. The card cannot "magically" know that it will need x,y,z textures on frame 35246 and preload them ahead of time.
Thats the applications fault, buddy.
 
Sometimes.

But it's the drivers that have the most control over how and when there will be texture swapping. I still remember back with my TNT, a few places in Quake3 would show massive stuttering, then be okay (usually when entering a room I had not entered in a while). I think this was texture swapping.

With most drivers, there have been no such problems with my GeForce DDR, GeForce4, or Radeon 9700.

But, with a few drivers, the GeForce DDR did show just such texture swapping problems. The problems were promptly fixed with updated drivers later (in the meantime I just dropped back a couple of releases).

Oh, and one last thing. There should never be a situation where the application needs to suddenly load tons of new textures in a single frame (except at level load). The video card should not have massive stalls with just a few textures uploaded in a single frame.
 
Back
Top