mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 13:10:10 +01:00
ac/rgp, radv: report scratch memory size for shaders
Fills the "Scatch Mem" with "Yes/No" in "Pipelines", this requires instruction timing to be enabled. Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12896>
This commit is contained in:
parent
57c63d7204
commit
d29c381c64
3 changed files with 8 additions and 1 deletions
|
|
@ -52,6 +52,7 @@ struct rgp_shader_data {
|
|||
uint8_t *code;
|
||||
uint32_t vgpr_count;
|
||||
uint32_t sgpr_count;
|
||||
uint32_t scratch_memory_size;
|
||||
uint64_t base_address;
|
||||
uint32_t elf_symbol_offset;
|
||||
uint32_t hw_stage;
|
||||
|
|
|
|||
|
|
@ -149,7 +149,7 @@ ac_rgp_write_msgpack(FILE *output,
|
|||
|
||||
ac_msgpack_add_fixstr(&msgpack, hw_stage_string[
|
||||
record->shader_data[i].hw_stage]);
|
||||
ac_msgpack_add_fixmap_op(&msgpack, 3);
|
||||
ac_msgpack_add_fixmap_op(&msgpack, 4);
|
||||
ac_msgpack_add_fixstr(&msgpack, ".entry_point");
|
||||
ac_msgpack_add_fixstr(&msgpack, hw_stage_symbol_string[
|
||||
record->shader_data[i].hw_stage]);
|
||||
|
|
@ -161,6 +161,11 @@ ac_rgp_write_msgpack(FILE *output,
|
|||
ac_msgpack_add_fixstr(&msgpack, ".vgpr_count");
|
||||
ac_msgpack_add_uint(&msgpack,
|
||||
record->shader_data[i].vgpr_count);
|
||||
|
||||
ac_msgpack_add_fixstr(&msgpack, ".scratch_memory_size");
|
||||
ac_msgpack_add_uint(&msgpack,
|
||||
record->shader_data[i].scratch_memory_size);
|
||||
|
||||
}
|
||||
|
||||
/* 5 */
|
||||
|
|
|
|||
|
|
@ -892,6 +892,7 @@ radv_add_code_object(struct radv_device *device, struct radv_pipeline *pipeline)
|
|||
record->shader_data[i].code = code;
|
||||
record->shader_data[i].vgpr_count = shader->config.num_vgprs;
|
||||
record->shader_data[i].sgpr_count = shader->config.num_sgprs;
|
||||
record->shader_data[i].scratch_memory_size = shader->config.scratch_bytes_per_wave;
|
||||
record->shader_data[i].base_address = va & 0xffffffffffff;
|
||||
record->shader_data[i].elf_symbol_offset = 0;
|
||||
record->shader_data[i].hw_stage = radv_mesa_to_rgp_shader_stage(pipeline, i);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue