Skip to content

iris: Enable PIPE_CAP_SURFACE_REINTERPRET_BLOCKS

Kenneth Graunke requested to merge kwg/mesa:iris-pbo-blocks into master

This makes CompressedTexSubImage from a PBO source do proper GPU rendering to upload instead of stalling to map the PBO source on the CPU (then copying it on the CPU).

Thanks Bas Nieuwenhuizen for pointing out that Vulkan includes this functionality, and to Jason Ekstrand for writing the code I adapted. Vulkan only supports a single layer, however, and this code tries to support multiple layers as long as it's miplevel 0.

Improves performance in Sid Meier's Civilization VI:

  • Average frame time (ms): -3.67423% +/- 1.46201% (n=5)
  • 99th percentile frame time (ms): -5.09910% +/- 3.87874% (n=5)

Merge request reports