2013/10/10 Benoit Jacob <jacob.benoi...@gmail.com> > I'll pile on what Benoit G said --- this is the kind of work that would > require very careful performance measurements before we commit to it. > > Also, like Benoit said, we have seen no indication that glUseProgram is > hurting us. General GPU "wisdom" is that switching programs is not per se > expensive as long as one is not relinking them, and besides the general > performance caveat with any state change, forcing to split drawing into > multiple draw-calls, which also applies to updating uniforms, so we're not > escaping it here. > > In addition to that, not all GPUs have real branching. My Sandy Bridge > Intel chipset has real branching, but older Intel integrated GPUs don't, > and I'd be very surprised if all of the mobile GPUs we're currently > supporting did. To put this in perspective, in the world of discrete > desktop NVIDIA GPUs, this was only introduced in the Geforce 6 series. >
In fact, even on a Geforce 6, we only get full real CPU-like ("MIMD") branching in vertex shaders, not in fragment shaders. http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter34.html Benoit _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform