diff options
author | Kenneth Graunke <[email protected]> | 2019-03-12 14:51:22 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2019-04-23 00:24:08 -0700 |
commit | 5ad0c88dbe3e5805a10d8f1fef9d0cf1bbecdd46 (patch) | |
tree | 060190534de2bbd7ea57d3a5724adbc0ea5af36b /src/hgl/GLView.cpp | |
parent | 0a082b6560867b359e8858cd1cbb15b0869ae18e (diff) |
iris: Replace buffer backing storage and rebind to update addresses.
This implements PIPE_CAP_INVALIDATE_BUFFER and invalidate_resource(),
as well as the PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE flag. When either
of these happen, we swap out the backing storage of the buffer for a
new idle BO, allowing us to write to it immediately without stalling
or queueing a blit.
On my Skylake GT4e at 1920x1080, this improves performance in games:
-----------------------------------------------
| DiRT Rally | +25% (avg) | +17% (max) |
| Bioshock Infinite | +22% (avg) | +11% (max) |
| Shadow of Mordor | +27% (avg) | +83% (max) |
-----------------------------------------------
Diffstat (limited to 'src/hgl/GLView.cpp')
0 files changed, 0 insertions, 0 deletions