Accumulation metrics support and update counter collection API to aqlprofile_v2 (#915)
* Updating to v3 API * General fixes * Extending dimension bits to 54 * Disabling agent profiling tests * Fixed unit test * Adding accumulate metric support for parsing counters (#609) * Adding accumulate metric support for parsing counters * Adding metric flag * Updating tests * source formatting (clang-format v11) (#610) Co-authored-by: Manjunath-Jakaraddi <21177428+Manjunath-Jakaraddi@users.noreply.github.com> * source formatting (clang-format v11) (#614) Co-authored-by: jrmadsen <6001865+jrmadsen@users.noreply.github.com> * Adding evaluate ast test * source formatting (clang-format v11) (#633) Co-authored-by: Manjunath-Jakaraddi <21177428+Manjunath-Jakaraddi@users.noreply.github.com> * Update scanner generated file * Adding flags to events for aqlprofile * Fix Mi200 failing test --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Manjunath-Jakaraddi <21177428+Manjunath-Jakaraddi@users.noreply.github.com> Co-authored-by: jrmadsen <6001865+jrmadsen@users.noreply.github.com> * Revert "Extending dimension bits to 54" This reverts commit 3cd6628452484044a93e129f27974f996a0e4c08. * Removing CU dimension * Fixing merge conflicts * Revert "Disabling agent profiling tests" This reverts commit 7e01518ed8c51fbb0c3b2575e1e0b8f9ddfa8237. * Fixing merge conflicts * Fix parser tests * Adding accumulate metric documentation * Update counter_collection_services.md * Update index.md * fix nested expression use * Update source/lib/rocprofiler-sdk/counters/evaluate_ast.cpp Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Doc update --------- Co-authored-by: Benjamin Welton <ben@amd.com> Co-authored-by: Manjunath P Jakaraddi <manjunath180397@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Manjunath-Jakaraddi <21177428+Manjunath-Jakaraddi@users.noreply.github.com> Co-authored-by: jrmadsen <6001865+jrmadsen@users.noreply.github.com> Co-authored-by: Manjunath-Jakaraddi <manjunath.jakaraddi@amd.com>
Este cometimento está contido em:
cometido por
GitHub
ascendente
29d8b14374
cometimento
a78753d392
@@ -116,28 +116,14 @@ get_client_ctx()
|
||||
return ctx;
|
||||
}
|
||||
|
||||
struct buf_check
|
||||
{
|
||||
size_t expected_size{0};
|
||||
bool is_special{false};
|
||||
double special_val{0.0};
|
||||
};
|
||||
|
||||
void
|
||||
buffered_callback(rocprofiler_context_id_t,
|
||||
rocprofiler_buffer_id_t,
|
||||
rocprofiler_record_header_t** headers,
|
||||
size_t num_headers,
|
||||
void* user_data,
|
||||
void* /* user_data */,
|
||||
uint64_t)
|
||||
{
|
||||
buf_check& expected = *static_cast<buf_check*>(user_data);
|
||||
if(expected.is_special)
|
||||
{
|
||||
// Special values are single value constants (from agent_t)
|
||||
expected.expected_size = 1;
|
||||
}
|
||||
|
||||
std::set<double> seen_data;
|
||||
std::set<uint64_t> seen_dims;
|
||||
for(size_t i = 0; i < num_headers; ++i)
|
||||
@@ -456,33 +442,17 @@ TEST(core, check_callbacks)
|
||||
ASSERT_TRUE(ret_pkt) << fmt::format("Expected a packet to be generated for - {}",
|
||||
metric.name());
|
||||
|
||||
/**
|
||||
* Fake some data for the counter
|
||||
*/
|
||||
size_t* fake_data = static_cast<size_t*>(ret_pkt->profile.output_buffer.ptr);
|
||||
for(size_t i = 0; i < (ret_pkt->profile.output_buffer.size / sizeof(size_t)); i++)
|
||||
{
|
||||
fake_data[i] = i + 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create the buffer and run test
|
||||
*/
|
||||
rocprofiler_buffer_id_t opt_buff_id = {.handle = 0};
|
||||
buf_check check = {
|
||||
.expected_size = ret_pkt->profile.output_buffer.size / sizeof(size_t),
|
||||
.is_special = !metric.special().empty(),
|
||||
.special_val = (metric.special().empty() ? 0.0
|
||||
: double(counters::get_agent_property(
|
||||
std::string_view(metric.name()),
|
||||
*agent.get_rocp_agent())))};
|
||||
|
||||
ROCPROFILER_CALL(rocprofiler_create_buffer(get_client_ctx(),
|
||||
500 * sizeof(size_t),
|
||||
500 * sizeof(size_t),
|
||||
ROCPROFILER_BUFFER_POLICY_LOSSLESS,
|
||||
buffered_callback,
|
||||
&check,
|
||||
nullptr,
|
||||
&opt_buff_id),
|
||||
"Could not create buffer");
|
||||
cb_info->buffer = opt_buff_id;
|
||||
|
||||
Criar uma nova questão referindo esta
Bloquear um utilizador