[osg-users] Tips for low-end GPUs?
aluaces at udc.es
Wed Nov 4 00:59:59 PST 2009
Cyril Brulebois writes:
> Random thoughts:
> - dimensions/resolutions (maybe some “native” screen/window size are
> better than others in order to limit resizing overhead)?
> - texture blending modes (how transparency is handled, etc.)?
> - level of detail (there is even osg::LOD for that)?
> - use a tree-like scene-graph (rather than a flat one) to ensure osg
> will do its job properly?
> - checking compositing on X's side (forgot to mention: running Linux
> machines)? acceleration type (EXA et al.)?
> I know there's also the “stats” display that might be of some help,
> and it indeed shows that most of the time is spent during “Draw”.
> I should mention I've tested with both OSG 2.4 and 2.8 on both
> desktops and laptops, and it looks like versions don't have much
> impact on performances, only GPUs do. (To give an idea, I'm at
> 100-150+ FPS with Nvidia, limited to either 60 or 75 via vblanc sync,
> and around 10-15 FPS with Intel.)
> Hardware is like Intel Core 2 Duo, 2 GB RAM. The application isn't
> eating more than a few MB so RAM clearly isn't the bottleneck. A
> single CPU out of 2 seems to be used, around 50%, so that probably
> isn't the bottleneck either.
> So, if you have any rules of thumb to share about how to get a better
> framerate on low-end GPUs, I'll be very pleased to read them. :)
I think you are already on the right track. From your description, your
program bottleneck seems to lie on the card fill rate and/or texture
handling. Tips for diminishing that work would be:
- As you mentioned, lowering the resolution of the rendering window as
much as you can.
- Lowering the resolution of the textures you are employing or
inspecting if you can go faster through the use of mipmapping. The
results will vary with the amount of available GPU RAM you have.
- Try to disable as many blending effects you can.
- Use LODs mainly for that purpose, in order to deactivate blending
effects on farther objects where they can't be seen so well.
- Set the cheapest texture filters that you can cope with, NEAREST ones
are the fastest.
- Disable any anti-aliasing or oversampling.
More information about the osg-users