Skip to content

Chrome trace format support#949

Open
vstempen wants to merge 6 commits into
mainfrom
vs-chrome-trace-support
Open

Chrome trace format support#949
vstempen wants to merge 6 commits into
mainfrom
vs-chrome-trace-support

Conversation

@vstempen

@vstempen vstempen commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Motivation

Make a working pilot of Perfetto trace formats support. It shows number of efforts on both sides (rorOptiq and potentially profiler hub) to support new format, rocOptic data model ability to ingest another format/schema adapter, controller and UI ability to handle missing data (mostly regarding topology implementation), etc.

Technical Details

In the initial commit the code will fail to build without Perfetto trace processor libraries prebuilt.
Will try to add flexibility to skip the support in following commits.
Here are the libraries build instructions : Building Perfetto Libraries.
After libraries have been built, build the project and try to open Pytorch traces or any other Perfetto traces in .json, .proto or .pftrace formats.

Also, in coming commits will reduce number of files. Those can be copied dynamically during build. Don't have to be submitted

{
query += group;
if(sample_query)
YAML::Node config = YAML::LoadFile(filename);
}

void PackedTable::AggregateRow(ProfileDatabase* db, int row_index, int map_index)
void PackedTable::AggregateRow(QueryManager* db, int row_index, int map_index)


rocprofvis_dm_result_t
QueryManager::BuildTableQuery(
Comment on lines +794 to +797
{
result = kRocProfVisDmResultUnknownError;
ROCPROFVIS_ASSERT_MSG_BREAK(false, ex.what());
}
Comment on lines +844 to +852
{
// The worker thread never started, so the sub-future's promise will
// never be set; unregister and free it now to avoid a wait below
// that would block forever on an unfulfilled promise.
parent->DeleteSubFuture(futures[i]);
futures[i] = nullptr;
result = kRocProfVisDmResultUnknownError;
ROCPROFVIS_ASSERT_MSG_BREAK(false, ex.what());
}


int RocpdDatabase::ProcessTrack(rocprofvis_dm_track_params_t& track_params, rocprofvis_dm_charptr_t* newqueries)
int RocpdDatabase::ProcessTrack(rocprofvis_dm_track_params_t& track_params, std::vector<rocprofvis_dm_string_t> & newqueries)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants