[Mesa-dev] [PATCH 3/5] main/version: Don't require ARB_compute_shader for OpenGLES 3.1

Jordan Justen jordan.l.justen at intel.com
Wed Dec 16 14:02:47 PST 2015


On 2015-12-16 13:27:07, Ilia Mirkin wrote:
> On Tue, Dec 15, 2015 at 8:45 PM, Ian Romanick <idr at freedesktop.org> wrote:
> > On 12/15/2015 05:01 PM, Jordan Justen wrote:
> >> On 2015-12-15 16:50:39, Ian Romanick wrote:
> >>> On 12/15/2015 04:08 PM, Jordan Justen wrote:
> >>>> The OpenGL ARB_compute_shader extension specfication requires at least
> >>>> 1024 for GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS, whereas OpenGLES 3.1
> >>>> only required 128.
> >>>
> >>> Does this mean that extensions->ARB_compute_shader is not set?
> >>
> >> Yes. I think we can't set this in some cases due to desktop GL
> >> requirements, but we should still be able to support CS on ES 3.1.
> >>
> >>> I'm a little bit nervous about that. Are we sure that we check for
> >>> compute shader support correctly everywhere (i.e., don't just check
> >>> the extension bit that isn't set)?
> >>
> >> I think we have it pretty well covered. The ES 3.1 CTS seems pretty
> >> happy with what we have.
> >>
> >> That said, patch 2 was yet another fix to use
> >> _mesa_has_compute_shaders, and I wouldn't be surprised if we ended up
> >> finding some more. (I did try to grep to find anything we might have
> >> missed.)
> >
> > I just did that too.  I didn't see anything that looked problematic except:
> >
> > src/mesa/main/get.c:/* HACK: remove when ARB_compute_shader is actually
> > supported */
> 
> Pretty sure I added this based on the premise that there will not be a
> situation where you legitimately have ES 3.1 but not
> ARB_compute_shader.

There is a significant difference in requirements for
GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS in the extension (1024) vs.
OpenGLES 3.1 (128).

-Jordan

> I did this when I was cleaning up the various
> (imho) misguided es31_or_bla primitives in get.c.


More information about the mesa-dev mailing list