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]<mailto:[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]<mailto:[email protected]>>; 发送时间: 2021年1月23日(星期六) 凌晨4:43 收件人: "gem5-users"<[email protected]<mailto:[email protected]>>;"gem5 users mailing list"<[email protected]<mailto:[email protected]>>; 抄送: "等价无穷小"<[email protected]<mailto:[email protected]>>;"Krishna, Tushar"<[email protected]<mailto:[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]<mailto:[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]<mailto:[email protected]> To unsubscribe send an email to [email protected]<mailto:[email protected]> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s -- Jieming
_______________________________________________ gem5-users mailing list -- [email protected] To unsubscribe send an email to [email protected] %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
