I can see the confusion here as one's intuiton may be that any instruction that uses a "FP unit" is classified as a fp_inst and one that uses an "IntAlu" is classifed as an int_inst.
Alternatively, you can't just take the execution counts (i.e. stats) from those units because they contain both speculative and non-speculative references. Additionally, It could also be argued that even if you used say an FP register for an IntAlu operation, then that should be classified as an integer instruction not both fp and int. I dont have a solution currently, but maybe there is a way to clarify this in the future. Unless I'm missing something, there doesn't appear to be a way to cleanly extract instruction mix from the stats file. -Korey On Thu, Feb 21, 2013 at 10:45 AM, Ali Saidi <[email protected]> wrote: > ** > > On 20.02.2013 16:55, Umesh Bhaskar wrote: > > Hi all, > > I am trying to understand the various stats available in the stats.txt > file for the Hello World binary under O3 configuration. > Specifically, I am looking at the folder > <gem5_path>/tests/quick/se/00.hello/ref/arm/linux/o3-timing. > > > Here the total committed instruction count is mentioned as > > system.cpu.commit.committedInsts 4591 > # Number of instructions committed > system.cpu.commit.committedOps 5729 > # Number of ops (including micro ops) committed > > > with the other stats listed below. > > system.cpu.commit.swp_count 0 > # Number of s/w prefetches committed > system.cpu.commit.refs 2138 > # Number of memory references committed > system.cpu.commit.loads 1200 > # Number of loads committed > system.cpu.commit.membars 12 > # Number of memory barriers committed > system.cpu.commit.branches 1007 > # Number of branches committed > system.cpu.commit.fp_insts 16 > # Number of committed floating point instructions. > system.cpu.commit.int_insts 4976 > # Number of committed integer instructions. > system.cpu.commit.function_calls 82 > # Number of function calls committed. > system.cpu.commit.bw_lim_events 119 > # number cycles where commit BW limit reached > > Now, to calculate the final instruction count, I would calculate the > following sum : int_insts + fp_insts + branches + refs = 4976+16+1007+2138 > = 8137, which does not match either committedInsts or committedOps. > Am I missing something here ? > > Thanks, > Umesh > > _______________________________________________ > gem5-users mailing > [email protected]http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users > > The flags aren't mutually exclusive. int_insts is any instruction that > accesses an integer register and fp_insts is any instruction that accesses > an fp register. Most load instructions are going to be integer operations. > > > > Ali > > > > > _______________________________________________ > gem5-users mailing list > [email protected] > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users > -- - Korey
_______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
