[Intel-gfx] [PATCH 0/5 v3] Nonblocking maps

Ben Widawsky ben at bwidawsk.net
Mon Sep 26 03:35:27 CEST 2011


After going back and forth many times, I think Daniel and I have agreed
on the solution for non-blocking maps.

This new interface adds a new call to map buffers non-blocking if
possible. In actuality it may block, but it will track if the buffer
needs flushing or not and does the right thing for the use. This relies
on a new IOCTL to determine the cache type of the object.

With the posted benchmark, there are significant improvements on Gen5
with a very synthetic test meant to test unnecessary blocking on
architectures. The test is posted in the series for reference, but isn't
actually useful in it's current form other than to prove there is a
potential performance improvement. The test shows no performance
regression on Gen6.

v2: 
Some cleanups to libdrm, and mesa patch was messed up.
Lot of reworks on mesa (cleanup + usage of nonblocking)
Removed the gpu-tools test case since it was just reference

v3:
Mesa cleanups were total bonghits
Added a piglit test

Ben



More information about the Intel-gfx mailing list