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

Reply via email to