[Mesa-dev] Request for MESA support for OpenGL GL_INTEL_* exts supported by Windows driver (2 of them expose new graphics DX12 features)

oscar bg rtfss1 at gmail.com
Mon Jan 25 21:08:44 PST 2016


Hi,
with GFXBench 4.0 released last week for Linux I made a quick diff of
extensions support in latest Mesa Intel driver (11.2git) vs Windows OpenGL
driver on Skylake and apart of complete GL 4.4 support on Windows which
parity will be reached eventually on Mesa I assume, I find roughly only few
differences between drivers..

One major difference is support for GL_INTEL_* extensions on Windows which
Mesa lacks completely..
I'm asking if interest to some of these be exposed/implemented also on Mesa
(of course asking initially for i965 driver i.e. on Intel GPUs)..

I'm talking about (I put minimum Intel generation GPU support):

*GL_INTEL_conservative_rasterization (Skylake) ->DX12 feature-> there is no
documentation right now but might very well implement if not
GL_NV_conservative_raster extension assuming Intel GPU HW support is rich
enough for that NV extension
*GL_INTEL_fragment_shader_ordering (Haswell) ->Intel called PixelSync
initially ->ROV naming in DX12

they are interesting also in that this two ext. bring new graphics DX12
functionality like ROV and conservative raster. so they might be exposed on
Nvidia Maxwell series on Nouveau in the future..
the second one might be omitted, if there are plans in the future to
implement new OGL 4.5 ARB extension GL_ARB_fragment_shader_interlock as the
two seem almost identical feature wise..

This for me are the most two interesting extensions in that provide DX12
functionality so could be supported by all IHV DX12 GPUs.. in fact AMD
OpenGL Windows driver also exposes GL_INTEL_fragment_shader_ordering and NV
propietary exposes GL_ARB_fragment_shader_interlock..
they seem easy to implement seeing API wise are simple enough:

GL_INTEL_conservative_rasterization all should support should be a boolean
context flag:

 glEnable(GL_CONSERVATIVE_RASTER)
 glDisable(GL_CONSERVATIVE_RASTER)

and

GL_INTEL_fragment_shader_ordering
a pair of GLSL functions

void beginInvocationInterlockARB(void);
void endInvocationInterlockARB(void);


*GL_INTEL_map_texture (Haswell) this was called InstantAccess via DX11
extension in Haswell driver->Anandtech says "With InstantAccess, Intel's
graphics driver can deliver a pointer to a location in GPU memory that the
CPU can then access directly"..
 don't know if current efforts in Beignet for exposing SVM support for
OpenCL 2.0 might help for implementing that extension..

*GL_INTEL_multi_rate_fragment_shader (Skylake) ->?shipping on Windows
driver but no extension spec posted..hope Intel Open Source team can gather
info on that spec and if simple enough also implement as this searching
multi rate shader seems very hot functionality seeing graphics research
papers from one or two years ago working on that..


Just to finish seems GL_KHR_blend_equation_advanced is also exposed on
Intel Windows driver and NV propietary driver just pointing it..

Hope this mail serves to start interest by Mesa dev on working on exposing
OGL extensions exposing DX12 functionality..

Thanks..
Oscar.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20160126/34703359/attachment-0001.html>


More information about the mesa-dev mailing list