An Intel engineer has implemented compute-based transcoding support to the DXT5 texture format as part of S3TC texture compression. This new path yields a 56% decrease in upload time for a texture upload micro-benchmark when tested on an Intel Ice Lake system with the Iris Gallium3D driver.
The compute-based transcoding to DXT5 is based on the BC3 encoder for the MIT-licensed GPU compressor within the Betsy project.
The GLSL compute shaders to encode DXT5/BC3 are wired up into the Mesa state tracker so that it can be re-used by other Gallium3D drivers too, beyond the Intel Iris driver that was the initial focus of this support.
More details on this compute-based transcode to DXT5 for Mesa Gallium3D drivers via this merge request that landed on Thursday for Mesa 23.1.