Thank you Jieming.
Thank you for helping to resolve my confusion!
I guess I can do my following tasks.
Thanks Tushar, Jieming and Srikant again!
Best,
Zhang Meng
------------------ 原始邮件 ------------------
发件人:
"gem5 users mailing list"
<[email protected]>;
发送时间: 2021年1月25日(星期一) 凌晨4:45
收件人: "Bharadwaj, Srikant"<[email protected]>;
抄送: "gem5 users mailing
list"<[email protected]>;"等价无穷小"<[email protected]>;"Jieming
Yin"<[email protected]>;
主题: [gem5-users] Re: 回复:Re: Garnet
Zhang Meng, you can simply convert cycles to ticks without modifying the code.
If you search for "ruby.clk_domain.clock", that tells you the clock
period in ticks.
Srikant, maybe converting cycles to ticks automatically is a better way to go.
Otherwise if making it "--sim-ticks", users need to figure out the ruby clock
period first.
Jieming
On Sun, Jan 24, 2021 at 4:46 AM Bharadwaj, Srikant
<[email protected]> wrote:
Thanks Tushar and Jieming. Yes, we should consider changing the name to
sim-ticks or convert cycles to ticks before passing it to Garnet standalone.
Thanks,
Srikant
From: Krishna, Tushar via gem5-users <[email protected]>
Sent: Sunday, January 24, 2021 2:08:58 AM
To: Jieming Yin <[email protected]>
Cc: gem5 users mailing list <[email protected]>; 等价无穷小
<[email protected]>; Krishna, Tushar <[email protected]>
Subject: [gem5-users] Re: 回复:Re: Garnet
[CAUTION: External Email] Ah thanks Jieming. Maybe we should consider changi g
it back to cycles - does get confusing for users. We can chat about that
separately ..
Cheers, Tushar
On Jan 23, 2021, at 3:18 PM, Jieming Yin <[email protected]> wrote:
Hi Zhang and Tushar,
I'm afraid it was because the "--sim-cycles" option in garnet actually
specifies simulation ticks rather than cycles. Suppose the ruby clock is 500,
"--sim-cycles=1000" only simulates 2 cycles. Given that the injection rate is
also small, it is expected that there is no packet generated during the
simulation.
Jieming
On Fri, Jan 22, 2021 at 11:26 PM 等价无穷小 via gem5-users
<[email protected]> wrote:
Thanks for your reply!
The video on YouTube is a online teaching video, the teacher shows me
how to run the garnet_standalone and the run results. In his results, the
latency is almost 11, but my results are different, and my friend changes
the garnet version to garnet2.0, the results she gets are almost same as the
video. I think the garnet version is not the key problem, but I can not
understand the running results of mine.
And I add the parameter --ini-vnet=0,
The command line is
./build/NULL/gem5.opt configs/example/garnet_synth_traffic.py --network=garnet
--num-cpus=16 --num-dirs=16 --topology=Mesh_XY --mesh-rows=4 --sim-cycles=1000
--synthetic=uniform_random --injectionrate=0.01 --inj-vnet=0
the results are as following:
system.ruby.l1_cntrl0.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl0.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl0.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl1.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl1.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl1.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl10.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl10.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl10.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl11.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl11.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl11.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl12.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl12.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl12.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl13.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl13.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl13.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl14.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl14.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl14.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl15.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl15.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl15.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl2.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl2.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl2.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl3.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl3.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl3.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl4.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl4.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl4.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl5.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl5.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl5.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl6.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl6.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl6.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl7.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl7.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl7.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl8.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl8.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl8.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl9.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl9.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl9.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.network.average_flit_latency
nan
system.ruby.network.average_flit_network_latency
nan
system.ruby.network.average_flit_queueing_latency
nan
system.ruby.network.average_flit_vnet_latency |
nan
| nan
|
nan
system.ruby.network.average_flit_vqueue_latency |
nan
| nan
|
nan
system.ruby.network.average_hops
nan
system.ruby.network.average_packet_latency
nan
system.ruby.network.average_packet_network_latency
nan
system.ruby.network.average_packet_queueing_latency
nan
system.ruby.network.average_packet_vnet_latency |
nan
| nan
|
nan
system.ruby.network.average_packet_vqueue_latency |
nan
| nan
|
nan
system.ruby.network.avg_link_utilization
0
system.ruby.network.ext_in_link_utilization
0
system.ruby.network.ext_out_link_utilization
0
system.ruby.network.flit_network_latency |
0
| 0
|
0
system.ruby.network.flit_queueing_latency |
0
| 0
|
0
system.ruby.network.int_link_utilization
0
system.ruby.network.packet_network_latency |
0
| 0
|
0
system.ruby.network.packet_queueing_latency |
0
| 0
|
0
system.clk_domain.clock
1000
# Clock period in ticks
Then I try to change the --sim-cycles=20000, the results are as following:
system.ruby.hit_latency_hist_seqr::total
3
system.ruby.l1_cntrl0.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl0.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl0.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl0.mandatoryQueue.avg_buf_msgs
0.024999
# Average number of messages in buffer
system.ruby.l1_cntrl0.mandatoryQueue.avg_stall_time
87.520624
# Average number of cycles messages are stalled in this MB
system.ruby.l1_cntrl0.requestFromCache.avg_buf_msgs
0.049998
# Average number of messages in buffer
system.ruby.l1_cntrl0.requestFromCache.avg_stall_time
125.043748
# Average number of cycles messages are stalled in this MB
system.ruby.l1_cntrl1.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl1.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl1.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl10.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl10.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl10.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl10.mandatoryQueue.avg_buf_msgs
0.024999
# Average number of messages in buffer
system.ruby.l1_cntrl10.mandatoryQueue.avg_stall_time
212.514374
# Average number of cycles messages are stalled in this MB
system.ruby.l1_cntrl10.requestFromCache.avg_buf_msgs
0.049998
# Average number of messages in buffer
system.ruby.l1_cntrl10.requestFromCache.avg_stall_time
375.031248
# Average number of cycles messages are stalled in this MB
system.ruby.l1_cntrl11.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl11.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl11.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl12.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl12.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl12.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl13.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl13.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl13.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl14.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl14.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl14.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl15.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl15.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl15.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl15.mandatoryQueue.avg_buf_msgs
0.024999
# Average number of messages in buffer
system.ruby.l1_cntrl15.mandatoryQueue.avg_stall_time
37.523124
# Average number of cycles messages are stalled in this MB
system.ruby.l1_cntrl15.requestFromCache.avg_buf_msgs
0.049998
# Average number of messages in buffer
system.ruby.l1_cntrl15.requestFromCache.avg_stall_time
25.048748
# Average number of cycles messages are stalled in this MB
system.ruby.l1_cntrl2.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl2.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl2.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl3.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl3.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl3.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl4.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl4.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl4.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl5.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl5.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl5.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl6.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl6.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl6.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl7.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl7.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl7.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl8.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl8.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl8.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.l1_cntrl9.cacheMemory.demand_accesses
0
# Number of cache demand accesses
system.ruby.l1_cntrl9.cacheMemory.demand_hits
0
# Number of cache demand hits
system.ruby.l1_cntrl9.cacheMemory.demand_misses
0
# Number of cache demand misses
system.ruby.latency_hist_seqr::bucket_size
1
system.ruby.latency_hist_seqr::max_bucket
9
system.ruby.latency_hist_seqr::samples
3
system.ruby.latency_hist_seqr |
3 100.00% 100.00%
| 0 0.00%
100.00% | 0
0.00% 100.00% | 0
0.00% 100.00% |
0 0.00% 100.00% |
0 0.00% 100.00% |
0 0.00%
100.00% | 0
0.00% 100.00% | 0
0.00% 100.00% |
0 0.00% 100.00%
system.ruby.latency_hist_seqr::total
3
system.ruby.network.average_flit_latency
4500
system.ruby.network.average_flit_network_latency
3500
system.ruby.network.average_flit_queueing_latency
1000
system.ruby.network.average_flit_vnet_latency |
3500
| nan
|
nan
system.ruby.network.average_flit_vqueue_latency |
1000
| nan
|
nan
system.ruby.network.average_hops
2
system.ruby.network.average_packet_latency
4500
system.ruby.network.average_packet_network_latency
3500
system.ruby.network.average_packet_queueing_latency
1000
system.ruby.network.average_packet_vnet_latency |
3500
| nan
|
nan
system.ruby.network.average_packet_vqueue_latency |
1000
| nan
|
nan
system.ruby.network.avg_link_utilization 0.200000
system.ruby.network.avg_vc_load |
0.200000 100.00% 100.00% |
0 0.00% 100.00% |
0 0.00%
100.00% | 0
0.00% 100.00% | 0
0.00% 100.00% |
0 0.00% 100.00% |
0 0.00% 100.00% |
0 0.00%
100.00% | 0
0.00% 100.00% | 0
0.00% 100.00% |
0 0.00% 100.00% |
0 0.00% 100.00%
system.ruby.network.avg_vc_load::total
0.200000
system.ruby.network.ext_in_link_utilization
3
system.ruby.network.ext_out_link_utilization
1
system.ruby.network.flit_network_latency |
3500
| 0
|
0
system.ruby.network.flit_queueing_latency |
1000
| 0
|
0
system.ruby.network.flits_injected |
3 100.00% 100.00% |
0 0.00%
100.00% | 0
0.00% 100.00%
system.ruby.network.flits_injected::total
3
system.ruby.network.flits_received |
1 100.00% 100.00% |
0 0.00%
100.00% | 0
0.00% 100.00%
system.ruby.network.flits_received::total
1
system.ruby.network.int_link_utilization
4
system.ruby.network.packet_network_latency |
3500
| 0
|
0
system.ruby.network.packet_queueing_latency |
1000
| 0
|
0
system.ruby.network.packets_injected |
3 100.00% 100.00% |
0 0.00% 100.00%
| 0 0.00%
100.00%
system.ruby.network.packets_injected::total
3
system.ruby.network.packets_received |
1 100.00% 100.00% |
0 0.00% 100.00%
| 0 0.00%
100.00%
In fact, the injectionrate is very small, I can not understand why the latency
can up to 4500, is there existing other problems?
Please help me to run the garnet correctly
Thank you very much !!
Zhang Meng
------------------ 原始邮件 ------------------
发件人: "gem5 users mailing list" <[email protected]>;
发送时间: 2021年1月23日(星期六) 凌晨4:43
收件人: "gem5-users"<[email protected]>;"gem5 users mailing
list"<[email protected]>;
抄送: "等价无穷小"<[email protected]>;"Krishna,
Tushar"<[email protected]>;
主题: [gem5-users] Re: Garnet
Hmm you can go back to an older version of garnet by cloning an older version
of gem5 - but I don’t think you need to. Lets try to figure out what’s going
on. What do you mean by the result being different from the YouTube video?
Can you also try running with --inj-vnet=0 .. this injects only single flit
packets so easier to understand / debug the results.
Best,
Tushar
On Jan 20, 2021, 10:09 AM -0500, 等价无穷小 via gem5-users
<[email protected]>, wrote:
Hi I'm a new learner on gem5 and ubuntu , now I am using Garnet to run
the examples on the tutorial .
The command line is following :
./build/NULL/gem5.opt configs/example/garnet_synth_traffic.py --network=garnet
--num-cpus=16 --num-dirs=16 --topology=Mesh_XY --mesh-rows=4 --sim-cycles=20000
--synthetic=uniform_random --injectionrate=0.1
This command can be run,but the results in the stats.txt is very strange, the
latency is too high, the result is in the end , in the youtube video, the
result is very small. And if I change the injecitonrate=0.01 and the
sim-cycles=1000 , the latency has no results. I downlode the latest version of
gem5, the garnet version I use is 3.0 . I run the command on the ubuntu
18.04 and 20.04, the result is same. Is it because of the garnet version?
A teacher ask me to change the version to 2.0, is it nessary? If so , how
to change the garnet version?
The following is the command line rusults:
system.ruby.network.avg_vc_load::total
5.850000
system.ruby.network.ext_in_link_utilization
59
system.ruby.network.ext_out_link_utilization
38
system.ruby.network.flit_network_latency |
38500
| 20500
|
92000
system.ruby.network.flit_queueing_latency |
11000
| 6000
|
17000
system.ruby.network.flits_injected
| 13 20.63%
20.63% | 10
15.87% 36.51% |
40 63.49% 100.00%
system.ruby.network.flits_injected::total
63
system.ruby.network.flits_received
| 11 32.35%
32.35% | 6
17.65% 50.00% |
17 50.00% 100.00%
system.ruby.network.flits_received::total
34
system.ruby.network.int_link_utilization
137
system.ruby.network.packet_network_latency |
38500
| 20500
|
20000
system.ruby.network.packet_queueing_latency |
11000
| 6000
|
3000
Thanks
Zhang Meng
_______________________________________________
gem5-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
--
Jieming
--
Jieming_______________________________________________
gem5-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s