gl_query_cache: Optimize query cache

Use a custom cache instead of relying on a ranged cache.
This commit is contained in:
ReinUsesLisp 2019-11-28 02:15:34 -03:00
parent aae8c180cb
commit 73d2d3342d
6 changed files with 217 additions and 79 deletions

View file

@ -6,6 +6,7 @@
#include <atomic>
#include <functional>
#include <optional>
#include "common/common_types.h"
#include "video_core/engines/fermi_2d.h"
#include "video_core/gpu.h"
@ -50,7 +51,7 @@ public:
virtual void ResetCounter(QueryType type) = 0;
/// Records a GPU query and caches it
virtual void Query(GPUVAddr gpu_addr, QueryType type) = 0;
virtual void Query(GPUVAddr gpu_addr, QueryType type, std::optional<u64> timestamp) = 0;
/// Notify rasterizer that all caches should be flushed to Switch memory
virtual void FlushAll() = 0;