Files
Milan Radosavljevic a9082a7158 ROCpd schema fetching from rocprofiler-sdk (#1501)
- Integrate rocprofiler-systems with rocprofiler-sdk-rocpd to fetch schema
- If rocprofiler-sdk-rocpd is not availabe, use embedded schema files. With this we provide rocpd format support even if ROCm is not available
- Include detection in CMake if rocprofiler-sdk-rocpd package is available (and valid), and build database class upon that
- Update embedded schema that is used as a fallback.
- Update some validation tests to account for schema changes.
2025-11-07 09:45:29 -05:00

80 строки
2.5 KiB
JSON

{
"required_tables": [
{
"name": "top_kernels",
"required_columns": [
"name",
"total_calls",
"total_duration",
"average",
"percentage"
],
"validation_queries": [
{
"comparison": "equals",
"description": "Check for null function names",
"error_message": "Found API calls with null function names",
"expected_result": 0,
"query": "SELECT COUNT(*) FROM top_kernels WHERE name IS NULL"
}
]
},
{
"name": "kernels",
"required_columns": [
"id",
"category",
"name",
"start",
"end",
"queue",
"stream"
],
"validation_queries": [
{
"comparison": "equals",
"description": "Check for null function names",
"error_message": "Found kernels with null function names",
"expected_result": 0,
"query": "SELECT COUNT(*) as count FROM kernels WHERE name IS NULL"
},
{
"comparison": "equals",
"description": "Check for kernels with no active time",
"error_message": "Kernels with no active execution times found",
"expected_result": 0,
"query": "SELECT COUNT(*) as count FROM kernels WHERE (end - start) = 0"
}
]
},
{
"min_rows": 0,
"name": "threads",
"required_columns": [
"tid",
"start",
"end",
"name"
]
},
{
"name": "regions",
"required_columns": [
"tid",
"start",
"end",
"name"
],
"validation_queries": [
{
"comparison": "equals",
"description": "Verify entries have non-zero start times",
"error_message": "Found entries with zero start times in table",
"expected_result": 0,
"query": "SELECT COUNT(*) as count FROM regions WHERE start = 0"
}
]
}
]
}