# popnet_modified **Repository Path**: gpz_joseph/popnet_modified ## Basic Information - **Project Name**: popnet_modified - **Description**: 修复了popnet存在的问题 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2024-11-20 - **Last Updated**: 2024-11-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 添加针对任意拓扑的仿真功能后,需要使用cmake编译,且依赖libboost-all-dev库。 新增以下参数: -G:拓扑文件路径 -m:更改中间结果的输出周期 -C:重构文件路径 详情见说明书。 This is not a ``real" README. It is too preliminary;) Please feel free to contact me. I will provide ``ALL" the information you need:) Compile popnet, please use gcc 3.4.2 in linux. Just type ``make popnet". To run popnet, we put a short network trace in ./random_trace, which models random network traffic in a 9x9 2D network. To run popnet, you can type the following command: ./popnet -A 9 -c 2 -V 3 -B 12 -O 12 -F 4 -L 1000 -T 20000 -r 1 -I ./random_trace/bench -R 0 -A 9: the size of the network in each dimension. In this example, there are nine routers on each dimension. -c 2: 2D network -B 12: input buffer size -O 12: output buffer size -F 4: flit size. We assume 64-bit flit unit, the actual flit size is then 64 x 4 = 128 -L 1000: link length in um -T 20000: simulation cycles -r 1: random seed -I ./random-trace/bench: trace file -R 0: choose dimension routing The current trace file has some ``weird" structure (to improve the simulation efficiency). In random_trace directory, you can see in total 82 files. Among these trace files, the main trace file is ``bench", which contains all the network packets. In addition, each router has its own trace file, named ``bench.x.y", which contains all the locally injected packets. In each trace file, the basic format is: T sx sy dx dy n T: packet injection time sx sy: the address of the source router dx dy: the address of the destination router n: packet size (number of flits)