Edit

kc3-lang/angle/extensions/EGL_ANGLE_power_preference.txt

Branch :

  • Show log

    Commit

  • Author : Kenneth Russell
    Date : 2019-04-11 21:55:20
    Hash : 51386f4a
    Message : Reland "Define and expose EGL_ANGLE_power_preference extension." This is a reland of ac58e63295f093b7518535bdd060ff832025b0c5 The original CL was reverted in a rush because I thought there was an uninitialized variable bug, but upon later re-review this turned out to not be the case. Original change's description: > Define and expose EGL_ANGLE_power_preference extension. > > Allows application to select the integrated or discrete GPU on > dual-GPU macOS systems. > > Tested by modifying the example program at: > https://github.com/grorg/ANGLEIOSurfaceTest > > and verifying that both integrated and discrete GPUs can be selected. > (The changes to that program will be upstreamed once some build issues > are resolved.) > > Bug: 2813 > Change-Id: Ibeb17778512896456d220e9bc4cf8f222aa57057 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1570081 > Commit-Queue: Kenneth Russell <kbr@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> Bug: 2813 Tbr: geofflang@chromium.org Tbr: cwallez@chromium.org Change-Id: Iea000dd718f4f4b4f57237adb1dc44381b10106b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1575419 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>

  • extensions/EGL_ANGLE_power_preference.txt
  • Name
    
        ANGLE_power_preference
    
    Name Strings
    
        EGL_ANGLE_power_preference
    
    Contributors
    
        Kenneth Russell
    
    Contacts
    
        Kenneth Russell, Google Inc. (kbr 'at' google.com)
    
    Status
    
        Draft
    
    Version
    
        Version 1, April 16, 2019
    
    Number
    
        EGL Extension #??
    
    Dependencies
    
        This extension is written against the wording of the EGL 1.4
        Specification.
    
    Overview
    
        This extension allows selection of the high- or low-power GPU on
        dual-GPU systems, specifically on macOS.
    
    New Types
    
        None
    
    New Procedures and Functions
    
        None
    
    New Tokens
    
        Accepted as an attribute name in the <*attrib_list> argument to
        eglCreateContext:
    
            EGL_POWER_PREFERENCE_ANGLE  0x3482
    
        Accepted as an attribute value in the <*attrib_list> argument to
        eglCreateContext:
    
            EGL_LOW_POWER_ANGLE         0x0001
            EGL_HIGH_POWER_ANGLE        0x0002
    
    Additions to the EGL 1.4 Specification
    
        Add the following to section 3.7.1 "Creating Rendering Contexts":
    
        EGL_POWER_PREFERENCE_ANGLE indicates whether the context should be
        created on the integrated (low-power) or discrete (high-power) GPU
        on dual-GPU systems. EGL_POWER_PREFERENCE_ANGLE is only a legal
        context creation attribute when the EGL_ANGLE_power_preference
        extension is advertised. The valid values for this attribute are
        EGL_LOW_POWER_ANGLE and EGL_HIGH_POWER_ANGLE. If this extension is
        advertised and this context creation attribute is not specified,
        the default value is EGL_LOW_POWER_ANGLE.
    
        The containing application must set the
        NSSupportsAutomaticGraphicsSwitching attribute to true in its
        Info.plist in order for this extension to operate as advertised.
    
    Issues
    
        None yet.
    
    Revision History
    
        Rev.    Date         Author     Changes
        ----  -------------  ---------  ----------------------------------------
          1   Apr 16, 2019   kbr        Initial version