You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enhancement - Fix hipblaslt-gemm result parsing for hipBLASLt v1500+ output format (#791)
**Description**
The hipblaslt-gemm benchmark result parser fails with
MICROBENCHMARK_RESULT_PARSING_FAILURE (return code 33) when running
against hipBLASLt v1500+. The benchmark kernels execute successfully and
produce valid TFLOPS data, but SuperBench cannot parse the results into
structured metrics.
Root cause: The parser hardcodes len(fields) != 23 to validate the
output CSV, but hipBLASLt v1500 outputs 34 columns — it added a_type,
b_type, c_type, d_type, scaleA, scaleB, scaleC, scaleD, amaxD,
bias_type, aux_type, and hipblaslt-GB/s. This causes two bugs:
1. The field count check rejects every result line as invalid.
2. Even if it passed, fields[-2] would return hipblaslt-GB/s instead of
hipblaslt-Gflops.
**Fix**
Replace the hardcoded field-count check and positional index with
header-based column lookup:
- Parse the CSV header line to dynamically find the column index of
hipblaslt-Gflops.
- Validate that the data line has the same number of columns as the
header (instead of a magic number).
- Use the discovered column index to extract the Gflops value.
This approach is:
- Backward compatible — works with the old 23-column format (hipBLASLt
v600).
- Forward compatible — will handle any future column additions as long
as hipblaslt-Gflops remains in the header.
---------
Co-authored-by: Hongtao Zhang <hongtaozhang@microsoft.com>
0 commit comments