Hi Karim,

You can’t set the value of ruby_system.network.number_of_virtual_networks 
arbitrarily. This value must match the actual virtual networks used by the 
protocol it corresponds to. In the case of Garnet_standalone, only 3 vnets are 
defined (c.f., network buffers defined by Garnet_standalone-cache.sm and 
Garnet_standalone-dir.sm). You can still force GarnetSyntheticTraffic (the 
traffic generator) to use only one of these using the --inj-vnet option but you 
can’t expect traffic to use more than 3 networks without modifying the code.

Hopefully, this should be relatively easy to do (given you know a bit about 
SLICC). You can add buffers in both the cache and the directory to use 
additional networks. Then, you can update mandatory_request_type_to_event to 
return additional event types that will trigger traffic on additional networks. 
Then, define the corresponding transition in cache, update dir to consume the 
messages on the new network and update the traffic generator 
(GarnetSyntheticTraffic) to issue new types of request that 
mandatory_request_type_to_event will match to events. Finally, update 
number_of_virtual_networks in configs/ruby/Garnet_standalone.py to match the 
new number of vnets used by the protocol and you should be good.

Best,

Gabriel
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org

Reply via email to