Hello all,
I implemented odd even scheme and adaptive routing in garnet. For odd
even, I use the algorithm in the paper /The odd-even turn model for
adaptive routing/ (Ge-Ming Chiu 2000). For adaptive routing, I use
get_credit_cnt(vcs) for each output to sum up all the credits in it, and
choose the one with most credits. I traced the flits flow, they work
fine. However, the performance didn't improve after the modification.
I ran FFT and LU kernels in splash2 with ALPHA MESI protocol, detailed
cpu type, 4*4 mesh, 1000000000 max ticks.
FFT with OE and adaptive routing FFT without OE and adaptive RADIX
with OE and adaptive RADIX without OE and adaptive
host_inst_rate 1006 11708 1945 15865
sim_insts 15008035 15016804 19748978 19752713
total flits injected 1315661 1309101 1131643 1130144
average latency 20.4676 20.4485 19.9921 19.968
Noticed that the host_inst_rate is extremely low with the
implementation, and the sim_insts even reduced a little bit. Is that
because my modification is too complex, so that each routing takes too
many instructions? Or I just write the codes wrong? I tried to reduce
both l1 and l2 cache size to achieve higher contention, but only got
less than 1% improvement in sim_insts. In addition, the benchmark runs
very slow (usually take one day) with my modification and reduced cache
size. Could anyone give me some help with my issue?
Sincerely,
Yuhang
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users