cpufreq
cpufreq copied to clipboard
[FEEDBACK] Leave here is your POSITIVE or NEGATIVE feedback!!!
I know it big changes and many users have some complaints about it. I'd like to know if somebody like it at all. LoL. Or if you have real issues or proposals to make it better.
I'm feeling like have only negative feedback on recent changes.
Regards, konkor.
today I update and the form freeze (yesterday all work fine) syslog :Apr 6 21:16:28 tamarro cpufreq-applica[9930]: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken. Apr 6 21:17:01 tamarro gnome-shell[5141]: Object St.Bin (0x55b45c3c7460), has been already deallocated — impossible to set any property on it. This might be caused by the object having been destroyed from C code using something such as destroy(), dispose(), or remove() vfuncs.
ciao
@vladi-it I think it could be relaited to https://bbs.archlinux.org/viewtopic.php?id=176663 and it https://bugs.launchpad.net/ubuntu/+source/at-spi2-core/+bug/1222356
Actually, i'm getting such error 1st time
Try launch it from terminal so with --debug option:
~/.local/share/gnome-shell/extensions/cpufreq@konkor/cpufreq-application --debug
The design is very appealing and feels more user friendly than before. It's definitely an improvement on your previous extension. Keep up the good work.
However there are a few concerns that may need to be addressed:
-
When you have a power event the extension can drop to a different profile while on battery power, however when back on A/C power the previous profile does not return until you open the extension window again. This feature also doesn't work as consistent as before. Sometimes I have to reload the extension to get the profile to change when switching to battery power.
-
If you mouse grab the main window and try to full screen by pushing the window to the Gnome top bar the desktop turns translucent purple, however if you release the mouse grab the desktop stays purple. In order to remove the transparent purple layer you have to open the extension's main window and attempt to full screen again.
-
Getting strange files generated in the home directory. They may be debug files or core dumps, but I didn't turn debugging on.
-
Some spelling and grammatical errors:
"It will do not apply 'Powersaving Profile" immidiatly on the event. It could be helpful on temporary disconections, issues with a power connector etc."
I know this is a minor issue, but I believe you want your work to look professional.
Doesn't work on Ubuntu 18.04, Gnome 3.28.2.
- When clicked, opens and closes immediately.
- If you click another indicator then click cpufreq, it opens but freezes.
- You can still open the options from the gnome extensions page. At least they are responding.
It takes about 3-5 seconds to open the menu on my i7-6500 running vanilla Ubuntu 18.10 Gnome 3.30.1 And the menu does not follow OS theme, is drastically different from all other extensions.
@Jau-Al I think it's related to #98 You can have broken mouse. I have fixed it.
@AlibekJ Try to launch it from terminal maybe it could provide some extra info:
~/.local/share/gnome-shell/extensions/cpufreq@konkor/cpufreq-application
## or even with --debug option
~/.local/share/gnome-shell/extensions/cpufreq@konkor/cpufreq-application --debug
So you can choose the dark theme mode option in the preferences window. It should have same theme like Nautilus or any other applications on your desktop. The extension ends on that monitor indicator button now.
~/.local/share/gnome-shell/extensions/cpufreq@konkor/cpufreq-application --debug
[Sun Apr 07 2019 12:55:33.894](DD) [cpufreq][cpu helper] {"name":"Default","minf":0,"maxf":100,"turbo":true,"cpu":16,"acpi":true,"guid":"default","core":[{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"}]}
[Sun Apr 07 2019 12:55:33.894](DD) [cpufreq][cpu helper] {"name":"Balanced","minf":0,"maxf":100,"turbo":false,"cpu":16,"acpi":true,"guid":"balanced","core":[{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"}]}
[Sun Apr 07 2019 12:55:33.896](DD) [cpufreq][cpu helper] {"name":"Default","minf":0,"maxf":100,"turbo":true,"cpu":16,"acpi":true,"guid":"default","core":[{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"}]}
[Sun Apr 07 2019 12:55:33.896](DD) [cpufreq][cpu helper] {"name":"Performance","minf":50,"maxf":100,"turbo":true,"cpu":16,"acpi":true,"guid":"performance","core":[{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"},{"g":"ondemand","a":3000000,"b":"3400000"}]}
[Sun Apr 07 2019 12:55:33.896](DD) [cpufreq][cpu helper] {"name":"Default","minf":0,"maxf":100,"turbo":true,"cpu":16,"acpi":true,"guid":"default","core":[{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"}]}
[Sun Apr 07 2019 12:55:33.896](DD) [cpufreq][cpu helper] {"name":"Powersave","minf":0,"maxf":100,"turbo":false,"cpu":10,"acpi":true,"guid":"battery","core":[{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"},{"g":"schedutil","a":"2200000","b":"2200000"}]}
[Sun Apr 07 2019 12:55:33.924](II) [cpufreq][InfoPanel] initialization
[Sun Apr 07 2019 12:55:33.944](II) [cpufreq][InfoPanel] done
[Sun Apr 07 2019 12:55:33.996](II) [cpufreq][InfoPanel] realize
[Sun Apr 07 2019 12:55:34.042](DD) [cpufreq][cpu helper] {"name":"Default","minf":0,"maxf":100,"turbo":true,"cpu":16,"acpi":true,"guid":"default","core":[{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"}]}
[Sun Apr 07 2019 12:55:34.042](DD) [cpufreq][cpu helper] {"name":"Balanced","minf":0,"maxf":100,"turbo":false,"cpu":16,"acpi":true,"guid":"balanced","core":[{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"}]}
[Sun Apr 07 2019 12:55:34.050](DD) [cpufreq][cpu helper] {"name":"3e3c0599e65a10048067a9765ca9d726","minf":0,"maxf":100,"turbo":false,"cpu":16,"acpi":true,"guid":"3e3c0599e65a10048067a9765ca9d726","core":[{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000},{"g":"ondemand","a":2200000,"b":3400000}]}
[Sun Apr 07 2019 12:55:34.054](DD) [cpufreq][cpu helper] {"name":"Default","minf":0,"maxf":100,"turbo":true,"cpu":16,"acpi":true,"guid":"default","core":[{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"}]}
[Sun Apr 07 2019 12:55:34.054](DD) [cpufreq][cpu helper] {"name":"Balanced","minf":0,"maxf":100,"turbo":false,"cpu":16,"acpi":true,"guid":"balanced","core":[{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"},{"g":"ondemand","a":"2200000","b":"3400000"}]}
The app window shows up but is not responsive / freezed, after dozens of seconds it just closes down. No more debug info, process just closed.
I think that's exactly the same issue many people complain about here or in extensions.gnome.org comments section.
GNOME Shell 3.28.3 Ubuntu 18.04.2
(great work in overall!)
@konkor to add to the above, after app window closes, the extension / app settings window opens ¯_(ツ)_/¯
@curvatura99 Thanks for your wide review! There are many general aspects:
-
intel_pstate CPU driver. Using/choosing that driver tells:
I don't want to let my system (kernel) control CPU. Let's it be automatically depending on already loaded code inside my CPU! So I don't care!
Solution is to disable intel_pstate driver in the kernel boot command line. It'll give the chance to the Linux kernel and users control CPU depending on all actual tasks and events. -
IRQBALLANCE It's a cause of plenty issues when you trying to control your CPU core threads! Solution: Uninstall it or disable its systemd service.
-
OTHER POWER MANAGMENT TOOLS Disable on battery event inside the extension or inside other tool. The worst thing is when you trying to use SEVERAL POWER MANAGEMENT TOOLS together like this extension, laptopmode-tools, TLP, system76-power, etc Solution: ensure you are using the ONE POWER MANAGEMENT TOOL at least for CPU. You could test your settings by monitoring current settings in the system journal and turning on/off your power supply.
Your system will go crazy until freezes and memory dumps, especially, on the weak, ultra-low, mobile CPUs.
Answers to your questions:
-
it's related to 3d and all explaining before. So on this kernel locks, freezes it could ignore your settings or stop users processes or even crash and dumps strange memory dumps to home folder.
-
I can't imagine how its related to the application. I think it's Window Manager, theme styling issue.
-
Look 1.
-
Thank you for pointing me to that. I'm always glad to improve my English even it's not my second or third language.
Thanks you all for the feedback! And I'm looking forward for more active discussions, testing, etc. I'm unable to test the application on all kinds of OS, Kernels and hardware. So I'm related on your support and feedbacks. Together we could make it better like any other open-source project.
@cih997 Thanks for your report. I can't tell you nothing without backtrace. So try run it in gdb debugger and maybe we could trace it.
gdb --args gjs ./cpufreq-application
## then 'run' command to execute inside it
## backtrace on errors, quit to exit
@curvatura99 Also I didn't mentioned next:
- You can try to reduce battery level to 90-95% to avoid races on battery event and hard overloading.
- You can create own Power Profiles for Battery and select them.
- I made commit and increased cores count for Powersave Profile. So it would be 4 cores for 4 cores CPU, 6 / 8, 9 / 12, etc
- Cpufreq application is pretty big and IO intensive now. It's why I want to create lite CLI for changing profiles, ideally it should be persistent in memory. I'm even thinking about binary daemon, and want to move most functionality of bash backend (cpufreqctl), and dbus system events listener...
@cih997 Thanks for your report. I can't tell you nothing without backtrace. So try run it in gdb debugger and maybe we could trace it.
gdb --args gjs ./cpufreq-application ## then 'run' command to execute inside it ## backtrace on errors, quit to exit
(gdb) run
Starting program: /usr/bin/gjs ./cpufreq-application
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffeba77700 (LWP 8840)]
[Thread 0x7fffeba77700 (LWP 8840) exited]
[New Thread 0x7fffeba77700 (LWP 8841)]
[New Thread 0x7fffea776700 (LWP 8842)]
[New Thread 0x7fffe9f75700 (LWP 8843)]
[New Thread 0x7fffe9774700 (LWP 8844)]
[New Thread 0x7fffe8f73700 (LWP 8845)]
[New Thread 0x7fffe3fff700 (LWP 8846)]
[New Thread 0x7fffe37fe700 (LWP 8847)]
[New Thread 0x7fffe2ffd700 (LWP 8848)]
[New Thread 0x7fffe27fc700 (LWP 8849)]
[New Thread 0x7fffe1ffb700 (LWP 8850)]
[New Thread 0x7fffe17fa700 (LWP 8851)]
[New Thread 0x7fffe0ff9700 (LWP 8852)]
[New Thread 0x7fffe07f8700 (LWP 8853)]
[New Thread 0x7fffdfff7700 (LWP 8854)]
[New Thread 0x7fffdf7f6700 (LWP 8855)]
[New Thread 0x7fffdeff5700 (LWP 8856)]
[New Thread 0x7fffde7f4700 (LWP 8857)]
[New Thread 0x7fffddff3700 (LWP 8858)]
[New Thread 0x7fffdd7f2700 (LWP 8859)]
[New Thread 0x7fffdcff1700 (LWP 8860)]
[New Thread 0x7fff8ffff700 (LWP 8861)]
[New Thread 0x7fff8f7fe700 (LWP 8862)]
[New Thread 0x7fff8e182700 (LWP 8864)]
[New Thread 0x7fff7e456700 (LWP 8898)]
[New Thread 0x7fff7dc55700 (LWP 8899)]
[New Thread 0x7fff77fff700 (LWP 8920)]
[New Thread 0x7fff777fe700 (LWP 8925)]
[New Thread 0x7fff76ffd700 (LWP 8928)]
[Thread 0x7fff76ffd700 (LWP 8928) exited]
[Thread 0x7fff777fe700 (LWP 8925) exited]
[Thread 0x7fff77fff700 (LWP 8920) exited]
[Thread 0x7fff7e456700 (LWP 8898) exited]
[Thread 0x7fff7dc55700 (LWP 8899) exited]
[New Thread 0x7fff7dc55700 (LWP 12390)]
[New Thread 0x7fff7e456700 (LWP 12391)]
[Thread 0x7fffea776700 (LWP 8842) exited]
[Thread 0x7fffe9f75700 (LWP 8843) exited]
[Thread 0x7fffeba77700 (LWP 8841) exited]
[Thread 0x7fffe9774700 (LWP 8844) exited]
[Thread 0x7fffe8f73700 (LWP 8845) exited]
[Thread 0x7fffe3fff700 (LWP 8846) exited]
[Thread 0x7fffe37fe700 (LWP 8847) exited]
[Thread 0x7fffe2ffd700 (LWP 8848) exited]
[Thread 0x7fffe27fc700 (LWP 8849) exited]
[Thread 0x7fffe1ffb700 (LWP 8850) exited]
[Thread 0x7fffe17fa700 (LWP 8851) exited]
[Thread 0x7fffe0ff9700 (LWP 8852) exited]
[Thread 0x7fffe07f8700 (LWP 8853) exited]
[Thread 0x7fffdfff7700 (LWP 8854) exited]
[Thread 0x7fffdf7f6700 (LWP 8855) exited]
[Thread 0x7fffdeff5700 (LWP 8856) exited]
[Thread 0x7fffde7f4700 (LWP 8857) exited]
[Thread 0x7fffddff3700 (LWP 8858) exited]
[Thread 0x7fffdcff1700 (LWP 8860) exited]
[Thread 0x7fffdd7f2700 (LWP 8859) exited]
[Thread 0x7fff7dc55700 (LWP 12390) exited]
[Thread 0x7fff8e182700 (LWP 8864) exited]
[Thread 0x7fff8f7fe700 (LWP 8862) exited]
[Thread 0x7fff8ffff700 (LWP 8861) exited]
[Thread 0x7ffff7fb5f80 (LWP 8832) exited]
[Inferior 1 (process 8832) exited normally]
(gdb) backtrace
No stack.
That's all. App window still unresponsive / freezed. This time settings window did not open.
It's very nice result even single warning :)
Except it's not working... Maybe it's too much threads for GJS. I should ask around. No idea what it could be.
Can you try it on some livecd? Maybe it result of some settings or other packages. Try something newer or/and older. And give me feedback.
@curvatura99 Also I didn't mentioned next:
- You can try to reduce battery level to 90-95% to avoid races on battery event and hard overloading.
- You can create own Power Profiles for Battery and select them.
- I made commit and increased cores count for Powersave Profile. So it would be 4 cores for 4 cores CPU, 6 / 8, 9 / 12, etc
- Cpufreq application is pretty big and IO intensive now. It's why I want to create lite CLI for changing profiles, ideally it should be persistent in memory. I'm even thinking about binary daemon, and want to move most functionality of bash backend (cpufreqctl), and dbus system events listener...
Thanks for taking the time to answer my questions. Some follow-up to your answers:
I'm currently using 19.04 Ubuntu and Wayland as my main desktop. Been a long time Linux user, since 2005, so when something goes wrong I'll do basic troubleshooting before filing a bug report.
I've already disabled other management tools with regards to CPU management plus I do have power profiles created for both battery and A/C power. Now the extension does work, however it's just not as consistent as it was before. I can see the frequency attempt to change since the meter drops to 798 MHz when a power event occurs, but it fails to follow through. Based on my observations the extension is reading the events since reloading the extension or opening the window will apply the correct profile, it's just not doing it automatically. I also have an AMD processor, so intel_pstate CPU does not apply.
The issue with the windowing only occurs in Wayland, but not Xorg. The solution would be to disable full screen. It's not needed plus when the window is in full screen mode on the main window it looks pretty ugly.
@curvatura99 Oops I see that error why it couldn't restore previous profile now. It's just variable scope issue. I don't have any laptop near me to test it now. :) Thanks again for your report! I will push a fix in couple minutes.
EDIT: it's done in the https://github.com/konkor/cpufreq/commit/b458e81bfdd7456e7b929dbe2632149b7431de46 So it can be improved later.
@curvatura99 Eh. Now it should works much better, especially, when the GNOME Shell will be loading on battery. So I think I have fixed restoring too. Give me feedback after tests. I will try to test change too as I can reach a laptop...
@curvatura99 Eh. Now it should works much better, especially, when the GNOME Shell will be loading on battery. So I think I have fixed restoring too. Give me feedback after tests. I will try to test change too as I can reach a laptop...
I did a git pull with the changes you made, then flushed all of the old files and settings from dconf before installing. Same behavior as before, except reloading the extension does not engage the custom battery profile.
I guess it just needs to be tweaked so a profile can run during a battery event and go back to the original profile during an A/C event. I wish I could help more with your code, but I can only do bash scripting and some minor python stuff.
@curvatura99 Okay. We'll find out when get my hands to a laptop. My daughter picked my old laptop. So I could test it more deeply.
So the extension is not able to restore prev settings if you have disabled Remember option. You should handle it too I think.
And you don't need to make clear install. Now I'm using just make install command as user to update. So you just have to clone or unzip master and run make install and restart Shell only.
@curvatura99 So the extension is not able to restore prev settings if you have disabled Remember option. You should handle it too I think.
It doesn't restore settings with the remember settings tick box checked or unchecked. However with the remember settings checked I can switch the profile by clicking on the meter.
Pull A/C cord, profile switches to the correct one. Plug A/C back in, profile stays the same. Click on the meter, profile returns to previous one. The profile also does not change when the extension window is open and the A/C cord is pulled, but reloading the extension using the gnome shell extension re-loader changes the profile. Not a major flaw, just an inconvenience.
@curvatura99 I fixed restoring. It works now like:
- battery level < profile battery level => schedule (5s) to battery profile.
- battery level >= profile battery level => schedule (5s) to user profile (last saved or selected). (I can restore immediately after A/C connected like others do. I can do it easy.) I made a scheduler with timeout 5sec to avoid racing. There is an GJS limitation makes things more complicated to make it more clear.
I want to do a couple small things more and release updated (33.1).
@curvatura99 I fixed restoring. It works now like:
I'm glad it's working now. Thank's for the effort, I appreciate it.
The new update looks really nice and all, but it seems much, much slower than before. It takes a few seconds to even open the menu after clicking on the icon, and it's another few seconds before the cpu frequency information actually loads in. Before it was already a tad bit slower than most GUIs, but this is ridiculous.
This is all while loading a single thread to the max, according to Gnome System Monitor.
I'm running an 8 core Ryzen cpu, so I don't think that my hardware is the issue. Oh, and I'm running Ubuntu 18.04 LTS.
Update: Now the menu won't even open, even after installing and reinstalling multiple times.
Is there any way to roll back to the old update? The new menu design looks nice, but constantly freezes on my machine.
@eding42 Yeah you can switch to the latest GNOME Extension release (ver. 32) on releases page or from extension branch. Just modify version to something BIG like 100500 to prevent updates.
There are causes to such moving anyway. Maybe I will write about more to explain all advantages and concerns. Thanks for your report!
BTW: Try something new with kernel 4.18+ From Ubuntu I like a bit Ubuntu 19.04 a bit. Looks like there is fixed almost all issues after 1.5 years development. I'm testing a lot on all versions and there boot time is in 2-4 times faster. It has some issues to example DONT USE Noveau drivers you can fry your NVidia card lol
EDIT: BTW I will push the update very soon and it will contain a lot fixes and improvements ;)
I'm sorry, but to be honest latest version is awful. Too many changes in usability. It doesn't work correctly. The main panel is frozen and I can't change the governor.
I think you made a mistake with latest update. Too disruptive with no noticeable improvement
@pdelteil: yeah. Sometimes I think the same. Also why Im doing it at all?! :/
But you could improve it if you'd make some testings and detect the issue. It should work! Maybe not immediately like old one but should work. Run it in the terminal, look at system journal or maybe other tools like htop, gdb...
Actually, it's not trivial app it's very IO intensive and heavy threaded. But GJS has some limitations and not versions work as expected. Also there's a lot other external limitations.
For me it works just well and loading about 500ms on SSD and 1000ms on HDD +-1sec depends on activity and Power Profile.
Maybe I should develop this branch standalone but I can't afford to support two branches...
Even with the update the switching of profiles from battery to A/C is still not working properly. I ended up installing TLP. Now the governors and frequencies are switching automatically again. Once this extension gets sorted out I will most likely reinstall since I do like having the graphical interface and applet meter.
Sometimes the output of "cpufreq" in the titlebar is "jumping"
- especially if it is not the leftestmost app - reason: floating font instead of fixed font - the number "1" is smaller than "8" (uses more pixels)
@GaVenga the extension (indicator) is using GNOME Shell theme font for rendering numbers. Looks like your theme font is not mono-spaced. I think we could fix it in the https://github.com/konkor/cpufreq/blob/522349642197d86ed2385bfbc1e34d906e442ff8/stylesheet.css#L10 somehow. I'm not a big expert in CSS or fonts design.
EDIT: I think I fixed it in the master...
The new design is quite different from the old one and I think I like it, I just need to get used to the new design, but there is an annoying detail about the new version: the window always open on the leftish side of the screen while the button in the top bar is on the right side (on my installation at least), so it gives an "uncorrelation" feeling, as if that window isn't the extension window, but just a randow window. Moreover, if I try to move the window, it just closes. Could you consider to let it move without closing or to make it appear near to the top bar button?