2
0

Added option to control how codeobj is dumped from ATT

Change-Id: Ie76aeea1193c7ba8fe7f51be159516f8a9eab55f


[ROCm/rocprofiler commit: 99b14fc9f8]
Este cometimento está contido em:
Giovanni LB
2023-11-08 17:35:43 -03:00
ascendente 129c7e9d4e
cometimento ec895dfb2a
11 ficheiros modificados com 84 adições e 37 eliminações
+6 -2
Ver ficheiro
@@ -1152,12 +1152,16 @@ void Queue::WriteInterceptor(const void* packets, uint64_t pkt_count, uint64_t u
session_id_snapshot, buffer_id, profile, kernel_properties,
(uint32_t)syscall(__NR_gettid), user_pkt_index);
uint64_t userdata = HSASupport_Singleton::GetInstance()
uint64_t off = dispatch_packet.kernel_object +
GetKernelCode(dispatch_packet.kernel_object)->kernel_code_entry_byte_offset;
codeobj_record::make_capture(rocprofiler_record_id_t{record_id}, capture_mode, off);
uint64_t IsGFX9 = HSASupport_Singleton::GetInstance()
.GetHSAAgentInfo(queue_info.GetGPUAgent().handle)
.GetDeviceInfo()
.getName()
.find("gfx9") != std::string::npos;
codeobj_record::make_capture(rocprofiler_record_id_t{record_id}, capture_mode, userdata);
codeobj_record::make_capture(rocprofiler_record_id_t{record_id}, capture_mode, IsGFX9 | (off<<1));
codeobj_record::start_capture(rocprofiler_record_id_t{record_id});
codeobj_record::stop_capture(rocprofiler_record_id_t{record_id});
@@ -41,7 +41,7 @@ class codeobj_capture_instance {
rocprofiler_intercepted_codeobj_t get() const {
const char* buf_ptr = buffer.size() ? buffer.data() : nullptr;
return {URI.c_str(), addr, buf_ptr, buffer.size(), start_time, end_time};
return {URI.c_str(), addr, mem_size, buf_ptr, buffer.size(), start_time, end_time};
};
const uint64_t addr;
+8
Ver ficheiro
@@ -44,6 +44,13 @@ typedef struct {
uint64_t queue_index;
} att_pending_signal_t;
enum rocprofiler_att_isa_dump_mode {
ISA_MODE_DUMP_ALL=0,
ISA_MODE_DUMP_OBJ,
ISA_MODE_DUMP_KERNEL,
ISA_MODE_DUMP_NONE
};
union att_header_packet_t {
struct {
uint64_t reserved : 14;
@@ -53,6 +60,7 @@ union att_header_packet_t {
uint64_t DCU : 5;
uint64_t DSA : 1;
uint64_t SEID : 6;
uint64_t isadumpmode : 3;
};
uint64_t raw;
};