Related
sorry if this is is a stupid question but i can't find where....where do i set the system not to kill the setcpu task in background?
That is an option you cannot set in the system. Than Android system automatically manages memory and tasks. Android should not be killing SetCPU. That said, it may help if you enable profiles in SetCPU and *tick* the "Notifications" box.
If you like PimpMyCpu, you can donate by buying "PimpMyCpu" on the Market!
If you want your device/kernel to be supported, you can find informations here so you can ask your favorite kernel developer to take a look
If you have a compatible kernel, please send me a link to the kernel so i can list it here
PimpMyCpu is an application to manage your device cpu frequency, voltage, governor and scheduler based on profiles and rules. PimpMyCpu can now also load profiles per application !
Requirement:
root and busybox (you probably already have that)
A compatible kernel, currently available for Galaxy S (i9000), LG Optimus 2x/g2x, G-Tab, Samsung G3, Asus Transformer, and maybe more...
Usage:
The application consist of 3 views : the "profiles list" view, the "profile edit" view and the "per application" profiles view
The profiles list view : This is the main view you see when launching the application. This view list all the profiles you created plus the "Current" configuration.
Touch the "Application" icon to go to the per application profiles view
Touch the "Add" button to create a new profile based on your default cpu configuration.
Touch the "Delete" button to delete a profile.
Touch the "Edit" button to go to the "profile edit" and change the profile configuration.
Touch the "Profile rules" box to apply a profile when the selected rule is meet (see "Profiles rules").
Check the "Enable PimpMyCpu at boot" to apply the current profiles configuration when your device start.
The profile edit view : this view is used when you edit a profile.
Touch the "Profile" item to change the profile name.
Touch the "Governor" item to change the governor to be used.
Touch the "Scheduler" item to change the scheduler to be used.
Touch a cpu icon to set the selected frequency as maximum or minimum frequency.
Touch a frequency to change the voltage.
The per application view : this view is used to assign a profile to an application
Touch an application to set a profile (or disable a profile)
Touch the "Search" icon to only show applications with a profile assigned
Touch the "Application" icon to go back to the profiles list view
Profiles rules:
For a profile to be active, you need to set a rule (classed here by priority) :
Disabled : the profile is never used
Test : the profile is used until next reboot or by manually disabling the profile. This rule will override any other rule and should be used every time you create and/or modify a profile.
Screen Off : the profile is used when screen goes off. This rule will override any other rule except the "Test" rule. This means that if you enable a "Screen off" and an "Powered" profile for example, the "Screen off" profile will override the "Powered" profile when (and only when) screen is off.
Powered : the profile is used when the device is powered (via AC or USB). This rule will override (when the device is powered) any other rule except "Test" and "Screen off" rules (see previous lines...)
Battery Level : the profile is used when the battery run lower than specified. This rule will be overridden by "Test", "Screen off" and "Powered" rules (see previous lines...)
Default : the default profile. This rule will be used when no other of the previous rules apply (or no other rules are enabled).
Applications profiles:
When a profile is assigned to an application, THIS PROFILE BYBASS ALL OTHER PROFILES.
Problems:
If you do not test a profile but apply a rule to it (another than the "Test" rule of course), since the profile will be loaded as soon as the rule is meet your device may crash due to a massive overclock or undervolt and result in the impossibility to boot your device anymore. You'll have to remove PimpMyCpu via CWM manager for exemple.
Changelog
1.0 : Initial release
1.1 : Added new tab with scheduler selection
1.2 : Added governor selection (this version should restore stock settings on first launch, including removing boot settings, and rebuild its configuration so you can use the new options. If you have any problem, "Reset" manually to default settings, uninstall previous version then install this update).
1.3 :
Fixed "superuser not available" error while it is
UnderVolting dialog now has the current setting selected by default
Complete code rewrite, need some testing
Preliminary Optimus 2X support (compatible kernel to come soon)
Be sure to reset previous applied settings and uninstall older version before installing this one !
1.4 :
Now almost 100% compatible with the LG Optimus 2x device (with the use of my modified kernel), only "Save as boot" isn't available for now but will come very soon.
Added a "Stress Cpu" test.
1.5 :
100% compatible with the LG Optimus 2x device, including "Save as boot"
"Stress Cpu" test now loop trought all the enabled cpu values to test each of them for 30 secondes, and show cpu temp on Optimus 2x (if someone know the file to check on GalaxyS to get cpu temp, i do not have it anymore).
Added "Save Profile" option to the menu, your current configuration can be saved to sdcard ( "/sdcard/PimpMyCpu/device/*" ) or overwrite a previous saved configuration.
Added "Load Profile" option to the menu so you can restore a previous saved configuration.
Added "Delete Profile" option to the menu so you can delete a previously saved configuration.
1.6 :
Fix a bug in "Cpu Stress" test preventing the cpu speed to change.
1.7 :
Fix a force close on profile load/save (it's better if i create the directory before trying to save to it ).
1.8 :
Fix a bug in "Save as boot", it was a fail if the profile had spaces.
Allow undervolt to -250 mV instead -200mV.
1.9 :
Probably fixed "Cpu Stress" test on Galaxy S.
2.0 :
Added a little widget to quickly switch between saved profiles
2.1 :
Compatible with new Optimus 2X kernel ( 2x-kernel-2.6.32.9-fakeShmoo-cpasjuste.4.zip )
Optimus 2x users : YOU HAVE to update your kernel to use this version.
2.2 :
Added back compatibility with older kernels, including EternityProject Optimus2X kernel until all kernels are properly updated to the standard cpufreq sysfs devices name.
2.3 :
Changed the way settings are read/applied. Pimp My Cpu usage should be smoother now.
Added a "Force minimal freq when sleeping" option to the "More" tab, this will force your actual minimal cpu speed to be activated when screen off / device sleep. This require a reboot for changes to be applied.
2.4 :
Fix a little bug in the "Force minimal freq when sleeping" option, on wake up (screen on) the maximum cpu frequency restored was the maximum boot frequency (generaly 1000Mhz) instead of the current maximum frequency enabled on the current profile.
2.5 :
Now "Reset" button also remove "Force minimal freq when sleeping" settings.
Fixed a bug in "Force minimal freq when sleeping" settings, the option could be checked even if the setting wasn't active.
Better internal command handling, should again improve smoothness.
Now save/load profile according to the kernel version instead of device, this prevent wrong profiles to be loaded if the new kernel support new frequency steps.
Disabled "Governor" setting on Tegra devices since the cpu scaling is done by the tegra driver itself.
2.6 :
Probably fixed a bug when using an old kernel
2.7 :
Fixed a delay between effective frequency and displayed frequency in cpu stress test
Added an option to select the timing for frequency change in cpu stress test (menu button)
Probably fixed scheduler error on GTAB ( http://forum.xda-developers.com/showthread.php?t=895825 )
2.8 :
Allow the application to work even if no governor was found.
2.9 :
Fix a bug in governor selection
3.0 :
Fix "Save as boot" permission on some devices
4.0 :
Complete code and ui rewrite
Better profile management
Added SQL database for profiles management
No "init.d" support needed for "set as boot" option anymore
Removed profile change on screen on/off, android kernel handle that correctly, and this was wasting memory as a service (source: stackoverflow.com)
Removed old "FakeShmoo" kernel support (with obsolete devices name)
Removed "Cpu Stress Test" since it was not accurate for daily usage, better use specific applications
Allow screen orientation changes
Added support for stock tegra 2 kernel (without oc/uv)
Probably more and waiting for reports ...
BE SURE TO RESET YOUR DEVICE CPU SPEED CONFIGURATION (UNINSTALL PIMP MY CPU AND REBOOT) BEFORE UPGRADING TO 4.0
TO GET CORRECT DEFAULT VALUES (ELSE DEFAULT VALUES WILL BE YOUR LAST OC VALUES).
4.1 :
Fix a bug when changing kernel if a profile is set at boot (restore default kernel value instead apply profile)
4.2 :
Added power management service, you must now enable profiles to be used for (in priority order) :
"Screen Off" : will override any other settings, this means that if you enable a "screen off" AND an "AC/USB powered" profile for example, the "screen off" profile will override the "AC/USB powered" profile when screen is off.
"AC/USB Powered" : will override (when the device is powered) any other setting except "screen off" (see previous lines...)
"Battery Level" : will be applied when the battery run lower than specified (overridden by "Screen Off" and "AC/USB Powered" settings)
"Default" : The default profile, will be used at BOOT and when no other of the previous rules apply (or no other rules are enabled) and it's your "main" profile. If no default profile is set, "Stock" profile will be loaded.
Now using a service (less than 3MB memory usage and very few cpu call's)
Sort profile list alphabetically
Fix a bug with Galaxy i9000 runnin FuguMod kernel
Fix default profile creation/restore when changing kernel (was only working if boot was enabled)
Again sorry but many changes were made so BE SURE TO RESET YOUR DEVICE CPU SPEED CONFIGURATION (UNINSTALL PIMP MY CPU AND REBOOT) BEFORE UPGRADING TO GET CORRECT DEFAULT VALUES (ELSE DEFAULT VALUES WILL BE YOUR LAST OC VALUES).
4.2.1 :
fix a problem on some device where PimpMyCpu profiles where not applied due to the presence of an old init.d script ("/system/etc/init.d/S_volt_scheduler")
4.3 :
No root needed anymore for profiles change, so no more "su" toast messages (root still needed for the application to work)
Prevent "crash boot loop", if PimpMyCpu service crash (device crash) in the first 15 secondes (from service start or application start), all profiles will be disabled at next reboot
Add a "Test" profile management, a profile set as "Test" will override all other profiles, but will be only enabled until next reboot (or if manually disabled). Used to test a profile stability
Interface redesigned to have more room for profiles list
Add admob ad on free version
4.4 :
Improve service code, profiles "should" now correctly be loaded and stay (hopefully)
Add tray icon and persistent notification to show current profile and to be sure PimpMyCpu service is running
Add per application profile : assign a profile that will be loaded when an application start, restore default values on exit !
Minor UI changes
4.4.1 :
Fix "Set at boot": CheckBox was not checked when application start when it should be
4.4.2 :
Finally fix an old bug: profile where not applied correctly on some device if profile minimum frequency was higher than current maximum frequency !
5.0 :
Add "SiyahKernel" OC/UV compatibility (used in AbyssNote for GNote, SiyahKernel for Galaxy S2 and more)
Allow disabling notifications in preferences
Improve service stability by setting "OOM" to -17
Minor UI changes
Download "PimpMyCpu" on the Market!
oh that's cool that this app gets some support, thanks!
why can't SGS go beyond 1.3ghz, while htc desire hd can go to 1.8ghz?
Very nice!!
Currently, there is no scheduler options available. And this app does not allow you to set to 1.3ghz on its own. Having said that, xan's Voltage Control can do that. At this moment it goes hand in hand with xan's app.
I use xan's app to set scheduler and Max CPU speed, and use your app to set the voltage. Sure beats using the slider.
Note: I use xan's app to check if the voltage is applied. Looks like it did. Thank you.
Sent from my GT-I9000
g00ndu said:
Very nice!!
Currently, there is no scheduler options available. And this app does not allow you to set to 1.3ghz on its own. Having said that, xan's Voltage Control can do that. At this moment it goes hand in hand with xan's app.
I use xan's app to set scheduler and Max CPU speed, and use your app to set the voltage. Sure beats using the slider.
Note: I use xan's app to check if the voltage is applied. Looks like it did. Thank you.
Sent from my GT-I9000
Click to expand...
Click to collapse
I did upload a new version which allow scheduler selection.
Also for your problem setting max freq to 1.3ghz, i do not encounter this problem, i think you maybe missed something. If you long click (hold) on the 1300mhz item, you'll see the menu with "Set as Max"/"Set as Min". Select "Set as Max" then either "Apply for now" or "Save as boot settings". This work here !
retskrad said:
why can't SGS go beyond 1.3ghz, while htc desire hd can go to 1.8ghz?
Click to expand...
Click to collapse
They use completely different processors... Why should they overclock similarly?
Maybe it needs 1.8ghz to run sense properly
New version :
Version 1.2 : Added governor selection (this version should restore stock settings on first launch, including removing boot settings, and rebuild its configuration so you can use the new options. If you have any problem, "Reset" manually to default settings, uninstall previous version then install this update).
Cpasjuste said:
I did upload a new version which allow scheduler selection.
Also for your problem setting max freq to 1.3ghz, i do not encounter this problem, i think you maybe missed something. If you long click (hold) on the 1300mhz item, you'll see the menu with "Set as Max"/"Set as Min". Select "Set as Max" then either "Apply for now" or "Save as boot settings". This work here !
Click to expand...
Click to collapse
My bad, didn't know about the long press. my apologies...
Sent from my GT-I9000
Does it work on Samsung Vibrant ? I got it installed but when I ran it, I got an error "Superuser is not Available" ???? (I got the latest superuser and the program was accepted by superuser)
nbhnohome said:
Does it work on Samsung Vibrant ? I got it installed but when I ran it, I got an error "Superuser is not Available" ???? (I got the latest superuser and the program was accepted by superuser)
Click to expand...
Click to collapse
If your kernel doesn't support Over/Underclocking I think you get the same message.
nbhnohome said:
Does it work on Samsung Vibrant ? I got it installed but when I ran it, I got an error "Superuser is not Available" ???? (I got the latest superuser and the program was accepted by superuser)
Click to expand...
Click to collapse
You should not get this message, is it possible for you to provide me a logcat output ?
If I may suggest a new feature - when you pop up the menu to select a new UV, could you have the current setting highlighted?
Loving it so far!
Cpasjuste said:
You should not get this message, is it possible for you to provide me a logcat output ?
Click to expand...
Click to collapse
Well, i did found the problem, i'll update a fixed version very soon.
Spirit02 said:
If I may suggest a new feature - when you pop up the menu to select a new UV, could you have the current setting highlighted?
Loving it so far!
Click to expand...
Click to collapse
I'll do that !
Hey mate, which scheduler do you recommend?
Sent from my GT-I9000 using Tapatalk
Lazy Rich said:
Hey mate, which scheduler do you recommend?
Sent from my GT-I9000 using Tapatalk
Click to expand...
Click to collapse
I have not idea at all
Cpasjuste said:
I have not idea at all
Click to expand...
Click to collapse
That's okay. Your app is much easier to tweak than xan's voltage control sliders. Thanks again for this.
How low have people been able to go with still having a stable system on uv on cm7-sgs?
New version, please give some feedback, thanks a lot
1.3 :
Fixed "superuser not available" error while it is
UnderVolting dialog now has the current setting selected by default
Complete code rewrite, need some testing
Preliminary Optimus 2X support (compatible kernel to come soon)
Be sure to reset previous applied settings and uninstall older version before installing this one !
Cpasjuste said:
Well, i did found the problem, i'll update a fixed version very soon.
Click to expand...
Click to collapse
Thank you. You're great
Hello,
i was checking for an app or a trick to resolve a problem regarding the default email zoom. Opening emails, system automatically increase size of text/imagine.
There is a way to reduce font size?
I found a little unstable trick on system called "font size" in a configuration file, but every time that i change the default value, 3 actually to a lower 1, opening an email, the value it's again set to 3.
help !
Is there a way to clock multiple cores on a stock rooted kitkat ROM? Apps in the play store work but only change the primary core.
You can manually overclock cores
But apps like tegrak and antutu will help alot
Its clear that you want to play gamd which youbare not able to do it writeknow.
But if you are rooted. Then in syst.folder there is a file named build.prop
Open it and edit the line saying
Dalvic.vm.heapsize = xxx
Dalvic.vm.heapgrowthlimit = xxx
Increase theaw values and you will find a good boost in applications.
But REMEMBER THAT THE VALUES ARE LIKE DESKTOP RAM GROWS IN MULTIPLE OF 2 OK SO 68 , 96 , 128,256 only this type of valies can be used for good boost.
If you like it hit thanks dude
Version 3.0 install instructions below
Aded profiles to put phone in more deep sleep (now my phone consume 1.3% battery per hour when screen off and wifi services like messenger enabled), minimize usage of cpu/gpu/ddr by launcher (it might lag with stock launcher, works great with Nova launcher, reduce usage of processor by half.)
Version 2.0 uploaded install instructions below
phone now should better deep sleep
some values revert to original
adjusted speed when launching app, when scrolling lists, on app rotation, when fingerprint or display is touched, on battery states, when you gaming, on launcher.
WHAT IS ALL ABOUT?
Hi, im highly interested to bring all Power from mate7
I discovered that one system app can manages whole mt7 speed values on certain states ex. On app start, on certain app, on screen off...
My long research give me result that some system xml files can generate (on phone boot) certain speed values for cpu gpu and ddr.
I dont know how to read values from this files because they are encrypted, propably with strong rsa/ecb/pkcs1/padding key.
I use magic to allow system read non encrypted xml configuration files on phone boot and i guess it works
What mod do?
It allow to use all phone speed to stard app, when app is started then reduce speed to save energy
It allow to lock cpu,gpu,ddr on full speed in chosen apps.
It adjust cpu frequency dynamically, when screen is touched, on cpu thermal state, on battery critical state, on fling start, on phone rotate...
You can edit xml configuration to add your apps
Install instructions
To lock cpu+gpu+ddr on max speed for any app you must:
Have root, be on MM (i dont know, but it may work on LP too)
1. Download com.huawei.powergenie.zip and etc.zip
2. Unzip com.huawei.powergenie.zip to root. data/data/com.huawei.powergenie (overwrite files, yes its safe :good
3.Unzip etc.zip to system/etc, it will overwrite protected xml that wont allow to change values, (you should backup your old files first)
4. Reboot phone
How do i know that its working?
Download cpu-z app from android market, i added it to my mod, now when you launch cpu-z app, cpu,ddr values should be locked to max
give me information if it works for you
Advanced instructions:
editing xml files:
<scenemode name=".*?(hw.performance|ppsspp|cpuid*?).*" id="10000"> //app name example: org.ppsspp.ppsspp, do not touch original ID, you
can add new unused id for new app, unused id's like: 10025,10026... <gpu_minprofile>360000000</gpu_minprofile> //minimal gpu for state/app// <gpu_maxprofile>600000000</gpu_maxprofile>//max gpu for state/app// <ddr_minprofile>667000000</ddr_minprofile>// the same for ddr memory// <ddr_maxprofile>800000000</ddr_maxprofile>
<cpu_minprofile>806400</cpu_minprofile> //minimal frequency for first four cores. scaling from 403,200 to 1305,600 mhz <cpu_maxprofile>1305600</cpu_maxprofile>
<cpu_a15_minprofile>1209600</cpu_a15_minprofile> //minimal frequency for cores 5-8, available frequencies from 806,400 to 1804,800mhz// <cpu_a15_maxprofile>1804800</cpu_a15_maxprofile>
<msg_policy_threshold>15</msg_policy_threshold> //policies how often app give notification???// <threshold_up>300</threshold_up> //HMP Threshold ratio control (times to load task from lower core to higher)// <threshold_down>150</threshold_down>
<cpu_number_max>3</cpu_number_max> //propably option to switch number of active cores. Reducing number of active cores can improve battery life, on certain states it also can lag your phone. Values from 1-4// <cpu_number_min>2</cpu_number_min> //Minimum of active cores on app/state. Values from 0-4 0= all four cores inactive// </scenemode>
AVALIABLE_VALUE
cpu_maxprofile 403200 604800 806400 1017600 1209600 1305600
cpu_minprofile 403200 604800 806400 1017600 1209600 1305600
cpu_a15_maxprofile 806400 1017600 1209600 1382400 1497600 1708800 1804800
cpu_a15_minprofile 806400 1017600 1209600 1382400 1497600 1708800 1804800
gpu_maxprofile 288000000 360000000 480000000 600000000
gpu_minprofile 288000000 360000000 480000000 600000000
ddr_maxprofile 120000000 240000000 360000000 400000000 667000000 800000000
ddr_minprofile 120000000 240000000 360000000 400000000 667000000 800000000
cpu_number_max 1,2,3,4
cpu_number_min 1,2,3,4
cpu_a15_number_max 0,1,2,3,4
cpu_a15_number_min 0,1,2,3,4
Sounds interesting, but before I'm going to try it I have a few questions:
gahu777 said:
What mod do?
It allow to use all phone speed to stard app, when app is started then reduce speed to save energy
Click to expand...
Click to collapse
Isn't this the regular way the phone starts apps, or does it boost cpu etc. to max speed when starting an app with your mod?
gahu777 said:
It allow to lock cpu,gpu,ddr on full speed in chosen apps.
Click to expand...
Click to collapse
Is rebooting required when you add a new app to chosen apps? Also where do I add chosen apps?
This is the regular huawei method to start app, but i modify it slightly to maximize performance on some cases. On app start, on rotate screen, on app.
You can edit scene mode on each profile
With this pattern. com.nameofyourapp.something
<scenemode name=".*?(hw.performance|ppsspp|rockstargames|dsemu|dolphinemu|cpuid|nameofyourapp*?).*" id="10000">
Tazmaniiac said:
Also where do I add chosen apps?
Click to expand...
Click to collapse
Added tutorial for changing values for your own
Thanks for the reply, I replaced the files and compared the values in CPU-Z and can confirm that it works, good job!
But I still don't unterstand one thing.. the profiles (Performance, super, and normal) which I replaced in /etc are the ones that you choose in power manager right? So if I add an app on the performance profile it will only work if the performance profile is active? If I want an app to use 100% cpu on all profiles, i have to add it on all profile xml files right?
Tazmaniiac said:
Thanks for the reply, I replaced the files and compared the values in CPU-Z and can confirm that it works, good job!
But I still don't unterstand one thing.. the profiles (Performance, super, and normal) which I replaced in /etc are the ones that you choose in power manager right? So if I add an app on the performance profile it will only work if the performance profile is active? If I want an app to use 100% cpu on all profiles, i have to add it on all profile xml files right?
Click to expand...
Click to collapse
Yes, exactly
How do I know what to call the app? For example CPU-Z is called cpuid.
Tazmaniiac said:
How do I know what to call the app? For example CPU-Z is called cpuid.
Click to expand...
Click to collapse
I have titanum backup app which shows me full package name for app
You can also search play store for "package name viewer"
com.cpuid.cpu_z is full package name for cpu-z
What exactly do I need from the package name, for example eine names start with com., others with org., then there's also names with like 5 words , for example
Code:
Mupen64Plus FZ Edition
org.mupen64plusae.v3.fzurita
What would the Name be in this case? I would google it myself but I have no idea what to search for..
Tazmaniiac said:
What exactly do I need from the package name, for example eine names start with com., others with org., then there's also names with like 5 words , for example
Code:
Mupen64Plus FZ Edition
org.mupen64plusae.v3.fzurita
What would the Name be in this case? I would google it myself but I have no idea what to search for..
Click to expand...
Click to collapse
In this case mupen64plusae or v3 or fzurita
Example
<scenemode name=".*?(hw.performance|ppsspp|cpuid|fzurita*?).*" id="10000">
gahu777 said:
In this case mupen64plusae or v3 or fzurita
Click to expand...
Click to collapse
Any of these or do I have to try them all out?
Could somebody share a modded file?
fmurillo said:
Could somebody share a modded file?
Click to expand...
Click to collapse
I would but mine is not worth sharing, I only played around a little bit to see the performance improvements (the performance boost is amzing for those who use emulators btw).
Now that Version 3.0 is out, how do I "update" it? Do I need to replace all files all by one or only specific ones? I don't really want to add all apps again to scenemode..
Please... Share it
Tested version 3 and I'm impressed by how fast switching between apps works, now I finally answer whatsapp messages while doing stuff because it's not that slow anymore.
I'm also able to play True Skate with max graphics now that I added it to scenemode! It used to lagg on some maps even with resolution and details at a lower level. Great work man!
Testing v3... looks promising... Cpu-z shows processors 0-3 @ 1305 and processors 4-7 @1804... Will check battery durabilty because I am not fully satisfied with B561 v3 kangvip ROM.
Thanks for you efforts and for sharing them to all mt7 users!!!
tl10 gold b571 doesn't work.. someone with the same problem?
paulopais said:
tl10 gold b571 doesn't work.. someone with the same problem?
Click to expand...
Click to collapse
yeah i tried it yesterday but no differences.
also on mt7-l09 B571
Do you copy all files from both zip archives? (To data/data/com.huawei.powergenie and to system/etc) you can also set files permission 755 or 777
gahu777 said:
Do you copy all files from both zip archives? (To data/data/com.huawei.powergenie and to system/etc) you can also set files permission 755 or 777
Click to expand...
Click to collapse
yes i extracted both zip archives to the paths and overwrote the files (but did backup before)
then restart phone and downloaded cpu-z
but no differences between before and after