driconf: Support selection by Vulkan applicationName.
[mesa.git] / src / amd / vulkan / radv_rgp.c
index 619ab8cfb0803b7b2e609e5e5603f3162cf1658a..7003cf456b29ec3b1252366141d6868ef8390155 100644 (file)
@@ -27,7 +27,7 @@
 
 #include "util/u_process.h"
 
-#include <amdgpu_drm.h>
+#include "drm-uapi/amdgpu_drm.h"
 
 #define SQTT_FILE_MAGIC_NUMBER 0x50303042
 #define SQTT_FILE_VERSION_MAJOR 1
@@ -166,6 +166,8 @@ static_assert(sizeof(struct sqtt_file_chunk_cpu_info) == 112,
 static void
 radv_sqtt_fill_cpu_info(struct sqtt_file_chunk_cpu_info *chunk)
 {
+       uint64_t system_ram_size = 0;
+
        chunk->header.chunk_id.type = SQTT_FILE_CHUNK_TYPE_CPU_INFO;
        chunk->header.chunk_id.index = 0;
        chunk->header.major_version = 0;
@@ -181,7 +183,10 @@ radv_sqtt_fill_cpu_info(struct sqtt_file_chunk_cpu_info *chunk)
        chunk->clock_speed = 0;
        chunk->num_logical_cores = 0;
        chunk->num_physical_cores = 0;
+
        chunk->system_ram_size = 0;
+       if (os_get_total_physical_memory(&system_ram_size))
+               chunk->system_ram_size = system_ram_size / (1024 * 1024);
 }
 
 /**
@@ -353,7 +358,7 @@ radv_fill_sqtt_asic_info(struct radv_device *device,
        chunk->vgprs_per_simd = rad_info->num_physical_wave64_vgprs_per_simd;
        chunk->sgprs_per_simd = rad_info->num_physical_sgprs_per_simd;
        chunk->shader_engines = rad_info->max_se;
-       chunk->compute_unit_per_shader_engine = rad_info->num_good_cu_per_sh;
+       chunk->compute_unit_per_shader_engine = rad_info->min_good_cu_per_sa;
        chunk->simd_per_compute_unit = rad_info->num_simd_per_compute_unit;
        chunk->wavefronts_per_simd = rad_info->max_wave64_per_simd;
 
@@ -541,7 +546,7 @@ radv_sqtt_fill_sqtt_desc(struct radv_device *device,
 
        chunk->sqtt_version = radv_chip_class_to_sqtt_version(device->physical_device->rad_info.chip_class);
        chunk->shader_engine_index = shader_engine_index;
-       chunk->v1.instrumentation_spec_version = 0;
+       chunk->v1.instrumentation_spec_version = 1;
        chunk->v1.instrumentation_api_version = 0;
        chunk->v1.compute_unit_index = compute_unit_index;
 }