-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Linux: skip offline cpu cores in cpu_freq #2376
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: shadeyg56 <shadeyg56@gmail.com>
shadeyg56
force-pushed
the
offline-cpu-fix
branch
from
February 22, 2024 21:52
4cd85b9
to
0ca7480
Compare
Nice. Some remarks:
Thank you |
Do I need to remove the f-string in order to support python 2? |
Oh right. Yes. |
Signed-off-by: shadeyg56 <shadeyg56@gmail.com>
Signed-off-by: shadeyg56 <shadeyg56@gmail.com>
ddelange
added a commit
to ddelange/psutil
that referenced
this pull request
Feb 27, 2024
…mpaolo-master * 'master' of https://github.com/giampaolo/psutil: add black opt to make lines more compact giampaolo#2366 [Windows]: log debug message when using slower process APIs Linux: skip offline cpu cores in cpu_freq (giampaolo#2376) fix py2 failure update style to latest black ver chore: update cibuildwheel on windows (giampaolo#2370) use unicode literals u"" instead of u("") make install-pip: fix installation on python 2 more ruff rules adapt to new ruff config directives update CREDITS + mention @c0m4r for sponsorship (thanks!) Include net/if.h before net/if_dl.h (giampaolo#2361) pre-release fix failing tests refac t
ddelange
added a commit
to ddelange/psutil
that referenced
this pull request
Feb 27, 2024
* giampaolo-master: add black opt to make lines more compact giampaolo#2366 [Windows]: log debug message when using slower process APIs Linux: skip offline cpu cores in cpu_freq (giampaolo#2376) fix py2 failure update style to latest black ver chore: update cibuildwheel on windows (giampaolo#2370) use unicode literals u"" instead of u("") make install-pip: fix installation on python 2 more ruff rules adapt to new ruff config directives update CREDITS + mention @c0m4r for sponsorship (thanks!) Include net/if.h before net/if_dl.h (giampaolo#2361) pre-release fix failing tests refac t
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #2254
Previously offline CPU cores would return an error in
cpu_freq()
since psutil didn't skip them.With this change, any CPU core found to be offline will return
scpufreq(0, 0, 0)
I figured it would be pretty common for programs to expect the cores to be returned in order which is why I had it append a tuple with all-zero values. If this is unwanted, it could be easily removed to only return online cpus and their frequencies.
Description
Runs
cat
on/sys/devices/system/cpu/cpu{i}/online
to determine if a CPU is offline or not. Ifcat
returns 0, thenscpufreq(0, 0, 0)
is appended and the loop continues to the next iteration. Otherwise, the function runs as normal.