Lines Matching refs:max_gsprims
1949 clamp_gsprims_to_esverts(unsigned *max_gsprims, unsigned max_esverts, unsigned min_verts_per_prim, in clamp_gsprims_to_esverts() argument
1955 *max_gsprims = MIN2(*max_gsprims, 1 + max_reuse); in clamp_gsprims_to_esverts()
2078 unsigned max_gsprims = max_gsprims_base; in gfx10_get_ngg_info() local
2084 max_gsprims = MIN2(max_gsprims, target_lds_size / gsprim_lds_size); in gfx10_get_ngg_info()
2086 max_esverts = MIN2(max_esverts, max_gsprims * max_verts_per_prim); in gfx10_get_ngg_info()
2087 clamp_gsprims_to_esverts(&max_gsprims, max_esverts, min_verts_per_prim, uses_adjacency); in gfx10_get_ngg_info()
2088 assert(max_esverts >= max_verts_per_prim && max_gsprims >= 1); in gfx10_get_ngg_info()
2098 unsigned lds_total = max_esverts * esvert_lds_size + max_gsprims * gsprim_lds_size; in gfx10_get_ngg_info()
2101 max_gsprims = max_gsprims * target_lds_size / lds_total; in gfx10_get_ngg_info()
2103 max_esverts = MIN2(max_esverts, max_gsprims * max_verts_per_prim); in gfx10_get_ngg_info()
2104 clamp_gsprims_to_esverts(&max_gsprims, max_esverts, min_verts_per_prim, uses_adjacency); in gfx10_get_ngg_info()
2105 assert(max_esverts >= max_verts_per_prim && max_gsprims >= 1); in gfx10_get_ngg_info()
2124 orig_max_gsprims = max_gsprims; in gfx10_get_ngg_info()
2130 MIN2(max_esverts, (max_lds_size - max_gsprims * gsprim_lds_size) / esvert_lds_size); in gfx10_get_ngg_info()
2131 max_esverts = MIN2(max_esverts, max_gsprims * max_verts_per_prim); in gfx10_get_ngg_info()
2139 max_gsprims = align(max_gsprims, wavesize); in gfx10_get_ngg_info()
2140 max_gsprims = MIN2(max_gsprims, max_gsprims_base); in gfx10_get_ngg_info()
2148 unsigned usable_esverts = MIN2(max_esverts, max_gsprims * max_verts_per_prim); in gfx10_get_ngg_info()
2149 max_gsprims = MIN2(max_gsprims, in gfx10_get_ngg_info()
2152 clamp_gsprims_to_esverts(&max_gsprims, max_esverts, min_verts_per_prim, uses_adjacency); in gfx10_get_ngg_info()
2153 assert(max_esverts >= max_verts_per_prim && max_gsprims >= 1); in gfx10_get_ngg_info()
2154 } while (orig_max_esverts != max_esverts || orig_max_gsprims != max_gsprims); in gfx10_get_ngg_info()
2171 ? max_gsprims * gs_num_invocations * gs_info->gs.vertices_out in gfx10_get_ngg_info()
2192 ngg->max_gsprims = max_gsprims; in gfx10_get_ngg_info()
2196 ngg->ngg_emit_size = max_gsprims * gsprim_lds_size; in gfx10_get_ngg_info()
2200 ngg->esgs_ring_size = MIN2(max_esverts, max_gsprims * max_verts_per_prim) * esvert_lds_size * 4; in gfx10_get_ngg_info()
2213 max_esverts, max_gsprims * gs_num_invocations, max_out_vertices, prim_amp_factor); in gfx10_get_ngg_info()
2767 …enable_vertex_grouping ? ngg_info->hw_max_esverts : num_vertices_per_prim * ngg_info->max_gsprims); in radv_determine_ngg_settings()
4587 S_028A44_GS_PRIMS_PER_SUBGRP(ngg_state->max_gsprims) | in radv_pipeline_generate_hw_ngg()
4588 S_028A44_GS_INST_PRIMS_IN_SUBGRP(ngg_state->max_gsprims * gs_num_invocations)); in radv_pipeline_generate_hw_ngg()
4599 ge_cntl = S_03096C_PRIM_GRP_SIZE(ngg_state->max_gsprims) | in radv_pipeline_generate_hw_ngg()