[SDK][rocprofv3] MI300 Stochastic PC sampling (#92)
* MI300 Stochastic PC sampling SDK API implementation * ROCProfV3: Stochastic PC sampling Support (#94) * ROCProfV3: MI300 Stochastic PC sampling initial draft * ROCProfV3: Initial Stochastic PC sampling Tests (#95) ROCProfV3: Initial Stochastic PC sampling tests * Update rocprofiler_pc_sampling_record_stochastic_v0_t - update doxygen docs for members - replace rocprofiler_correlation_id_t with rocprofiler_async_correlation_id_t * Relax the check in JSON tests * drain PC sampling buffer during finalize_rocprofv3 * Increase timeout for "Test Install Build" step - 10 minutes -> 20 minutes - "Test Installed Packages" has 20 minutes so "Test Install Build" should also --------- Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
此提交包含在:
@@ -23,6 +23,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <rocprofiler-sdk/fwd.h>
|
||||
#include <rocprofiler-sdk/pc_sampling.h>
|
||||
#include <rocprofiler-sdk/cxx/codeobj/code_printing.hpp>
|
||||
#include <rocprofiler-sdk/cxx/serialization.hpp>
|
||||
|
||||
@@ -79,5 +80,32 @@ struct rocprofiler_tool_pc_sampling_host_trap_record_t
|
||||
}
|
||||
};
|
||||
|
||||
// TODO:: Check if we can template this structure
|
||||
struct rocprofiler_tool_pc_sampling_stochastic_record_t
|
||||
{
|
||||
rocprofiler_pc_sampling_record_stochastic_v0_t pc_sample_record;
|
||||
int64_t inst_index;
|
||||
|
||||
rocprofiler_tool_pc_sampling_stochastic_record_t(
|
||||
rocprofiler_pc_sampling_record_stochastic_v0_t record,
|
||||
int64_t index)
|
||||
: pc_sample_record(record)
|
||||
, inst_index(index)
|
||||
{}
|
||||
|
||||
template <typename ArchiveT>
|
||||
void save(ArchiveT& ar) const
|
||||
{
|
||||
ar(cereal::make_nvp("record", pc_sample_record));
|
||||
ar(cereal::make_nvp("inst_index", inst_index));
|
||||
}
|
||||
};
|
||||
|
||||
struct rocprofiler_tool_pc_sampling_stats
|
||||
{
|
||||
uint64_t valid_samples = 0;
|
||||
uint64_t invalid_samples = 0;
|
||||
};
|
||||
|
||||
} // namespace tool
|
||||
} // namespace rocprofiler
|
||||
|
||||
新增問題並參考
封鎖使用者