summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilson Fung <[email protected]>2012-09-03 00:05:12 -0800
committerAndrew Boktor <[email protected]>2014-08-14 13:48:54 -0700
commita3c4210a12617d8441cea084fc1041f9d6b20821 (patch)
tree0c629c83c02f433cc8497815254fb350fa6205d9
parent23040dd42f1fb134da159a5ddf1d593b5d818122 (diff)
Fixing the round-robin block distribution among SIMT core clusters in gpgpu_sim::issue_block2core() (Bug 19 External).
[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 13942]
-rw-r--r--src/gpgpu-sim/gpu-sim.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gpgpu-sim/gpu-sim.cc b/src/gpgpu-sim/gpu-sim.cc
index 80ca398..6d9fa87 100644
--- a/src/gpgpu-sim/gpu-sim.cc
+++ b/src/gpgpu-sim/gpu-sim.cc
@@ -805,8 +805,9 @@ int gpgpu_sim::next_clock_domain(void)
void gpgpu_sim::issue_block2core()
{
+ unsigned last_issued = m_last_cluster_issue;
for (unsigned i=0;i<m_shader_config->n_simt_clusters;i++) {
- unsigned idx = (i+m_last_cluster_issue+1) % m_shader_config->n_simt_clusters;
+ unsigned idx = (i + last_issued + 1) % m_shader_config->n_simt_clusters;
unsigned num = m_cluster[idx]->issue_block2core();
if( num ) {
m_last_cluster_issue=idx;