Intel's Mesa Driver Prepares To Kill Off The Blitter
Jason Ekstrand has spent some time away from the Intel ANV Vulkan driver to kill the hardware blitter usage within the i965 Mesa OpenGL driver.
With a set of patches posted on Friday, the Intel Mesa driver eliminates its hardware blitter usage for Intel Sandy Bridge hardware and newer. Ekstrand explained that the graphics hardware blitter has been degraded on recent generations of Intel graphics, "On Sandy Bridge, the blitter was moved to another ring and so using it incurs noticable synchronization overhead and, at the same time, that synchronization is an endless source of GPU hangs on SNB. Some time around the Ivy Bridge time frame, we suspect that the blitter ended up with somewhat slower paths to memory than the 3D engine so it's slower in general. To make matters worse, the blitter does not understand any sort of compression at all and so using it frequently means having to do some sort of resolve operation."
In place of the hardware blitter for moving graphics data from the host CPU, the Mesa driver relies upon the BLORP'ing code. Since last year Intel's BLORP code seems to be in good shape especially for the older hardware.
More details on the elimination of the hardware blitter within the Intel Mesa driver can be found from this patch series. There is also this old documentation on its blitter engine.