Iago Toral - Bringing GL_ARB_gpu_shader_fp64 to Intel GPUs

Slides, Video

GL_ARB_gpu_shader_fp64 was the last piece missing to expose OpenGL 4.0 on the Intel i965 driver for quite some time. This extension has been developed for a long time involving people from Intel and Igalia and landed in time for the Mesa 12.0 release in June 2016 for Broadwell hardware and later (gen8+), with support for Haswell and IvyBridge (gen7) expected at a later time.

In this presentation I'll introduce the challenges related to implementing 64-bit floating-point support for Intel GPUs. The talk will go in detail about the kind of changes that had to be implemented in the existing i965 driver, the restrictions imposed by the GPU hardware across generations and the solutions implemented to work around them.

Even if the presentation will focus on the specific case of Intel GPUs, I expect that many of the problems presented are common across GPU vendors so the presentation should appeal to a broader audience. For those already familiar with Intel GPUs but who have not been up to date with the bulk of the fp64 work the presentation will serve as a good overview.

Finally, because the presentation will focus mostly on changes required to the Intel backend compiler, the talk will also include some general introduction to the Intel GPU assembly.