09b8342e22
* Add XGMI and PCIe metrics to the profiling data Add support for AMD XGMI (GPU-to-GPU interconnect) and PCIe metrics: * XGMI link width in bits * XGMI link speed in GT/s * Per-link read bandwidth (KB) * Per-link write bandwidth (KB) - Add new categories for PCIe metrics: * PCIe link width * PCIe link speed in GT/s * Accumulated bandwidth (MB) * Instantaneous bandwidth (MB/s) * Fix VCN/JPEG insert logic * Modify the gpu_metrics struct to accomodate XCP structure * Add ctest automation for gpu interconnect metrics * Refactor to move gpu_metrics struct and serialization to another file * Possible fix for timeout in CI Fix redundant skip check in ctest Add xgmi and pcie option in rocprof-sys-avail. * Change2: Address review comments Change ctest sampling to avoid timeout Change variable name and code structuring * Add option in ctest to run rocprof-sys-run without rewrite Run transferbench with rocprof-sys-run without sampling * Change3: Fix sample insert bug and address review comments xgmi and pci support check renaming variables additional hip_api validation in rocpd * Reduce the load from the trnasferBench sample The CI builds were timing out when flushing a big temporary file to the DB: (2720824.23 KB / 2720.82 MB / 2.72 GB)...
101 lines
5.3 KiB
JSON
101 lines
5.3 KiB
JSON
{
|
|
"required_tables": [
|
|
{
|
|
"min_rows": 1,
|
|
"name_prefix": "rocpd_info_pmc",
|
|
"required_columns": [
|
|
"agent_id",
|
|
"target_arch",
|
|
"name",
|
|
"symbol",
|
|
"description",
|
|
"units",
|
|
"value_type"
|
|
],
|
|
"validation_queries": [
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for Xgmi amd-smi metrics",
|
|
"error_message": "Did not find Xgmi data in amd-smi metrics",
|
|
"expected_result": 1,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} WHERE symbol LIKE 'Xgmi%'"
|
|
},
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for Pcie amd-smi metrics",
|
|
"error_message": "Did not find Pcie data in amd-smi metrics",
|
|
"expected_result": 1,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} WHERE symbol LIKE 'Pcie%'"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"min_rows": 500,
|
|
"name_prefix": "rocpd_pmc_event",
|
|
"required_columns": [
|
|
"event_id",
|
|
"pmc_id",
|
|
"value"
|
|
],
|
|
"validation_queries": [
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for amd-smi monitoring busy times",
|
|
"error_message": "Less than expected number of captured amd-smi xgmi link speed samples!",
|
|
"expected_result": 100,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} event JOIN rocpd_info_pmc info ON event.pmc_id = info.id WHERE info.name = 'device_xgmi_link_speed'"
|
|
},
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for amd-smi monitoring busy times",
|
|
"error_message": "Less than expected number of captured amd-smi xgmi link width samples!",
|
|
"expected_result": 100,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} event JOIN rocpd_info_pmc info ON event.pmc_id = info.id WHERE info.name = 'device_xgmi_link_width'"
|
|
},
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for amd-smi monitoring busy times",
|
|
"error_message": "Less than expected number of captured amd-smi xgmi read data samples!",
|
|
"expected_result": 100,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} event JOIN rocpd_info_pmc info ON event.pmc_id = info.id WHERE info.name LIKE 'device_xgmi_read_data%'"
|
|
},
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for amd-smi monitoring busy times",
|
|
"error_message": "Less than expected number of captured amd-smi xgmi write data samples!",
|
|
"expected_result": 100,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} event JOIN rocpd_info_pmc info ON event.pmc_id = info.id WHERE info.name LIKE 'device_xgmi_write_data%'"
|
|
},
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for amd-smi monitoring busy times",
|
|
"error_message": "Less than expected number of captured amd-smi pcie bandwidth instantaneous samples!",
|
|
"expected_result": 100,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} event JOIN rocpd_info_pmc info ON event.pmc_id = info.id WHERE info.name = 'device_pcie_bandwidth_inst'"
|
|
},
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for amd-smi monitoring busy times",
|
|
"error_message": "Less than expected number of captured amd-smi pcie bandwidth accumulated samples!",
|
|
"expected_result": 100,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} event JOIN rocpd_info_pmc info ON event.pmc_id = info.id WHERE info.name = 'device_pcie_bandwidth_acc'"
|
|
},
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for amd-smi monitoring busy times",
|
|
"error_message": "Less than expected number of captured amd-smi pcie link speed samples!",
|
|
"expected_result": 100,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} event JOIN rocpd_info_pmc info ON event.pmc_id = info.id WHERE info.name = 'device_pcie_link_speed'"
|
|
},
|
|
{
|
|
"comparison": "greater_than",
|
|
"description": "Check for amd-smi monitoring busy times",
|
|
"error_message": "Less than expected number of captured amd-smi pcie link width samples!",
|
|
"expected_result": 100,
|
|
"query": "SELECT COUNT(*) as count FROM {table_name} event JOIN rocpd_info_pmc info ON event.pmc_id = info.id WHERE info.name = 'device_pcie_link_width'"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|