SWDEV-488948: PC Sampling - Correlation class to provide some thread safety. Adding multithread tests. (#1112)

* SWDEV-488948: PC Sampling - Correlation class to provide some thread safety. Adding multithread tests.

* Update source/lib/rocprofiler-sdk/pc_sampling/parser/correlation.hpp

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

* Update source/lib/rocprofiler-sdk/pc_sampling/parser/correlation.hpp

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

* Adding backlog for codeobj changes

* Formatting

* Update source/lib/rocprofiler-sdk/pc_sampling/code_object.hpp

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

* Update source/lib/rocprofiler-sdk/pc_sampling/code_object.hpp

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

---------

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>
Bu işleme şunda yer alıyor:
Giovanni Lenzi Baraldi
2024-10-07 17:00:59 -03:00
işlemeyi yapan: GitHub
ebeveyn 9b2ece76c3
işleme a6be3f9660
8 değiştirilmiş dosya ile 520 ekleme ve 103 silme
+2 -9
Dosyayı Görüntüle
@@ -45,13 +45,6 @@ namespace pc_sampling
{
namespace code_object
{
CodeobjTableTranslatorSynchronized*
get_code_object_translator()
{
static auto*& _v = common::static_object<CodeobjTableTranslatorSynchronized>::construct();
return _v;
}
namespace
{
auto&
@@ -110,7 +103,7 @@ executable_freeze(hsa_executable_t executable, const char* options)
if(code_object.hsa_executable == executable)
{
const auto& code_object_rocp = code_object.rocp_data;
get_code_object_translator()->insert(
CodeobjTableTranslatorSynchronized::Get()->insert(
address_range_t{code_object_rocp.load_base,
code_object_rocp.load_size,
code_object_rocp.code_object_id});
@@ -130,7 +123,7 @@ executable_destroy(hsa_executable_t executable)
{
flush_pc_sampling_buffers(code_object);
const auto& code_object_rocp = code_object.rocp_data;
get_code_object_translator()->remove(
CodeobjTableTranslatorSynchronized::Get()->remove(
address_range_t{code_object_rocp.load_base,
code_object_rocp.load_size,
code_object_rocp.code_object_id});