Skip to content

Add Output TPUT per GPU and Input TPUT per GPU columns to summary table - #178

Merged
functionstackx merged 6 commits into
mainfrom
copilot/update-summary-output-input-tput
Nov 6, 2025
Merged

Add Output TPUT per GPU and Input TPUT per GPU columns to summary table#178
functionstackx merged 6 commits into
mainfrom
copilot/update-summary-output-input-tput

Conversation

Copilot AI commented Nov 6, 2025

Copy link
Copy Markdown
Contributor

The GitHub Actions summary table only displayed total throughput per GPU. This adds separate columns for input (prefill) and output (decode) throughput to better understand performance characteristics.

Changes

utils/summarize.py

  • Added "Output TPUT per GPU" and "Input TPUT per GPU" columns to markdown table
  • Updated data rows to display output_tput_per_gpu and input_tput_per_gpu from aggregated results

utils/process_result.py

Example Output

| Hardware | ... | TPUT per GPU | Output TPUT per GPU | Input TPUT per GPU |
| :-: | ... | :-: | :-: | :-: |
| H100 | ... | 1250.5678 | 800.1234 | 450.4444 |
| H200 | ... | 2100.9876 | 1400.5678 | 700.4198 |

View original Slack conversation


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI and others added 3 commits November 6, 2025 03:56
Co-authored-by: functionstackx <47992694+functionstackx@users.noreply.github.com>
Co-authored-by: functionstackx <47992694+functionstackx@users.noreply.github.com>
@functionstackx
functionstackx marked this pull request as ready for review November 6, 2025 03:58
@functionstackx
functionstackx requested a review from a team as a code owner November 6, 2025 03:59
Copilot AI review requested due to automatic review settings November 6, 2025 03:59

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

This PR enhances the benchmark summary output by adding per-GPU metrics for input and output throughput alongside the existing total throughput metric. These granular metrics provide better visibility into individual GPU performance characteristics.

Key Changes:

  • Added input_tput_per_gpu calculation in result processing
  • Extended summary table to display output and input throughput per GPU separately
  • Improved code maintainability with proper dictionary formatting

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions

github-actions Bot commented Nov 6, 2025

Copy link
Copy Markdown
Contributor

📊 Line Count Report

File: utils/matrix-logic/generate_sweep_configs.py

Total Lines: 956

Base Lines: 956

Change: No change ➡️

Copilot AI changed the title [WIP] Add output and input TPUT per GPU to summary Add Output TPUT per GPU and Input TPUT per GPU columns to summary table Nov 6, 2025
Copilot AI requested a review from functionstackx November 6, 2025 04:03
@github-actions

github-actions Bot commented Nov 6, 2025

Copy link
Copy Markdown
Contributor

📊 Line Count Report

File: utils/matrix-logic/generate_sweep_configs.py

Total Lines: 956

Base Lines: 956

Change: No change ➡️

@functionstackx
functionstackx merged commit 8a98688 into main Nov 6, 2025
1 check passed
@functionstackx
functionstackx deleted the copilot/update-summary-output-input-tput branch November 6, 2025 05:24
@github-actions

github-actions Bot commented Nov 6, 2025

Copy link
Copy Markdown
Contributor

📊 Line Count Report

File: utils/matrix-logic/generate_sweep_configs.py

Total Lines: 956

Base Lines: 956

Change: No change ➡️

Oseltamivir added a commit that referenced this pull request Aug 5, 2026
…lamp

Fixes the defect instead of stepping around it. b368eae clamped the low-latency ladder to 128
so the corrupt 256 rung was not measured; the corruption itself was still in the kernels we
publish numbers from, at roughly 1.5-3.3% per invocation on every Blackwell SKU.

The fix was already upstream. DeepEP PR #642 adds a CTA-scope fence.proxy.async.shared::cta
before mbarrier_arrive(empty_barriers[stage_idx]) in LOW_LATENCY_COMBINE_RECV, so the combine
consumer's shared-memory reads retire before the stage is declared empty and the producer's next
TMA load refills it -- signalling empty too early is what let one output row be assembled from
two tiles, which matches the observed signature exactly (norm preserved to 4 s.f., 16-40% of
elements wrong). It closed #621, the same race found independently on NVL72.

COLLX_DEEPEP_V2_COMMIT was fa8a9b16, the head of the pre-merge PR #605 branch, cut before #642
landed. Its one unique commit was the #630 single-node V2 init fix, which main carries as
56169594e, so moving to main loses nothing and also picks up #715 (system-scope release before
the GIN barrier when scale-up spans NVLink and RDMA), #688 (NCCL Device API: runtime version for
ncclDevCommCreate), #178 (SM90), #641, and #640/#627 upstream's own libnccl and SO-name handling.
Verified before bumping that main still exposes every API this adapter calls: legacy Buffer
kwargs incl. allow_mnnvl, get_low_latency_rdma_size_hint, low_latency_dispatch/combine,
ElasticBuffer's full kwarg set, topk_idx_t, and the fp8 cast helpers.

rewrite_deepep_v2 now succeeds when the source already matches, because main contains #640 and
the old count(old) == 1 assertion would have aborted every leg at repository-stage. Verified
against all four source states: old form rewrites, fixed form is a no-op, absent and duplicated
forms still fail.

_LL_LADDER_CAP returns to 256. The two constants stay separate: the receive must not be sized
from max(ladder), or clamping the ladder would change the footprint that drives transport traffic
and fp8 dequant volume. The cap test now asserts ladder <= buffer -- strict inequality encoded
the workaround, not an invariant. The backend cache key includes the pin, so this forces a
rebuild rather than reusing the old build.
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.

3 participants