-
-
Notifications
You must be signed in to change notification settings - Fork 32.5k
gh-127389 - fix 'Uops Executed' display in summarize_stats.py #127396
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
base: main
Are you sure you want to change the base?
Changes from all commits
6645fb5
152a74a
c336e18
21b8c83
de807d2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -45,6 +45,7 @@ | |
|
||
|
||
TOTAL = "specialization.hit", "specialization.miss", "execution_count" | ||
UOPS_EXECUTED_LABEL = "Uops executed" | ||
|
||
|
||
def pretty(name: str) -> str: | ||
|
@@ -442,7 +443,7 @@ def get_gc_stats(self) -> list[dict[str, int]]: | |
gc_stats[gen_n][name] = value | ||
return gc_stats | ||
|
||
def get_optimization_stats(self) -> dict[str, tuple[int, int | None]]: | ||
def get_optimization_stats(self) -> dict[Doc, tuple[int, int | None]]: | ||
if "Optimization attempts" not in self._data: | ||
return {} | ||
|
||
|
@@ -507,7 +508,7 @@ def get_optimization_stats(self) -> dict[str, tuple[int, int | None]]: | |
None, | ||
), | ||
Doc( | ||
"Uops executed", | ||
UOPS_EXECUTED_LABEL, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why? It only had two uses. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. For the code to work correctly the 2 instances must match - its not just any string, its used as an identifier. Is there any con in moving to a const? |
||
"The total number of uops (micro-operations) that were executed", | ||
): ( | ||
uops, | ||
|
@@ -1143,11 +1144,11 @@ def calc_optimization_table(stats: Stats) -> Rows: | |
|
||
return [ | ||
( | ||
label, | ||
doc, | ||
Count(value), | ||
Ratio(value, den, percentage=label != "Uops executed"), | ||
Ratio(value, den, percentage=doc.text != UOPS_EXECUTED_LABEL), | ||
) | ||
for label, (value, den) in optimization_stats.items() | ||
for doc, (value, den) in optimization_stats.items() | ||
] | ||
|
||
def calc_optimizer_table(stats: Stats) -> Rows: | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is also unrelated, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe it is related, as the fix for the issue is to treat the value returned from this function as a doc and not a str, so it makes the patch clearer