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#5694 core-sharded: Add core-serial support #6519

Merged
merged 7 commits into from
Dec 21, 2023
Merged

Conversation

derekbruening
Copy link
Contributor

Adds a new scheduler option single_lockstep_output which multiplexes the virtual core output streams onto a single global stream. This is simple to implement as the existing scheduler_t::stream_t class already multiplexes inputs onto an output.

Hooks up the drcachesim launcher -core_serial option to this new scheduler mode.

Updates the schedule_stats, basic_counts, and cache_simulator tools to support core_serial. For cache_simulator, the existing thread-to-core mapping code for round-robin and for -cpu_scheduling is kept for when in thread-sharded mode; in core-sharded mode, the scheduler's cpuid is mapped to a core index.

Adds a core_serial test of schedule_stats and basic_counts and a test of cache_simulator using the scheduler's -cpu_schedule_file as-traced mode.

Adds some dr$sim unit tests for cpuid to core mapping and error modes.

Issue: #5694

Adds a new scheduler option single_lockstep_output which multiplexes
the virtual core output streams onto a single global stream.  This is
simple to implement as the existing scheduler_t::stream_t class
already multiplexes inputs onto an output.

Hooks up the drcachesim launcher -core_serial option to this new
scheduler mode.

Updates the schedule_stats, basic_counts, and cache_simulator tools to
support core_serial.  For cache_simulator, the existing thread-to-core
mapping code for round-robin and for -cpu_scheduling is kept for when
in thread-sharded mode; in core-sharded mode, the scheduler's cpuid is
mapped to a core index.

Adds a core_serial test of schedule_stats and basic_counts and a test
of cache_simulator using the scheduler's -cpu_schedule_file as-traced
mode.

Adds some dr$sim unit tests for cpuid to core mapping and error modes.

Issue: #5694
@derekbruening
Copy link
Contributor Author

win64 failure is replaceall #5412

clients/drcachesim/analyzer.cpp Show resolved Hide resolved
clients/drcachesim/scheduler/scheduler.h Outdated Show resolved Hide resolved
clients/drcachesim/scheduler/scheduler.h Outdated Show resolved Hide resolved
@derekbruening derekbruening merged commit d2f47f3 into master Dec 21, 2023
14 of 15 checks passed
@derekbruening derekbruening deleted the i5694-core-serial branch December 21, 2023 17:31
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.

2 participants