Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow for optional content in a report file #507

Closed
klingaard opened this issue Jul 17, 2024 · 1 comment · Fixed by #508 or #540
Closed

Allow for optional content in a report file #507

klingaard opened this issue Jul 17, 2024 · 1 comment · Fixed by #508 or #540
Assignees
Labels
component: sparta Issue is related to sparta framework enhancement Enhancement or request

Comments

@klingaard
Copy link
Member

Would be really handy to use the same report definition file for multiple configurations that might or might not have the same stats. Today the report definition causes the framework to error:

Unable to parse expression: "cpu.icache.stats.il1_cache_misses" within context: top in report file "report.yaml" for the following reason: 
SPARTA was unable to find a tree node that matched this name.

Here's what the report.yaml looks like:

name: "Summary ICache Report"
content:
  cpu.icache.stats.il1_cache_misses: ICache Misses

This works for architecture A which has the icache at the cpu level, but not architecture B which has it maybe inside fetch.

Suggested "fix":

name: "Summary ICache Report"
optional_content:
  # Works for arch A
  cpu.icache.stats.il1_cache_misses: ICache Misses
optional_content:
  # Works for arch B
  cpu.fetch.icache.stats.il1_cache_misses: ICache Misses
@klingaard
Copy link
Member Author

Implementation example:

name: "Summary Performance Report"
style:
  decimal_places: 2
content:
  cycles : Total cycles consumed
simple-arch-content:
  cpu.core*.rob.stats.total_number_retired : Total Instructions Retired
other-arch-content:
  cpu.core*.rob.stats.ipc : IPC

The report mechanism looks for the keyword <arch name>-arch-content where <arch name> is the value supplied on the command line via --arch <arch name> flag

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: sparta Issue is related to sparta framework enhancement Enhancement or request
Projects
None yet
2 participants