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

submodule(utility): introduce XSPerfLevel for performance counter #4238

Merged
merged 1 commit into from
Jan 26, 2025

Conversation

klin02
Copy link
Member

@klin02 klin02 commented Jan 25, 2025

This change introduce XSPerfLevel, including VERBOSE/NORMAL/CRITICAL. Only counters with level greater or equal than threhold will be instantiated, which will reduce utilization and compile time on Pallaium.

PerfLevel therhold can be set in command line, VERBOSE by default to apply all counters.
An example usage as follows:
SIM_ARGS="--perf-level CRITICAL" or
PLDM_ARGS="--perf-level CRITICAL" PLDM=1

PerfLevel param is also VERBOSE by default, which means all counters will be ignored now if threhold greater than that. User can explicitly set params to keep some important counters instantiated, as follows: XSPerfAccumulate(xx, yy, perfLevel = XSPerfLevel.CRITICAL)

@klin02
Copy link
Member Author

klin02 commented Jan 25, 2025

Maybe we can also set some XSPerf as CRITICAL or NORMAL in this PR, and merge them together?

@klin02 klin02 changed the title feat(XSPerf): introduce XSPerfLevel for performance counter submodule(utility): introduce XSPerfLevel for performance counter Jan 26, 2025
@klin02 klin02 requested a review from Tang-Haojin January 26, 2025 04:27
This change introduce XSPerfLevel, including `VERBOSE`/`NORMAL`/`CRITICAL`.
Only counters with level greater or equal than threhold will be instantiated,
which will reduce utilization and compile time on Pallaium.

PerfLevel therhold can be set in command line, `VERBOSE` by default to
apply all counters.
An example usage as follows:
SIM_ARGS="--perf-level CRITICAL" or
PLDM_ARGS="--perf-level CRITICAL" PLDM=1

PerfLevel param is also `VERBOSE` by default, which means all counters
will be ignored now if threhold greater than that. User can explicitly
set params to keep some important counters instantiated, as follows:
XSPerfAccumulate(xx, yy, perfLevel = XSPerfLevel.CRITICAL)
@XiangShanRobot
Copy link

[Generated by IPC robot]
commit: da639f9

commit astar copy_and_run coremark gcc gromacs hmmer-Vector lbm linux mcf microbench milc namd povray wrf xalancbmk
da639f9 1.819 0.442 2.636 1.232 2.143 1.500 2.145 2.360 0.943 1.400 1.998 3.113 2.567 2.271 3.303

master branch:

commit astar copy_and_run coremark gcc gromacs hmmer-Vector lbm linux mcf microbench milc namd povray wrf xalancbmk
7fbc739 2.634 1.498 0.943 1.380 3.300
74050fc 2.634 1.224 1.498 2.359 0.943 1.380 3.101 3.300
15471b5 2.634 1.498 0.943 1.388 3.300
c670557 0.442 2.634 1.498 2.359 1.388 2.555
30c0e6f 0.442 2.636 1.223 1.500 2.145 2.360 0.943 1.401 1.998 3.113 2.567 3.303
4378b55 1.819 0.442 2.636 1.236 2.143 1.500 2.145 2.360 0.943 1.408 1.998 3.113 2.567 2.271 3.303
bb42dd8 1.819 0.442 2.636 1.230 2.143 1.500 2.145 2.360 0.943 1.405 1.998 3.113 2.567 2.271 3.303
4c06265 1.819 0.442 2.636 1.232 2.143 1.500 2.145 2.360 0.943 1.405 1.998 3.113 2.567 2.271 3.303
92330f9 1.819 0.442 2.636 1.231 2.143 1.500 2.145 2.360 0.943 1.408 1.998 3.113 2.565 2.271 3.303
1fe7f8b 1.819 0.442 2.636 1.230 2.143 1.500 2.145 2.360 0.943 1.405 1.998 3.113 2.565 2.271 3.303

@Tang-Haojin Tang-Haojin merged commit 4ba1d45 into master Jan 26, 2025
10 checks passed
@Tang-Haojin Tang-Haojin deleted the perf-level branch January 26, 2025 17:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants