Hi Tyson,
ANGLE renders everything into an offscreen texture, which at a glSwapBuffers is rendered upside down into the swap chain's back buffer. This is to account the difference between D3D and GL coordinate systems.
So it's kind of like triple buffering already. I'm not sure if much can be gained from having actual triple buffering. That said, I'm currently looking into performance issues that affect our D3D11 back-end which appears to be related to synchronization. So I'll check if triple buffering has any effect on it.
Cheers,
Nicolas
I was wondering why Angle does not use triple buffering.It seems like you are leaving a lot of performance on the table by not supporting it.
--
You received this message because you are subscribed to the Google Groups "angleproject" group.
To unsubscribe from this group and stop receiving emails from it, send an email to angleproject...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Hi Tyson,
We've actually just fixed an issue where 'duplicate' vsync was making things 20% slower. It should be patched in Chrome Canary today. Could you give it a try?
Thanks,
Nicolas
Hi Nick,Thanks for the reply. That sounds like it should be as good as triple buffering, apart from the extra copy. I was trying to figure out why ANGLE was significantly (~15-20 percent) slower than OpenGL on my laptop, despite the fact that CPU utilization is MUCH lower with ANGLE. The GPU is a pre-HD intel, and the GL drivers are that awful.Maybe the copy has something to do with the speed difference? I'm running at 720p, so that is a non-trivial amount of bandwidth for the laptop's not so fast system memory. Would sticking an extra instruction at the end of the vertex shader be a better approach?
On Sunday, May 18, 2014 2:08:32 AM UTC-5, Tyson Jacobs wrote:I was wondering why Angle does not use triple buffering.It seems like you are leaving a lot of performance on the table by not supporting it.
--
Sounds promising! This is a desktop application however. I would test it, but I'm not seeing that changeset?