From 21baabc6f066b9470b7c7a6c49576c4e33c7ad22 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Mon, 26 Jun 2017 17:57:39 -0700 Subject: layers: Don't copy all the image subresources every submit The set of subresources touched by this submission is likely to be very small compared to the complete set we're tracking. It doesn't make any sense to copy this entire hashtable in each submit call. Instead, maintain an overlay table with the submission's modifications in it. Saves approx 12s in an internal workload. --- layers/buffer_validation.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'layers/buffer_validation.h') diff --git a/layers/buffer_validation.h b/layers/buffer_validation.h index 48eacaea..a9b2b385 100644 --- a/layers/buffer_validation.h +++ b/layers/buffer_validation.h @@ -153,7 +153,8 @@ void PreCallRecordCmdBlitImage(layer_data *device_data, GLOBAL_CB_NODE *cb_node, IMAGE_STATE *dst_image_state); bool ValidateCmdBufImageLayouts(layer_data *device_data, GLOBAL_CB_NODE *pCB, - std::unordered_map &imageLayoutMap); + std::unordered_map const &globalImageLayoutMap, + std::unordered_map &overlayLayoutMap); void UpdateCmdBufImageLayouts(layer_data *device_data, GLOBAL_CB_NODE *pCB); -- cgit v1.2.3