On 6/16/2023 3:07 AM, Alexandra-Nicoleta DAVID via gem5-users wrote:
Dear gem5 Community,

I am currently using the gem5 simulator for my research work and I find it a powerful and insightful tool for studying and understanding the inner workings of computer architectures.

I am particularly interested in exploring and understanding the behavior of floating-point instructions within certain benchmarking suites. For my study, I need to extract detailed information about each floating-point instruction that is executed, such as the Program Counter (PC), source register, and destination register.

Despite my efforts, I am having difficulty obtaining this data. I have been trying to use the trace functionality, but it seems I may be missing some key steps or perhaps there is a better approach.

Could anyone guide me on how to accomplish this task? Specifically, I would appreciate it if you could share any scripts, changes in the source code, configuration options, or any other method that would allow me to collect the information I need.

What leads you to believe that the trace functionality does not provide what 
you want?
In my experience it will, if you select the right trace options (i.e., debug 
flags).
These flags are summarized at the end of SConscript files (for the python code 
to help
generate .hh and .cc files from them).  Looking at gem5/src/cpu/SConscript, you 
will
see numerous Exec flags.  You may want something like this set of them:

ExecEnable,ExecOpClass,ExecMacro,ExecUser

You may need to experiment with adding or substituting other flags to get what 
you
want.  There is no filter to get *only* f.p. ops, though you could dig into the 
code
to see where these flags are used, and then set up and add a new flag (add it 
to SConscript,
#include the right file into the .hh/.cc file(s) where you will use it, etc.).

Note: debug flags are active only in opt and debug builds, not fast builds.

Finally, you pass them on the command line using --debug-flags flg1,flg2,flg3 
etc.
You will get a LOT of output; you may want to pipe it through a grep (etc.) 
filter
and then compress it with gzip or something.

HTH - EM
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org

Reply via email to