If no one has any better ideas, I'd try to use GDB on the gem5 executable itself, turn on ExecAll logging, and break on the stat dump part of the code and see where both calls come from. Also consider Mozilla rr reverse debugging if it seems that reverse stepping could help. Not ideal, but works every time with enough staring :-)
On Sun, Apr 12, 2020 at 5:42 PM David Agassi <davidio.aga...@gmail.com> wrote: > > Thanks for your response. > > Double checked. There doesn't seem to be a problem with the executable. > attached are the disassembly of the ROI begin and end functions and the > original code. > > I have debugged with GDB and stepped over the m5 commands, they occur only > once and in the correct sequence. > all this was done on qemo, but when I run it in gem5 the problem reoccurs. > (The ExecAll logs weigh 53G (compressed) and I could not read them.) > > Any ideas? > > > > On Thu, Apr 9, 2020 at 8:59 PM Ciro Santilli <ciro.santi...@gmail.com> wrote: >> >> Can you double check with aarch64-linux-gnu-objdump that the binary >> really only contains a single pseudoop? Maybe it is just an >> instrumentation bug that doubles it up. >> >> I would also recommend that you try to correlate --debug-flags ExecAll >> or GDB the guest executable around the pseudoop point to narrow down >> what is happening. >> >> >> On Thu, Apr 9, 2020 at 6:30 PM David Agassi <davidio.aga...@gmail.com> wrote: >> > >> > Hi guys, >> > >> > I'm am running the PARSEC benchmark suite on gem5 ARM in full system >> > simulation mode. For some reason it seems like some m5 PseudoInst >> > (checkpoint, stats_reset, stats_dump) are executed twice and I'm not sure >> > why. >> > >> > I built PARSEC on QEMU following this guide. I'm running the benchmarks >> > single-threaded. >> > >> > In the beginning of each PARSEC benchmark's ROI there is an m5 checkpoint >> > command and a reset stats command. On exiting the ROI there is a dump >> > stats command. >> > >> > When simulating the the code with gem5 I get the following sequence of m5 >> > commands: >> > checkpoint, reset stats, checkpoint, reset stats, ...(ROI running)..., >> > dump stats, dump stats. >> > I'm expecting: checkpoint, reset stats, ...(ROI running)..., dump stats. >> > >> > However, the simulated application has the correct output (prints from the >> > simulated program's ROI occur once). >> > >> > Any ideas why this is happening? >> > >> > Can provide logs for Parsec and m5 and building / running commands. >> > >> > Thanks, David >> > _______________________________________________ >> > gem5-users mailing list >> > gem5-users@gem5.org >> > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users >> _______________________________________________ >> gem5-users mailing list >> gem5-users@gem5.org >> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users > > _______________________________________________ > gem5-users mailing list > gem5-users@gem5.org > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users _______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users