Skip to content

Commit 90bcbc6

Browse files
committed
[GMM UMD Performance] Gen10 3D Cache Policy updates
Change to the Gen10 cache policy. This policy has been shown to lower bandwidth as it caches more 3D resources in LLC and L3 than what was previously set. This is desireable as it will lower power for 3D and some media workloads. Change-Id: Id2fb365d85e91afc93e33314de773d23f9b7645f
1 parent b7ce36f commit 90bcbc6

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

Source/GmmLib/CachePolicy/GmmGen10CachePolicy.h

+17-17
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ OTHER DEALINGS IN THE SOFTWARE.
2121
============================================================================*/
2222

2323

24-
#if (IGFX_GEN >= IGFX_GEN10)
24+
#if (IGFX_GEN >= IGFX_GEN10)
2525

2626
#include "GmmCachePolicyConditionals.h"
2727

@@ -76,45 +76,45 @@ DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_WA_BATCH_BUFFER
7676
// 3D Usages
7777
//
7878
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_UMD_BATCH_BUFFER , 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0);
79-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_BINDING_TABLE_POOL , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
79+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_BINDING_TABLE_POOL , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
8080
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_CCS , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
81-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_CONSTANT_BUFFER_POOL , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
82-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_DEPTH_BUFFER , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
81+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_CONSTANT_BUFFER_POOL , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
82+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_DEPTH_BUFFER , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
8383
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_DISPLAYABLE_RENDER_TARGET , FBLLC, ENCRYPTED_PARTIALS_EDRAM, FBLLC, !FBLLC && ENCRYPTED_PARTIALS_EDRAM, 3 , 0, 0, 0, 0, 0);
8484
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_GATHER_POOL , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
85-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_SURFACE_STATE , 0 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
85+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_SURFACE_STATE , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
8686
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_DYNAMIC_STATE , 1 , 1 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
87-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_GENERAL_STATE , 0 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
87+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_GENERAL_STATE , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
8888
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_GENERAL_STATE_UC , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
89-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_STATELESS_DATA_PORT , 0 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
90-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_INDIRECT_OBJECT , 0 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
89+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_STATELESS_DATA_PORT , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
90+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_INDIRECT_OBJECT , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
9191
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HEAP_INSTRUCTION , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
92-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HIZ , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
93-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_INDEX_BUFFER , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
92+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_HIZ , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
93+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_INDEX_BUFFER , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
9494
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_MCS , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
9595
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_PUSH_CONSTANT_BUFFER , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
9696
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_PULL_CONSTANT_BUFFER , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 1);
9797
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_QUERY , 1 , 1 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
9898
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_RENDER_TARGET , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
99-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_SHADER_RESOURCE , 0 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
99+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_SHADER_RESOURCE , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
100100
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_STAGING , 1 , 1 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
101-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_STENCIL_BUFFER , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
101+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_STENCIL_BUFFER , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
102102
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_STREAM_OUTPUT_BUFFER , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
103103
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILE_POOL , 1 , 1 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
104104

105105
// Tiled Resource
106-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_DEPTH_BUFFER , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
107-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_HIZ , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
106+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_DEPTH_BUFFER , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
107+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_HIZ , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
108108
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_MCS , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
109109
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_CCS , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
110110
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_RENDER_TARGET , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
111111
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_RENDER_TARGET_AND_SHADER_RESOURCE , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
112-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_SHADER_RESOURCE , 0 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
112+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_SHADER_RESOURCE , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
113113
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_TILED_UAV , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
114114

115115
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_UAV , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
116-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_VERTEX_BUFFER , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
117-
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_OGL_WSTN_VERTEX_BUFFER , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
116+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_VERTEX_BUFFER , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
117+
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_OGL_WSTN_VERTEX_BUFFER , 1 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
118118
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_RENDER_TARGET_AND_SHADER_RESOURCE , 1 , 0 , 1 , 0 , 3 , 0, 0, 0, 0, 0);
119119
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_WDDM_HISTORY_BUFFER , 0 , 0 , 0 , 0 , 3 , 0, 0, 0, 0, 0);
120120
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_CONTEXT_SAVE_RESTORE , 1 , 1 , 1 , 0 , 3 , 0, 0, 0, 0, 0);

0 commit comments

Comments
 (0)