Skip to content

[None][doc] Add tech blog: Evaluating Agentic Serving with Trace Replay and Job-Level Metrics#16230

Draft
KleinBlueC wants to merge 1 commit into
NVIDIA:mainfrom
KleinBlueC:doc/tech-blog-agentic-serving-eval
Draft

[None][doc] Add tech blog: Evaluating Agentic Serving with Trace Replay and Job-Level Metrics#16230
KleinBlueC wants to merge 1 commit into
NVIDIA:mainfrom
KleinBlueC:doc/tech-blog-agentic-serving-eval

Conversation

@KleinBlueC

@KleinBlueC KleinBlueC commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Documentation
    • Added a comprehensive technical blog post on evaluating agentic serving with trace replay and job-level performance metrics.
    • Explains structured trace recording, faithful workload replay, shared-prefix caching, and performance measurement by jobs per hour.
    • Shares findings on batching, parallel execution, cache eviction, KV-cache offloading, and agent branching strategies.

Description

Add tech blog: Evaluating Agentic Serving with Trace Replay and Job-Level Metrics.

Test Coverage

PR Checklist

Please review the following before submitting your PR:

  • PR description clearly explains what and why. If using CodeRabbit's summary, please make sure it makes sense.

  • PR Follows TRT-LLM CODING GUIDELINES to the best of your knowledge.

  • Test cases are provided for new code paths (see test instructions)

  • If PR introduces API changes, an appropriate PR label is added - either api-compatible or api-breaking. For api-breaking, include BREAKING in the PR title.

  • Any new dependencies have been scanned for license and vulnerabilities

  • CODEOWNERS updated if ownership changes

  • Documentation updated as needed

  • Update tava architecture diagram if there is a significant design change in PR.

  • The reviewers assigned automatically/manually are appropriate for the PR.

  • Please check this after reviewing the above items as appropriate for this PR.

GitHub Bot Help

To see a list of available CI bot commands, please comment /bot help.

…ay and Job-Level Metrics

Signed-off-by: KleinBlueC <102355066+KleinBlueC@users.noreply.github.com>
@KleinBlueC KleinBlueC requested a review from a team as a code owner July 10, 2026 08:17
@KleinBlueC KleinBlueC closed this Jul 10, 2026
@KleinBlueC KleinBlueC reopened this Jul 10, 2026
@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

Adds a tech blog describing trace replay for agent workloads, job-level serving metrics, and experimental findings on batching, prefix caching, and host KV-cache offloading.

Changes

Agentic serving evaluation

Layer / File(s) Summary
Trace replay methodology
docs/source/blogs/tech_blog/blog26_Evaluating_Agentic_Serving_with_Trace_Replay_and_Job_Level_Metrics.md
Defines structured traces, replay rules, tracing integration, replay commands, and offline cache analysis.
Metrics and workload setup
docs/source/blogs/tech_blog/blog26_Evaluating_Agentic_Serving_with_Trace_Replay_and_Job_Level_Metrics.md
Describes the trace dataset and steady-state jobs-per-hour metrics per user and GPU.
Serving findings
docs/source/blogs/tech_blog/blog26_Evaluating_Agentic_Serving_with_Trace_Replay_and_Job_Level_Metrics.md
Compares token-level and job-level results and documents prefix-cache eviction and host offloading effects.
Batching guidance and conclusion
docs/source/blogs/tech_blog/blog26_Evaluating_Agentic_Serving_with_Trace_Replay_and_Job_Level_Metrics.md
Relates batch sizing to agent branching structure and presents takeaways, future work, and acknowledgements.

Estimated code review effort: 1 (Trivial) | ~5 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title matches the change and follows the required [None][doc] format.
Description check ✅ Passed The template sections are present and the description is mostly filled out, though Test Coverage is left blank.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@docs/source/blogs/tech_blog/blog26_Evaluating_Agentic_Serving_with_Trace_Replay_and_Job_Level_Metrics.md`:
- Line 1: Add the repository-standard NVIDIA copyright and Apache 2.0 license
header at the beginning of the new blog document, before the title.
- Around line 97-100: Clarify the “Job-level interactivity” metric definition by
explicitly stating that mean end-to-end job latency is measured in seconds, so
3600 seconds divided by the mean latency yields jobs/hour/user.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: a3f5559f-dfd9-431a-9cc5-dfbecffefa9e

📥 Commits

Reviewing files that changed from the base of the PR and between e2ce7a6 and 6366708.

⛔ Files ignored due to path filters (7)
  • docs/source/blogs/media/tech_blog26_batch_size_sweep_fixed_concurrency.png is excluded by !**/*.png
  • docs/source/blogs/media/tech_blog26_coder_bc_frontier.png is excluded by !**/*.png
  • docs/source/blogs/media/tech_blog26_hit_rate_eviction_cliff.png is excluded by !**/*.png
  • docs/source/blogs/media/tech_blog26_host_offloading.png is excluded by !**/*.png
  • docs/source/blogs/media/tech_blog26_odr_bc_frontier.png is excluded by !**/*.png
  • docs/source/blogs/media/tech_blog26_pipeline.png is excluded by !**/*.png
  • docs/source/blogs/media/tech_blog26_token_vs_job_pareto_strategies.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • docs/source/blogs/tech_blog/blog26_Evaluating_Agentic_Serving_with_Trace_Replay_and_Job_Level_Metrics.md

@@ -0,0 +1,178 @@
# Evaluating Agentic Serving with Trace Replay and Job-Level Metrics

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.

🔒 Security & Privacy | 🟠 Major | ⚡ Quick win

Add the required NVIDIA copyright header.

This new file must begin with the repository’s NVIDIA copyright and Apache 2.0 license header.

As per coding guidelines: **/*: Add an NVIDIA copyright header to all new files, and update the copyright year in modified files.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@docs/source/blogs/tech_blog/blog26_Evaluating_Agentic_Serving_with_Trace_Replay_and_Job_Level_Metrics.md`
at line 1, Add the repository-standard NVIDIA copyright and Apache 2.0 license
header at the beginning of the new blog document, before the title.

Source: Coding guidelines

Comment on lines +97 to +100
The two axes are:

- **Job-level interactivity — jobs/h/user**: 3600 divided by the mean end-to-end job latency.
- **Job-level throughput — jobs/h/GPU**: completed jobs per hour, normalized by GPU count.

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.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Specify the latency units in the metric formula.

3600 / mean latency is correct only when latency is measured in seconds. State the unit explicitly so readers can reproduce jobs/h/user without ambiguity.

Proposed clarification
-- **Job-level interactivity — jobs/h/user**: 3600 divided by the mean end-to-end job latency.
+- **Job-level interactivity — jobs/h/user**: 3600 seconds divided by the mean end-to-end job latency, measured in seconds.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
The two axes are:
- **Job-level interactivity — jobs/h/user**: 3600 divided by the mean end-to-end job latency.
- **Job-level throughput — jobs/h/GPU**: completed jobs per hour, normalized by GPU count.
The two axes are:
- **Job-level interactivity — jobs/h/user**: 3600 seconds divided by the mean end-to-end job latency, measured in seconds.
- **Job-level throughput — jobs/h/GPU**: completed jobs per hour, normalized by GPU count.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@docs/source/blogs/tech_blog/blog26_Evaluating_Agentic_Serving_with_Trace_Replay_and_Job_Level_Metrics.md`
around lines 97 - 100, Clarify the “Job-level interactivity” metric definition
by explicitly stating that mean end-to-end job latency is measured in seconds,
so 3600 seconds divided by the mean latency yields jobs/hour/user.

@KleinBlueC KleinBlueC closed this Jul 10, 2026
@KleinBlueC KleinBlueC reopened this Jul 10, 2026
@KleinBlueC KleinBlueC marked this pull request as draft July 10, 2026 08:32
@KleinBlueC KleinBlueC changed the title [None][doc] Add tech blog: Evaluating Agentic Serving with Trace Repl… [None][doc] Add tech blog: Evaluating Agentic Serving with Trace Replay and Job-Level Metrics Jul 10, 2026
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.

1 participant