Hi Travis, Hmm I have not used traffic_gen myself so am not sure of its intended use case. I suggest looking at gem5/src/cpu/testers/garnet_synthetic_traffic/ .. this is how we manually define which cpus send packets and how big they are (how big they are depends on vnet they are injected in). The wiki has more details: http://www.gem5.org/documentation/general_docs/ruby/garnet_synthetic_traffic/
I also have a couple of local patches (might not apply cleanly as they were built for an older version of garnet but you can take a look at the code that needs to be added) to generate a network traffic trace (say from full system simulations) and feed them to garnet standalone. https://synergy.ece.gatech.edu/tools/garnet/ Best, Tushar On May 26, 2021, 10:21 PM -0400, Travis Dai <daitr...@student.otago.ac.nz>, wrote: Dear all users, I have been working on how to generate traffic by using TrafficGen.py and related files in gem5/src/cpu/testers/traffic_gen these days but without success. I have tried to run TrafficGen.py by command “python TrafficGen.py” but receiving error “ImportError: No module named m5.params”. I also tried compile traffic_gen.cc by command “g++ traffic_gen.cc -o traffic_gen” but fail again with message “traffic_gen.cc:37:10: fatal error: cpu/testers/traffic_gen/traffic_gen.hh: No such file or directory 37 | #include "cpu/testers/traffic_gen/traffic_gen.hh"”. Then I change the relative path to absolute path of header but the dependency of other files trigger other errors again, such as “traffic_gen/base.hh:45:10: fatal error: base/statistics.hh: No such file or directory 45 | #include "base/statistics.hh"”. Then, I switch to read gem5 description for Tracing and traffic generation in http://www.m5sim.org/General_Memory_System#Tracing_and_traffic_generation and http://pages.cs.wisc.edu/~swilson/gem5-docs/classTrafficGen.html#a53b678d216bdfcf5097c0f0436c16e30. The former website says traffic generator is controlled by a text-based configuration file, as can be seen in tests/quick/se/70.tgen/tgen-simple-mem.cfg . But when I go to the directory gem5/tests, there is no such kind of file. The latter website tells functions of related code but it seems outdated. My expectation is that using TrafficGen.py manually define which cpus send packets, how big they are, and which cpus receives packets and generate traffic. Then feed them to Garnet standalone debug mode to test network performance. Does anyone know how to solve this problem or give me some pointers/tutorials. I appreciate it very much! Best wishes, Travis
_______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s