Intel Works On Enabling Haswell's Resource Streamer
Intel Open-Source Technology Center developers are currently working on another feature of Intel's latest-generation Haswell architecture not currently exposed by their open-source Linux graphics driver.
The latest feature that Intel is looking to enable for their Linux graphics driver that supports Haswell graphics is the resource streamer. For a description of the Haswell Resource Streamer, Intel's Abdiel Janulgue notes, "We can think of the resource streamer as a command streamer accelerator: It accelerates certain commands that would normally take time to build-up and submit to the GPU; hence reducing some of the overhead associated with such commands. In Haswell, generating binding tables and constant buffers can be offloaded from being CPU-generated commands to the resource streamer."
Using this resource streamer can reduce time off CPU cycles for each GPU command submission. Though in its current form the actual OpenGL performance gains are nominal. Fortunately, Abdiel does have some performance optimizations in mind that could make this resource streamer more beneficial to Intel's Mesa driver.
Aside from needing a couple hundred lines of code within Intel's Mesa driver to implement this support, there's also code needed within the Intel DRM driver in the Linux kernel and the DRM library (libdrm). We won't see the kernel-side bits land until at least Linux 3.12 so the Mesa side portion won't be useful either until after the Mesa 9.2 release.
More information on the Intel Haswell Resource Streamer can be found via this patch series.
The latest feature that Intel is looking to enable for their Linux graphics driver that supports Haswell graphics is the resource streamer. For a description of the Haswell Resource Streamer, Intel's Abdiel Janulgue notes, "We can think of the resource streamer as a command streamer accelerator: It accelerates certain commands that would normally take time to build-up and submit to the GPU; hence reducing some of the overhead associated with such commands. In Haswell, generating binding tables and constant buffers can be offloaded from being CPU-generated commands to the resource streamer."
Using this resource streamer can reduce time off CPU cycles for each GPU command submission. Though in its current form the actual OpenGL performance gains are nominal. Fortunately, Abdiel does have some performance optimizations in mind that could make this resource streamer more beneficial to Intel's Mesa driver.
Aside from needing a couple hundred lines of code within Intel's Mesa driver to implement this support, there's also code needed within the Intel DRM driver in the Linux kernel and the DRM library (libdrm). We won't see the kernel-side bits land until at least Linux 3.12 so the Mesa side portion won't be useful either until after the Mesa 9.2 release.
More information on the Intel Haswell Resource Streamer can be found via this patch series.
Add A Comment