The lectures on NoC deadlocks on my website might help understand the problem:
http://tusharkrishna.ece.gatech.edu/wp-content/uploads/sites/175/2016/10/L05-Deadlocks-I.pdf
http://tusharkrishna.ece.gatech.edu/wp-content/uploads/sites/175/2016/10/L06-Deadlocks-II.pdf
http://tusharkrishna.ece.gatech.edu/teaching/icn_s17/

By default any VC can be selected as you rightly pointed out.
This means a cyclic dependence can form leading to a deadlock.
To avoid it, one technique is to partition the VCs into 2 halves, and require 
all flits crossing a specific link to switch from the first half to the second 
half. Flits can cross from VC 0 to VC 1, but not from VC 1 to VC 0, thereby 
ensuring no cyclic dependence.
To implement this, you need to hack into the VC select code.

[The same holds true in Garnet1.0 as well - it will also deadlock with a Torus].

If you want to use a Torus topology, this is something that needs to be 
implemented and not supported out of the box in garnet (yet).

Cheers,
Tushar



On Jul 24, 2017, at 10:36 AM, F. A. Faisal 
<dipu.7...@gmail.com<mailto:dipu.7...@gmail.com>> wrote:

Plus...

The default weight based routing selects the free VC.
If so, then why I need to do the VC partitioning as you mentioned in the Torus 
network.

VC Selection (VS): The winner of SA selects a free VC (if HEAD/HEAD_TAIL flit) 
from its output port.

I think this is a very important issue for all the users of garnet 2,0.

I would like to solve this.

Thanks again.

Faisal



On Mon, Jul 24, 2017 at 11:21 PM, F. A. Faisal 
<dipu.7...@gmail.com<mailto:dipu.7...@gmail.com>> wrote:
Thanks a lot for reply.

This is little bit terrible news for me.

However, as far I know garnet1.0 don't have the deadlock issue with Torus.
Please let me know how can I implement a VC partitioning scheme. Is it possible?

I can configure the routing algorithm with particular channel selection, but I 
have no idea of VC partitioning in gem5.

Please help me.

Thanks again.

Faisal


On Mon, Jul 24, 2017 at 10:33 PM, Krishna, Tushar 
<tus...@ece.gatech.edu<mailto:tus...@ece.gatech.edu>> wrote:
Hi Faisal,
The Torus topology deadlocks as it has rings in each dimension unless one 
implements a VC partitioning scheme or bubble flow control. That's why I 
removed torus from the default topologies provided by garnet2.0. If you 
implement torus, you will have to implement deadlock freedom.

Cheers,
Tushar


On Jul , 2017, at 5:56 PM, F. A. Faisal 
<dipu.7...@gmail.com<mailto:dipu.7...@gmail.com>> wrote:

Dear All,

I like to simulate the synthetic traffic analysis for Torus for 256 nodes with 
uniform traffic.
However, the network is showing latency degradation after 0.14 injection rate 
(flit latency = 33.044985 for 0.14 and flit latency =  38.244770 for 0.13 ), 
which could be the possible case of network deadlocked.
I configured the garnet 2.0 with all the default settings (4 vc + 16 bandwith 
factor) and Mesh network is also performing properly. As the number of VC is 4, 
Torus should not be in a deadlock.

I also like to share the network file as attachment.
And please consider the simulation condition as below-

./build/Garnet_standalone/gem5.debug configs.py/example/garnet_synth_traffic 
--num-cpus=256 --num-dirs=256 --network=garnet2.0 --topology=Torus_XY 
--mesh-rows=16 --sim-cycles=20000 --synthetic=uniform_random 
--injectionrate=0.14 --routing-algorithm=0 --vcs-per-vnet=4

Please let me know how to resolve this issue for Garnet 2.0.

Thanks and best regards,

F.A. Faisal
<Torus_XY.py>
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org<mailto:gem5-users@gem5.org>
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

_______________________________________________
gem5-users mailing list
gem5-users@gem5.org<mailto:gem5-users@gem5.org>
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


_______________________________________________
gem5-users mailing list
gem5-users@gem5.org<mailto:gem5-users@gem5.org>
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to