jmechnich / intel-power-control Goto Github PK
View Code? Open in Web Editor NEWGPU power management for Intel hardware on Linux
License: GNU General Public License v3.0
GPU power management for Intel hardware on Linux
License: GNU General Public License v3.0
Hello,
intel-power-control does not start after installing required dependencies (gcc, Qt 5.x, python3) and compilation on Mageia 5b3.
HW: GPU: Intel + nVidia Optimus GeForce710M
# cat /etc/issue:
Mageia release 5 (Cauldron) for x86_64
Kernel 3.19.0-desktop-5.mga5 on a 4-processor x86_64 / \l
# lspcidrake |grep VGA:
Card:NVIDIA GeForce 420 series and later: NVIDIA Corporation|GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] [DISPLAY_VGA] (rev: a1)
Card:Intel 810 and later: Intel Corporation|3rd Gen Core processor Graphics Controller [DISPLAY_VGA] (rev: 09)
[root@localhost yullaw]# intel-power-control
Traceback (most recent call last):
File "/usr/local/bin/intel-power-control", line 645, in <module>
main()
File "/usr/local/bin/intel-power-control", line 641, in main
i = IntelPowerControl()
File "/usr/local/bin/intel-power-control", line 44, in __init__
self.updateAll()
File "/usr/local/bin/intel-power-control", line 373, in updateAll
self.updateValues()
File "/usr/local/bin/intel-power-control", line 462, in updateValues
os.path.join(self.gpubasepath,k,'gt_cur_freq_mhz')))),
ValueError: invalid literal for int() with base 10: ''
[root@localhost yullaw]#
I downloaded your application as an AUR package.
https://aur.archlinux.org/packages/intel-power-control-git
However, the package is outdated. I explicitly installed PyQt6 and PyQt6 SIP additionally and it worked. But then, it crashed when the "systray icon" is enabled because it cannot find the color constants under 'Qt'. When I turned the 'Qt.red' into 'Qt.GlobalColor.red' (in the /usr/bin/intel-power-control
python script) then it works without crashing.
Is there something that I am missing for a normal functioning without hacking? Or are there differences in the PyQt API for Windows and Linux?
Traceback (most recent call last):
File "/bin/intel-power-control", line 7, in <module>
import sip
ModuleNotFoundError: No module named 'sip'
I found that GPU clock limits do not work, under load the GPU still hits a max of 1250MHz in my case.
When looking through the code I fould no trace of gt_boost_freq_mhz
which should be changed in a fashion similar to gt_max_freq_mhz
.
Here is an example:
Max clock speed is set to 350. Boost clock speed is left untouched (default in my case is 1250). When the GPU encounters load, the GPU clock speed is increased to 1250MHz because the boost clock speed overrides the max clock speed.
Solution:
either change the boost clock speed together with max clock speed or offer separate limiter for boost clock speeds.
Relevant Unix StackExchange question:
https://unix.stackexchange.com/questions/404049/how-to-stop-intel-hd4000-from-running-at-max-clock-speed
ModuleNotFoundError: No module named 'sip' on command intel-power-control
The thermal zones area in the GUI shows a column Temperature but the values are displayed in black color.
The other font adapts to the OS theme and is displayed in white. Ideally, the temperature values should also be displayed in the main colour of the OS theme.
Most users will run intel-power-control from the git directory. And it will fail to find the helper, of course, since the git directory isn't in the PATH
.
As a simple workaround, add the dirname
of the Python program to the searched dir list in which():
else:
- for path in os.environ["PATH"].split(os.pathsep):
+ for path in os.environ["PATH"].split(os.pathsep) + [os.path.dirname (sys.argv[0])]:
path = path.strip('"')
(normally, it would be easier to modify os.environ["PATH"]
directly at the beginning of main()
, but since you're setting suidhelper
directly in a class constructor, which()
will be called before main()
)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.