diff options
author | Marek Olšák <[email protected]> | 2017-11-02 00:00:53 +0100 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2017-11-06 16:23:20 +0100 |
commit | 4b0dc098b2561c07c59f7dab2813640a25789bf1 (patch) | |
tree | dac245ade98bd4e4dc5ba804d81771c6ef91339d /src/gallium/auxiliary/util/u_threaded_context.h | |
parent | a5d3999c31e2460f690b561b41170bb7bc24fc65 (diff) |
gallium/u_threaded: don't map big VRAM buffers for the first upload directly
This improves Paraview "many spheres" performance 4x along with the radeonsi
commit.
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary/util/u_threaded_context.h')
-rw-r--r-- | src/gallium/auxiliary/util/u_threaded_context.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/util/u_threaded_context.h b/src/gallium/auxiliary/util/u_threaded_context.h index 8977b03cd20..ac7bc3dec73 100644 --- a/src/gallium/auxiliary/util/u_threaded_context.h +++ b/src/gallium/auxiliary/util/u_threaded_context.h @@ -241,6 +241,12 @@ struct threaded_resource { * pointers. */ bool is_shared; bool is_user_ptr; + + /* If positive, prefer DISCARD_RANGE with a staging buffer over any other + * method of CPU access when map flags allow it. Useful for buffers that + * are too large for the visible VRAM window. + */ + int max_forced_staging_uploads; }; struct threaded_transfer { |