Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

MARS_999

Speed of VBO's vs. VAR

This topic is 5377 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Has anyone been able to determine if VBO''s are faster than VARs? I know that VBO''s are faster than normal vertex arrays.

Share this post


Link to post
Share on other sites
Advertisement
vbos are in 99% of all cases faster except you do something wrong.

the reason for this is just that vbos are stored in gfx memory so the gfx card does not need to pull the data every frame from ram, especially if used with static geometry.

Share this post


Link to post
Share on other sites
Ignore LousyPhreak.

NVidia''s VBO support is a bit flakey at the moment, as in, it kills performance streaming from more than one VBO at a time, and you can''t allocate certain sizes of memory ( whats worse is that this varies ).

VBO is however, much easier to use... Personally I''d go for VBO, just because it''s portable ( to ATI cards aswell ), and it''s the future standard.

You have to remember that you''re unique, just like everybody else.

Share this post


Link to post
Share on other sites
Ignore Python Regious, or whatever his name is.

He''s talking absolute b***s**t

Even a badly written VBO will, in most cases, out perform normal
streaming.

I''d like to see the proof of his argument ...

Share this post


Link to post
Share on other sites
His infomation on Nvidia''s VBO implentation is right afaik, with at least one of the recent drivers if you tried to allocate a buffer larger than 6meg iirc it would loose all performance. I belive it was YannL who raised the issue a little while back.

Share this post


Link to post
Share on other sites
quote:
Original post by Shag
Ignore Python Regious, or whatever his name is.

He''s talking absolute b***s**t

Even a badly written VBO will, in most cases, out perform normal
streaming.

I''d like to see the proof of his argument ...

Seems to me you''re the one making unsubstantiated claims, so I''d say the onus is on you to do the proving.

BTW, I suggest you tone down the flaming a bit. It''s bad enough when it''s in the lounge, but keep it out of the tech forums.

Share this post


Link to post
Share on other sites
quote:

Even a badly written VBO will, in most cases, out perform normal streaming.



That''s probably true (depending on what "normal streaming" actually means).

However, the original requester was asking about VBO versus the (NVIDIA specific) VAR extension. Which allows you to allocate VRAM, AGP or system RAM, lock the memory for DMA before-hand, and coupled with the fence extension, allows you very low-cost synchronization (if not taken overboard). Amazing what you can find out if you actually read the initial question, isn''t it? :-)

The answer is that VAR gives you the tools to implement something that''s morally equivalent of VBO. If you have the skills to make a high-quality buffer management implementation on top of VAR, then this is likely to perform on par with VBO on NVIDIA hardware. ATI doesn''t have VAR, and the ATI-specific extension isn''t similar to VAR (more similar to VBO) so I''d suggest going with VBO if it''s an either-or.

Regarding vertices in VRAM being faster than vertices in AGP, that''s only true if you have VRAM bandwidth to spare. If you have VRAM bandwidth to spare, that means that you''re not fill bound. If you''re not fill bound, then something''s wrong with you :-) Meanwhile, if you use all of the VRAM bandwidth for framebuffer/fill, you get an extra gigabyte per second or so of AGP bandwidth, to use in parallel for vertex streaming. That''s a pretty good argument in favor of AGP memory, rather than VRAM, I think.

Share this post


Link to post
Share on other sites
quote:
Original post by _the_phantom_
His infomation on Nvidia''s VBO implentation is right afaik, with at least one of the recent drivers if you tried to allocate a buffer larger than 6meg iirc it would loose all performance.


I have also experienced this lose of performance. Very frustrating.

Share this post


Link to post
Share on other sites
quote:
Original post by AxoDosS
I have also experienced this lose of performance. Very frustrating.


at least so far it was always extreme enough to let you know something is awfully wrong. though i prefered the bug where allocating LESS than a few mb would kill performance. wonder if nvidia will someday care to fix their vbo support or if they are just %%§& because the arb prefered atis version (just like with certain dx9 features resulting at first in lousy performance of nvidias cards)

Share this post


Link to post
Share on other sites
quote:
Original post by Shag
Ignore Python Regious, or whatever his name is.

He''s talking absolute b***s**t

Even a badly written VBO will, in most cases, out perform normal
streaming.

I''d like to see the proof of his argument ...



Ok. A thread about VBO performance and bugs.

And you''re right, VBO will in most cases ( if it''s allocated in AGP or VRAM ) out perform a standard VA implementation. However, thats not what the original poster asked.



You have to remember that you''re unique, just like everybody else.

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!