Intent to Implement and Ship failIfMajorPerformanceCaveat WebGL context creation attribute

174 views
Skip to first unread message

Brandon Jones

unread,
Nov 19, 2013, 5:27:56 PM11/19/13
to blink-dev
Contact Email

Spec

Summary
failIfMajorPerformanceCaveat is a new WebGL context creation attribute that requests that context creation fail if the implementation determines that the performance of the created WebGL context would be dramatically lower than that of a native application making equivalent OpenGL calls.

Motivation
Complex WebGL applications, such as the new Google Maps, cannot perform at acceptable levels if Chrome falls back to the SwiftShader software renderer. This attribute will help these types of applications intelligently fallback to a more limited rendering mode or at least fail gracefully.

Compatibility Risk
None. The default behavior if the attribute is not provided is identical to current browser behavior.
Mozilla has indicated that they do not oppose it's implementation. 

Ongoing technical constraints
None

Will this feature be supported on all five Blink platforms (Windows, Mac, Linux, Chrome OS and Android)?
Yes. Each platform may have it's own logic to determine what qualifies as a "major performance caveat".

OWP launch tracking bug?

Link to entry on the feature dashboard
None, small feature.

Requesting approval to ship?
Yes

Adam Barth

unread,
Nov 20, 2013, 12:47:39 AM11/20/13
to Brandon Jones, blink-dev
This seems like a trivial change as part of our ongoing work to track the WebGL spec.  Thanks for sending this email, but I don't think we need to go through the formal process for this change.  Is there someone controversial here that we should be worried about?

Eric Seidel

unread,
Nov 20, 2013, 1:35:31 AM11/20/13
to Adam Barth, Brandon Jones, blink-dev
The spec itself appears to only be in Editors Draft?

That said, since we're (long) shipping the rest of WebGL, I agree with
Adam that this is trivial and can skip the process, etc.

Brandon Jones

unread,
Nov 20, 2013, 2:17:49 AM11/20/13
to Eric Seidel, Adam Barth, blink-dev
I wrote the Intent to Implement because I was asked to, but for the future it's good to know that these sort of changes are covered under the existing feature set. Thank you for the feedback!

Eric Seidel

unread,
Nov 20, 2013, 3:09:34 AM11/20/13
to Brandon Jones, Adam Barth, blink-dev
This is the intent of the "trivial changes" clause in the new-features section:

I guess we're still figuring out the exact balance.

It's always nice to send a PSA of course, even if we don't go through the formal "Intent to Ship + 3 LGTMs" process.

Thanks again for the notice!
Reply all
Reply to author
Forward
0 new messages