Skip to content

Revert "feat: added p90 step time logic for GEMM and HBM tail latencies" - #136

Merged
linamy85 merged 2 commits into
AI-Hypercomputer:chsfrom
sarthakag:revert-p90-step-time
Sep 14, 2026
Merged

linamy85 merged 2 commits into
AI-Hypercomputer:chsfrom
sarthakag:revert-p90-step-time

Conversation

@sarthakag

Copy link
Copy Markdown

No description provided.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request simplifies benchmark metric reporting by removing p10 and p90 statistics across several files, keeping only the median (p50) values. The reviewer feedback identifies a compatibility issue with Python versions older than 3.12 due to the use of double quotes inside double-quoted f-string expressions, and points out a missing space in the throughput formatting in benchmark_utils.py.

Comment on lines +92 to +93
f"time taken (median): {time_statistics.statistics["p50"]:.4f} ms, "
f"bandwidth (median): {statistics.statistics["p50"]:.3f} GB/s"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

Using double quotes inside a double-quoted f-string expression (e.g., statistics["p50"]) is only supported in Python 3.12+. For backward compatibility with Python < 3.12 (which is common in many ML environments), use single quotes for dictionary keys inside double-quoted f-strings.

Suggested change
f"time taken (median): {time_statistics.statistics["p50"]:.4f} ms, "
f"bandwidth (median): {statistics.statistics["p50"]:.3f} GB/s"
f"time taken (median): {time_statistics.statistics['p50']:.4f} ms, "
f"bandwidth (median): {statistics.statistics['p50']:.3f} GB/s"

Comment on lines +1291 to +1299
f"Total floating-point ops: {total_flops}, Step Time (median): "
f"{average_time_ms_statistics.statistics["p50"]:.2f}, "
f"Step Time (p90): "
f"{average_time_ms_statistics.statistics["p90"]:.2f}, "
f"Throughput (p10): "
f"{tflops_per_sec_statistics.statistics["p10"]:.2f}"
f" TFLOP / second / device, "
f"Throughput (median): "
f"{tflops_per_sec_statistics.statistics["p50"]:.2f}"
f" TFLOP / second / device, "
f"Throughput (p90): "
f"{tflops_per_sec_statistics.statistics["p90"]:.2f}"
f" TFLOP / second / device, "
f"TotalThroughput (p10): "
f"{tflops_per_sec_all_devices_statistics.statistics["p10"]:.2f} "
f"TFLOP / second, "
f"TotalThroughput (median): "
f"{tflops_per_sec_all_devices_statistics.statistics["p50"]:.2f} "
f"TFLOP / second, "
f"TotalThroughput (p90): "
f"{tflops_per_sec_all_devices_statistics.statistics["p90"]:.2f} "
f"TFLOP / second, "
f"MFU (p10): {mfu_statistics.statistics["p10"]:.2%}, "
f"MFU (median): {mfu_statistics.statistics["p50"]:.2%}, "
f"MFU (p90): {mfu_statistics.statistics["p90"]:.2%}"
f"MFU: {mfu_statistics.statistics["p50"]:.2%}"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

Using double quotes inside a double-quoted f-string expression (e.g., statistics["p50"]) is only supported in Python 3.12+. For backward compatibility with Python < 3.12, use single quotes for dictionary keys inside double-quoted f-strings.

Suggested change
f"Total floating-point ops: {total_flops}, Step Time (median): "
f"{average_time_ms_statistics.statistics["p50"]:.2f}, "
f"Step Time (p90): "
f"{average_time_ms_statistics.statistics["p90"]:.2f}, "
f"Throughput (p10): "
f"{tflops_per_sec_statistics.statistics["p10"]:.2f}"
f" TFLOP / second / device, "
f"Throughput (median): "
f"{tflops_per_sec_statistics.statistics["p50"]:.2f}"
f" TFLOP / second / device, "
f"Throughput (p90): "
f"{tflops_per_sec_statistics.statistics["p90"]:.2f}"
f" TFLOP / second / device, "
f"TotalThroughput (p10): "
f"{tflops_per_sec_all_devices_statistics.statistics["p10"]:.2f} "
f"TFLOP / second, "
f"TotalThroughput (median): "
f"{tflops_per_sec_all_devices_statistics.statistics["p50"]:.2f} "
f"TFLOP / second, "
f"TotalThroughput (p90): "
f"{tflops_per_sec_all_devices_statistics.statistics["p90"]:.2f} "
f"TFLOP / second, "
f"MFU (p10): {mfu_statistics.statistics["p10"]:.2%}, "
f"MFU (median): {mfu_statistics.statistics["p50"]:.2%}, "
f"MFU (p90): {mfu_statistics.statistics["p90"]:.2%}"
f"MFU: {mfu_statistics.statistics["p50"]:.2%}"
f"Total floating-point ops: {total_flops}, Step Time (median): "
f"{average_time_ms_statistics.statistics['p50']:.2f}, "
f"Throughput (median): "
f"{tflops_per_sec_statistics.statistics['p50']:.2f}"
f" TFLOP / second / device, "
f"TotalThroughput (median): "
f"{tflops_per_sec_all_devices_statistics.statistics['p50']:.2f} "
f"TFLOP / second, "
f"MFU: {mfu_statistics.statistics['p50']:.2%}"

Comment on lines +1376 to 1383
f"Total bytes: {total_bytes}, Step Time (median): "
f"{average_time_ms_statistics.statistics["p50"]:.2f}, "
f"Step Time (p90): "
f"{average_time_ms_statistics.statistics["p90"]:.2f}, "
f"Throughput (p10): "
f"{gigabytes_per_sec_statistics.statistics["p10"]:.2f} "
f"GBytes / second / device, "
f"Throughput (median): "
f"Throughput (median):"
f"{gigabytes_per_sec_statistics.statistics["p50"]:.2f} "
f"GBytes / second / device, "
f"Throughput (p90): "
f"{gigabytes_per_sec_statistics.statistics["p90"]:.2f} "
f"GBytes / second / device, "
f"TotalThroughput (p10): "
f"{gigabytes_per_sec_all_devices_statistics.statistics["p10"]:.2f} "
f"GBytes / second, "
f"TotalThroughput (median): "
f"{gigabytes_per_sec_all_devices_statistics.statistics["p50"]:.2f} "
f"GBytes / second, "
f"TotalThroughput (p90): "
f"{gigabytes_per_sec_all_devices_statistics.statistics["p90"]:.2f} "
f"GBytes / second"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

There are two issues here:

  1. Using double quotes inside a double-quoted f-string expression is only supported in Python 3.12+. Use single quotes for keys inside double-quoted f-strings for backward compatibility.
  2. There is a missing space after Throughput (median): on line 1378, which will cause the printed output to be formatted incorrectly (e.g., Throughput (median):123.45 instead of Throughput (median): 123.45).
Suggested change
f"Total bytes: {total_bytes}, Step Time (median): "
f"{average_time_ms_statistics.statistics["p50"]:.2f}, "
f"Step Time (p90): "
f"{average_time_ms_statistics.statistics["p90"]:.2f}, "
f"Throughput (p10): "
f"{gigabytes_per_sec_statistics.statistics["p10"]:.2f} "
f"GBytes / second / device, "
f"Throughput (median): "
f"Throughput (median):"
f"{gigabytes_per_sec_statistics.statistics["p50"]:.2f} "
f"GBytes / second / device, "
f"Throughput (p90): "
f"{gigabytes_per_sec_statistics.statistics["p90"]:.2f} "
f"GBytes / second / device, "
f"TotalThroughput (p10): "
f"{gigabytes_per_sec_all_devices_statistics.statistics["p10"]:.2f} "
f"GBytes / second, "
f"TotalThroughput (median): "
f"{gigabytes_per_sec_all_devices_statistics.statistics["p50"]:.2f} "
f"GBytes / second, "
f"TotalThroughput (p90): "
f"{gigabytes_per_sec_all_devices_statistics.statistics["p90"]:.2f} "
f"GBytes / second"
f"Total bytes: {total_bytes}, Step Time (median): "
f"{average_time_ms_statistics.statistics['p50']:.2f}, "
f"Throughput (median): "
f"{gigabytes_per_sec_statistics.statistics['p50']:.2f} "
f"GBytes / second / device, "
f"TotalThroughput (median): "
f"{gigabytes_per_sec_all_devices_statistics.statistics['p50']:.2f} "
f"GBytes / second"

@linamy85

Copy link
Copy Markdown
Collaborator

The code change doesn't align with the PR title, could you double check?

@linamy85 linamy85 self-assigned this Sep 14, 2026
@linamy85
linamy85 merged commit 223aed9 into AI-Hypercomputer:chs Sep 14, 2026
2 checks passed
@sarthakag sarthakag changed the title Revert "feat: added p90 step time logic for GEMM and HBM tail latencies (#129) Revert "feat: added p90 step time logic for GEMM and HBM tail latencies" Sep 19, 2026
@sarthakag

Copy link
Copy Markdown
Author

We will be rolling the PR forward in the next release of CHS.

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