Repository navigation
Conversation
The agentx preset defaulted slice_duration to 1 s, so every run computed per-second request and server-metric timeslices in its final export. At concurrency 13,312 over 3,600 s that took 1 h 38 m after profiling, against 23 m with --slice-duration 3600. InferenceX reads none of the timeslice output. Remove the preset default; --slice-duration still enables timeslices. Signed-off-by: Francesco Di Natale <3429989+FrankD412@users.noreply.github.com>
Try out this PRQuick install: pip install --upgrade --force-reinstall git+https://github.com/ai-dynamo/aiperf.git@c8a4c62e1a33faa6753bc8560a29472e533eb1cdRecommended with virtual environment (using uv): uv venv --python 3.12 && source .venv/bin/activate
uv pip install --upgrade --force-reinstall git+https://github.com/ai-dynamo/aiperf.git@c8a4c62e1a33faa6753bc8560a29472e533eb1cdLast updated for commit: |
5 of 11 tasks
Collaborator
Author
|
Closing in response to SemiAnalysisAI/InferenceX#4288 being close. We can reopen these if post processing becomes an issue again. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The
agentxpreset defaultsslice_durationto 1 second, so every AgentX run computes per-second request and server-metric timeslices in its final export. On long, high-concurrency runs that work dominates post-profiling time: on a 3,600-second DSV4.1-Flash 16P1D run at concurrency 13,312 (~1.46 M requests, GB300), aiperf took 1 h 38 m between the end of profiling andAll results received, against 23 m with--slice-duration 3600. The server-metrics export also shrank from 1.28 GB to 1.97 MB. #53 removed timeslices from live summaries only; final exports still compute them.InferenceX, the consumer this preset targets, reads none of the timeslice output. Its result processing uses only the run-wide server-metric
stats(total,sum,max,avg), which are computed from all samples in the window and do not depend on the slice width. With either setting it produced the same result fields.Remove
slice_durationfrom theagentxpreset so timeslicing is opt-in. Passing--slice-durationstill enables it, at any width, for runs that want per-window analysis. Server-metric sampling (AIPERF_SERVER_METRICS_COLLECTION_INTERVAL) is unchanged, as is theinferencex-agentx-mvpscenario, which never set a slice duration.Behavior change for anyone relying on the default: AgentX runs no longer write
profile_export_aiperf_timeslices.{json,csv}or server-metrictimeslices, and counterrate_avg/rate_min/rate_max/rate_stdare no longer populated, unless--slice-durationis passed.Companion change: SemiAnalysisAI/InferenceX#4288 adds
AIPERF_SLICE_DURATION, which passes--slice-durationfrom a recipe toagentx profile. It is the stopgap on agentx-harness 1.0.11 and becomes the opt-in path for per-window analysis once this ships.Measurement details
Matched srt-slurm runs on GB300, same recipe (DSV4.1-Flash FP4, Dynamo + vLLM, 16 × DEP2 prefill, 1 × DEP32 decode, concurrency 13,312, 3,600 s, tachometer off), agentx-harness 1.0.11, differing only in
--slice-duration:--slice-duration 3600All results receivedserver_metrics_export.jsonprofile_export.jsonlAI model disclosure
Prepared with
claude-opus-5-5(Anthropic), as exposed by the Hermes runtime: investigation, implementation, tests and this description.Note
Medium Risk
Changes default export behavior for AgentX runs; anyone depending on implicit 1s timeslices must pass
--slice-duration, but core throughput/latency stats are unchanged.Overview
AgentX preset no longer enables per-second timeslice export by default. The
agentxscenario’scli_defaultsdropslice_duration: 1.0, so resolvedbenchmark.artifacts.slice_durationisNoneunless the user passes--slice-duration.Docs now state that timeslice metrics are off unless
--slice-durationis set (instead of implying 1-second slices). A parametrized unit test locks in opt-in behavior: omitted flag →None; explicitslice_duration→ that value.User-visible change: default AgentX runs skip
profile_export_aiperf_timeslicesand server-metric timeslice artifacts (and related rate stats) unless timeslicing is explicitly enabled—matching InferenceX’s consumption of run-wide stats only and avoiding heavy post-profiling work on long runs.Reviewed by Cursor Bugbot for commit c8a4c62. Bugbot is set up for automated code reviews on this repo. Configure here.