Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

i#7023: Switch drmemtrace replay of idles to use record count #7036

Merged
merged 2 commits into from
Oct 10, 2024

Conversation

derekbruening
Copy link
Contributor

@derekbruening derekbruening commented Oct 10, 2024

The drmemtrace replay of idles was using wall-clock time to reproduce the duration. A new idle replay type is added here (and made the default) which uses the idle record count instead, leaving support for the old format under the old type.

Idle during replay now properly returns STATUS_IDLE, rather than STATUS_WAIT.

Tested the new idle type on the existing record-replay tests inside scheduler_unit_tests and in core_sharded_test.

Support for the old format is considered best-effort as its use of wall-clock time makes it not able to reproduce precise timing in any case. Tested manually by generating an old-style record and ensuring the new code handled it:

$ clients/bin64/drmemtrace_launcher -indir ../src/clients/drcachesim/tests/drmemtrace.threadsig.x64.tracedir -core_sharded -cores 4 -replay_file ../build_x64_rel_tests/legacy_record.zip

Fixes #7023

The drmemtrace replay of idles was using wall-clock time to reproduce
the duration.  A new idle replay type is added here (and made the
default) which uses the idle record count instead, leaving support for the old
format under the old type.

Tested the new idle type on the existing record-replay tests inside
scheduler_unit_tests and in core_sharded_test.

Support for the old format is considered best-effort as its use of
wall-clock time makes it not able to reproduce precise timing in any
case.  Tested manually by generating an old-style record and ensuring
the new code handled it:

  $ clients/bin64/drmemtrace_launcher -indir ../src/clients/drcachesim/tests/drmemtrace.threadsig.x64.tracedir -core_sharded -cores 4 -replay_file ../build_x64_rel_tests/legacy_record.zip

Fixes #7023
@derekbruening derekbruening merged commit 5f4a4c7 into master Oct 10, 2024
17 checks passed
@derekbruening derekbruening deleted the i7023-replay-idle-count branch October 10, 2024 22:48
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.

replay should use sim time instead of wall clock for idle, and return idle and not wait for idle
2 participants