[gem5-users] Gem5 stuck when simulate C++ workload in SE mode

2021-07-20 Thread Đức Anh via gem5-users
Hi all, I am running into a strange problem when simulating a C++ program in SE mode. In short, when I comment a for loop in 1 of my function, gem5 works. Otherwise, when I uncomment the for loop (the empty for loop, nothing in the body) gem5 stucks after startup. It likes Gem5 cannot find where t

[gem5-users] Re: Gem5 stuck when simulate C++ workload in SE mode

2021-07-20 Thread Gabriel Busnot via gem5-users
Hi Duc, Having the print not displayed on screen does not necessarily mean that it has not been executed. It could just have been stuck in stdout buffer which was not flush because of an abnormal program termination. If you initialize you data with truly random and unbounded data, "number = bl

[gem5-users] Re: CHI - Cluster CPUs having a shared L2 cache

2021-07-20 Thread Javed Osmany via gem5-users
Hello Gabriel I have been debugging and delving into more details of the code for CHI.py and CHI_config.py. In the attached Winrar archive are the latest customised versions of CHI.py and CHI_config.py that I have generated to date. When defining one cluster with N x CPUs and checking the confi

[gem5-users] Re: CHI - Cluster CPUs having a shared L2 cache

2021-07-20 Thread Gabriel Busnot via gem5-users
Hi Javed, addSharedL2Cache is only called on lines 465 and 470 of CHI.py and these lines are touched only if options.littleclust_l2cache == 'shared'. You don't set it in the command line and the default value is 'private', which explains why it never gets called. Also I suspect that on lines 47

[gem5-users] Re: Gem5 stuck when simulate C++ workload in SE mode

2021-07-20 Thread Đức Anh via gem5-users
Hi Gabriel, It was indeed the output is stuck in the stdout buffer because the program ran too long. When I increase the >> 25 to >> 45 I can see it works fine. It was quite fast on the host, I just don't think it would be that slow on the simulator. I generate random numbers by std::random_devic

[gem5-users] Re: Gem5 stuck when simulate C++ workload in SE mode

2021-07-20 Thread Gabriel Busnot via gem5-users
Indeed, gem5 is designed to be deterministic so all random number generation should rely on a deterministically seeded random number generator. This random number generator normally is 'random_mt' located in src/base/random.cc. However not all random number generated in gem5 relies on this gener

[gem5-users] Re: Gem5 stuck when simulate C++ workload in SE mode

2021-07-20 Thread Đức Anh via gem5-users
Hi Gabriel, Thanks for your help. This way is much simpler than trying to get a true random generator in the C++ workload. Best, Duc Anh On Tue, 20 Jul 2021 at 15:40, Gabriel Busnot via gem5-users < gem5-users@gem5.org> wrote: > Indeed, gem5 is designed to be deterministic so all random number

[gem5-users] Re: CHI - Cluster CPUs having a shared L2 cache

2021-07-20 Thread Javed Osmany via gem5-users
Hello Gabriel >> addSharedL2Cache is only called on lines 465 and 470 of CHI.py and these >> lines are touched only if options.littleclust_l2cache == 'shared'. >> You don't set it in the command line and the default value is 'private', >> which explains why it never gets called. The command lin

[gem5-users] Implicit Register Dependencies in x86

2021-07-20 Thread Mohit Gambhir via gem5-users
Hi all, I am running a DerivO3CPU basesd SE mode simulation with x86 ISA. The micro benchmark that I am running contains a loop with independent multiply instructions. An excerpt from the disassembly of the benchmark loop looks something like this 400c07: 48 0f af d2

[gem5-users] Re: Implicit Register Dependencies in x86

2021-07-20 Thread Ayaz Akram via gem5-users
Hi Mohit, I wonder if the number of Physical register file entries is becoming a bottleneck in the configuration you are using? Normally, I would expect that 'ProdLo' and 'ProdHi' registers will be renamed to some physical register and should not cause any dependency between two independent multip

[gem5-users] 4-core ARM with fs.py and fs_bigLITTLE.py

2021-07-20 Thread Majid Jalili via gem5-users
Hi, I am using the following commands for the fs.py and fs_bigLITTLE.py: ./build/ARM/gem5.opt ./configs/example/fs.py --caches --mem-size=64GB --kernel /home/cc/disks/binaries/vmlinux.arm64 --disk /home/cc/disks/disks/ubuntu-18.04-arm64-docker_big.img -n 4 --machine-type VExpress_GEM5_V1 ./build