summaryrefslogtreecommitdiff
path: root/src/gpgpu-sim/gpu-sim.cc
diff options
context:
space:
mode:
authorDavit Grigoryan <[email protected]>2026-04-30 03:47:44 +0000
committerDavit Grigoryan <[email protected]>2026-04-30 03:47:44 +0000
commit208024b4007eba568d3787e72a345b3137e89ade (patch)
treee1cf2cc0ba1637bdeb9a99ebd5e5d52f3d83aa2e /src/gpgpu-sim/gpu-sim.cc
parent314fb652d8a27a38599eeeec121d45327a405bb0 (diff)
add hw-realistic co-issue scheduling policies
Diffstat (limited to 'src/gpgpu-sim/gpu-sim.cc')
-rw-r--r--src/gpgpu-sim/gpu-sim.cc19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/gpgpu-sim/gpu-sim.cc b/src/gpgpu-sim/gpu-sim.cc
index 4fb288b..a23c238 100644
--- a/src/gpgpu-sim/gpu-sim.cc
+++ b/src/gpgpu-sim/gpu-sim.cc
@@ -699,11 +699,24 @@ void shader_core_config::reg_options(class OptionParser *opp) {
option_parser_register(
opp, "-gpgpu_co_issue_priority", OPT_UINT32,
&gpgpu_co_issue_priority,
- "Co-issue scheduler: 0=greedy (utilization-max), 1=intra-first, "
- "2=inter-first (matches pre-Change-4 behavior), 3=fewest-lanes, "
- "4=same-PC (default 2).",
+ "Co-issue scheduler: 0=greedy (utilization-max, all warps), "
+ "1=intra-first, 2=inter-first (matches pre-Change-4 behavior), "
+ "3=fewest-lanes, 4=same-PC, 5=greedy K-bounded "
+ "(utilization-max over first K warps, K=gpgpu_coissue_window_K "
+ "or gpgpu_num_simd_sets if window_K=0), 6=greedy K-bounded "
+ "centered (K/2 before + K/2 after primary in m_supervised_warps "
+ "order), 7=greedy K-bounded all-before (K-1 warps strictly before "
+ "primary in m_supervised_warps order) (default 2).",
"2");
option_parser_register(
+ opp, "-gpgpu_coissue_window_K", OPT_UINT32,
+ &gpgpu_coissue_window_K,
+ "Window size for mode-5 K-bounded co-issue (the number of warps "
+ "the candidate scan considers, taken from the front of the "
+ "scheduler's prioritized list). 0 = use gpgpu_num_simd_sets. "
+ "Only consulted when gpgpu_co_issue_priority=5.",
+ "0");
+ option_parser_register(
opp, "-gpgpu_simd_partitioning_debug", OPT_BOOL,
&gpgpu_simd_partitioning_debug,
"Enable per-cycle `SIMD_SETS:` printf spam from the co-issue "