[Gems-users] Failed assertion while simulating MESI_SCMP


Date: Tue, 6 Apr 2010 14:50:27 -0500
From: sparsh mittal ISU <sparsh@xxxxxxxxxxx>
Subject: [Gems-users] Failed assertion while simulating MESI_SCMP
Hello
I am simulating
After a normal compile, when I start simics and issue ruby0.init, it gives error

failed assertion 'network_num < m_virtual_networks' at fn void SimpleNetwork::checkNetworkAllocation(NodeID, bool, int) in network/simple/SimpleNetwork.C:204

The reason for the assertion is the code in ruby/generated/MESI_SCMP_bankdirectory/Chip.C:

 // L1Cache_unblockFromL1Cache
  m_L1Cache_unblockFromL1Cache_vec.setSize(RubyConfig::numberOfL1CachePerChip(m_id));
  for (int i = 0; i < RubyConfig::numberOfL1CachePerChip(m_id); i++)  {
    m_L1Cache_unblockFromL1Cache_vec[i] = m_net_ptr->getToNetQueue(i+m_id*RubyConfig::numberOfL1CachePerChip()+MachineType_base_number(string_to_MachineType("L1Cache")), false, 4);
    assert(m_L1Cache_unblockFromL1Cache_vec[i] != NULL);
    m_L1Cache_unblockFromL1Cache_vec[i]->setOrdering(false);
    if (FINITE_BUFFERING) {
      m_L1Cache_unblockFromL1Cache_vec[i]->setSize(PROTOCOL_BUFFER_SIZE);
    }
  }

Here the parameter 4 is passed to getToNetQueue and on checking: ASSERT(network_num < m_virtual_networks); it fails since m_virtual_networks is 4.

Would you suggest some solution?


--
Thanks and Regards
Sparsh Mittal

[← Prev in Thread] Current Thread [Next in Thread→]