Conversation
jaredoconnell
previously approved these changes
Jan 14, 2026
Collaborator
jaredoconnell
left a comment
There was a problem hiding this comment.
Using an event looks to be an improvement to the design. I just have one comment.
44293ab to
e094303
Compare
Signed-off-by: Samuel Monson <smonson@redhat.com>
Signed-off-by: Samuel Monson <smonson@redhat.com>
e094303 to
9c43821
Compare
jaredoconnell
approved these changes
Jan 14, 2026
Collaborator
jaredoconnell
left a comment
There was a problem hiding this comment.
Looks good to me. I tested it with a basic setup and checked the relevant timing values in the output.
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.
Summary
Fixed an issue where applying the initial start time to a
Stratagycould results in a deadlock. Also ensure that the recorded benchmarkstart_timeis relative to the first request and not the scheduling start time.Details
At the start of a benchmark the main thread will set the start time in shared memory. Each worker will also attempt to poll the start time. This behavior can cause transient deadlocks that prevent the benchmark from progressing to sending requests. Additionally the recorded "start_time" used for constraint calculations and stored as the benchmark start time was relative to the scheduler start time and not the first request time. This PR implements separate fixes for each issue.
Test Plan
The following patch is needed to observe the issue however it can be very difficult to reproduce depending on the hardware:
The following test would reliably reproduce the issue in at least one concurrency level on H200 hardware:
guidellm benchmark run \ --target="${GUIDELLM_TARGET}" \ --rate-type=concurrent \ --data=prompt_tokens=1000,output_tokens=1000 \ --max-seconds=600 \ --rate=1,50,100,200,300,500,650 \ --disable-progress \ --output-path="output.json" 2>&1 | tee "output.log"Example in
output.logwhere strategy sync hit issue:Related Issues
Use of AI
## WRITTEN BY AI ##)