How To Guide [TUTORIAL] How unlock Full Unlimited Power of Poco X3 Pro - Xiaomi Poco X3 Pro

Hi,
This is my first post here
Now you can Play Genshin Impact with Highest Graphical settings in 52 Fps AVG.
I tested many ways to get rig of thermal throttling of Poco X3 Pro , increase gaming performance , Battery life and find ways to optimize kernel.
All link and files will be at the bottom of post.
Of course you have to be ROOTED for most of the thing and install few thing. I recommend using a cooler like BlackShark Funcooler BR11 or B20 but isn't necessary.
You can use Miui but good is to install rom like Arrow OS or other.
Let start from beginning.....
1.Get to developer options and and select Graphics Drivers than find your Game and select "System graphics driver" with should give you 3-5% increase in fps and increase thermal headroom without need of root.
2.Install SmartPack-Kernel Manager and set settings below
2.5 Alternative is Install FDE.AI from Github. This app is Great in term of performance for gaming.
CPU
CPU Governor: Performance/Performance/Performance
CPU Hotplug
Minimum CPUs big: 1
Busy Down Threshold: 0
Busy Up Threshold: 100
Task Threshold: 1 (Default)
GPU
GPU Max/Min Frequency: 675/692mhz
GPU Governor: performance
GPU Power Level: for Gaming 5 or 0 ( CPU power 0 gives 15 % more performance in Cpu heave tasks)
I/O Scheduler ( Repeat this step in all boxes )
Sheduler: cfq
Read-Ahead: 8192kB
Rotation Storage: Enabled
I/O Stats: Disabled
Add Random: Enabled
RQ Affinity: 2
No-Merges: 2
NR Requests: 128
Entropy
Read: 1024
Write: 2048
PS. Use the "Gaming" or "No Set" or "PUGB" thermal profile if possible or disable Thermal Engine with Thermal Unlocker 855.
3. Install and use Konabess app to undervolt and overclock Adreno 640 Gpu to 692 Mhz
1. First of all, we click BACKUP OLD IMAGE and back up our stock boot image. The backup boot image you receive when you click will come to your phone's main memory. If you flash this boot.img image as an image from recovery when you have problems, it will return to its original state.
2.Then we click on THE GPU FREQ TABLE and select what your processor is from the list.
3. We click on the New section and click on the new frequency.
4. Here we click Frequency and change the first 3 values. So if the phone's stock max GPU speed frequency is 675 mhz, we make the first three digits 692 without touching the zeros and click SAVE GPU FREQ TABLE.
Now we're throwing a voltage level at this new frequency.
5. We click on THE GPU VOLT TABLE, click New and click on the new frequency.
6. In the same way that we enter the new frequency value(692)from the Frequency section, where we set the first 3 values. Then we click Voltage Level and select SVS_L2 from the list.
7. Finally, we click SAVE GPU VOLT TABLE and click REPACK AND FLASH NEW IMAGE on the top left.
Now in VOLTAGE Table undervolt all freq
257 MHz​345 MHz​427 MHz​499 MHz​585 MHz​692 MHz​MIN_SVSMIN_SVSLOW_SVSLOW_SVS_L1SVS_L1SVS_L2
Undervolting will decrease heat and battery consumption in all of use from YouTube to Gaming.
Now there is fun part with is Magisk Modules
Thermal Unlocker 855- ( Disable the Software Throttling and increase the charging speed. Works also on Snapdragon 860-865/870 devices! )
-ACC ( find in Magisk app in list of Modules )- Advanced Charging Controller ACC is an Android software mainly intended for extending battery service life.
Now let me show you gaming benchmarks of Genshin Impact with Highest Graphical settings
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
The First score is 46.4 Fps is stock setting only undervolting and OC to 692 Mhz
Third is GPU set to Performance and 692 Mhz lock and next with all CPU and GPU Perfomance and the last benchmark is with Thermal Unlocker 855.
The best way for gaming is set all CPU and GPU Governov to Perfomance and lock GPU to max Freq Max and Min 692MHz and use FDE.AI.
Link:
Release v0.14 · libxzr/KonaBess
Support sd780G
github.com
Release 12.4.1m · feravolt/FDE.AI-docs
Update kernel_block.md
github.com
SmartPack-Kernel Manager - Apps on Google Play
The ultimate tool to manage your kernel
play.google.com

astronomy2021 said:
Minimum CPUs big: 3
Click to expand...
Click to collapse
can only set to 1
and set 690mhz only on konabess
then get this

co2thunderboy said:
can only set to 1
View attachment 5346125
and set 690mhz only on konabess
then get this
View attachment 5346127
Click to expand...
Click to collapse
Yeh Thanks my bad Snapdragon 860 only has Minimum CPUs big: 1
Oh Thank I try 690 MHz maybe this 2Mhz are a little to much for lock chip.

astronomy2021 said:
Yeh Thanks my bad Snapdragon 860 only has Minimum CPUs big: 1
Oh Thank I try 690 MHz maybe this 2Mhz are a little to much for lock chip.
Click to expand...
Click to collapse
btw im just telling, not suggesting
bcz someone said 690mhz is stable, on this thread
Poco X3 Pro Kernel
Hi, Gpu overclock is my reason to root poco. I'm new to this I want to ask if KonaBess works with Poco X3 Pro ? I know that works with 855/855+ and anybody tested this ? Is there Kernel for Poco X3 Pro that increase Gpu Freq to 700-800 Mhz for...
forum.xda-developers.com
one question, after step 7 why there is only 6 freq ?
bcz default is 6, and we add 1 more on step 5
it should be 7 freq isn't it ?
and should we flash the image again after undervolting or not ?

Yes you Flash image \ like this SAVE GPU VOLT TABLE and click REPACK AND FLASH NEW IMAGE on the top left after every change in freq or voltage table.
No because you hold on 675 Mhz and delete it or change it to 690-692MHz.
I this case we don't need 675 Mhz if we have 690 Mhz than is is only 6 Freq like from stock.

astronomy2021 said:
Yes you Flash image \ like this SAVE GPU VOLT TABLE and click REPACK AND FLASH NEW IMAGE on the top left after every change in freq or voltage table.
No because you hold on 675 Mhz and delete it or change it to 690-692MHz.
I this case we don't need 675 Mhz if we have 690 Mhz than is is only 6 Freq like from stock.
Click to expand...
Click to collapse
ouwh ok then, bcz the instruction is to create new on step 5, i thought we dont have to delete the 675mhz

for how long youve been doing this? is this completely safe? thank youuu

Yes is Complete safe. You don't need to worry anything. Just if you don't have cooler and if you want to be safe don't install Thermal Unlocker 855.
Everything else you can be safe you phone will not burn or anything like that. Hole point is to decrease temperature with with undervolting we do by 5-6 C .

astronomy2021 said:
Yes is Complete safe. You don't need to worry anything. Just if you don't have cooler and if you want to be safe don't install Thermal Unlocker 855.
Everything else you can be safe you phone will not burn or anything like that. Hole point is to decrease temperature with with undervolting we do by 5-6 C .
Click to expand...
Click to collapse
i will definitely buy a cooler hahah, i want to play genshin and appreciate its beauty

You can play it with 30fps and even in 900p or 1080p with 30fps avg with you can upscale it with GLTools app.
If you want 60fps buy cooler haha even I have plans to buy it
Ps. I change it with GPU Power Level to 0 with give you exactly 15 % boost in OpenGL

i tried undervolting, after rebooting my phone got stuck at logo i dont know why,
I fixed my phone just flashed stock boot.img

You do it correctly ? Try one at the time 692 svs_l2 , maybe problem is with lower freq with don't have enough power.
Undervolt 692 and 585 should work on any poco X3 Pro identical

astronomy2021 said:
You do it correctly ? Try one at the time 692 svs_l2 , maybe problem is with lower freq with don't have enough power.
Undervolt 692 and 585 should work on any poco X3 Pro identical
Click to expand...
Click to collapse
should i undervolt 692 and 585 only?
because i tried to undervolt all freq and it caused boot stuck

Try identify with is too low low to boot, try one at the time.I think is lower freq like 427 Mhz with cause me trouble because have to low power to boot.
Yes try this two 692MHz,585 MHz this are safe because this freq are only use in 3d graphics render and 257 MHz to MIN_SVS. If every think is ok in the next boot try 345 MHz to MIN_SVS and next try next freq.
You will gain +2hours of battery time on normal use

Can someone teach me how to do it or have a video clip, I can't do it.

Is it normal the SELinux to be disabled after all procedures are done?

Just a heads up. Installing Thermal Unlocker 855 trips Fortnite security and it will kick you from the game when you try to play.

Thank you for this guide !
Will apply it the next days!

I've completely changed all my GPU frequencies, and increase the amount of frequency step to 9. I've started at 272mhz to 688mhz. I've tried 691 and 692 but i rather the number 688 lol.
All frequencies in MHz are, 272,352,400,448,496,544,592,640,688..
(Don't try doing this of you don't understand how to.)
A long with that I've also created my own thermal-normal.conf for MIUI, and so far it has been doing its job. A lot of kernels I've notice ignore the many of the thermal file throttle parameters, I don't know why it's like that. So I'm using Kangaroo 1.1 kernel because it reads from the thermal file properly and so far the best kernel I've noticed for MIUI.
This is the file, also I'm not responsible for anything that might or might not happen to your devices. Remember although we may use the same device and the same SOC, every individual chip has its own flaws in hardware limits across devices. Simply, what may work for me might not work for you. Use at you own risk.

Kcane95 said:
I've completely changed all my GPU frequencies, and increase the amount of frequency step to 9. I've started at 272mhz to 688mhz. I've tried 691 and 692 but i rather the number 688 lol.
All frequencies in MHz are, 272,352,400,448,496,544,592,640,688..
(Don't try doing this of you don't understand how to.)
A long with that I've also created my own thermal-normal.conf for MIUI, and so far it has been doing its job. A lot of kernels I've notice ignore the many of the thermal file throttle parameters, I don't know why it's like that. So I'm using Kangaroo 1.1 kernel because it reads from the thermal file properly and so far the best kernel I've noticed for MIUI.
This is the file, also I'm not responsible for anything that might or might not happen to your devices. Remember although we may use the same device and the same SOC, every individual chip has its own flaws in hardware limits across devices. Simply, what may work for me might not work for you. Use at you own risk.
Click to expand...
Click to collapse
Is there any way to include this file inside kernel's zip and flash it or the only way is to root phone and then insert file?

Related

[TUT][GUIDE][I9505] Kernel features/parameters explained! [09/21/2013]

This is a simple STARTER REF/GUIDE to kernel features/parameters and everything you need to know about custom kernel goodies. Now that there are a few custom kernels out there for our device, you may want to know about these.
I’d be glad if you could help me complete this guide.
First of all I’d like to thank all kernel guys who put countless hours into this to bring us these kernels/kernel hacks.
Index:
Post 1:
A.1: What you want to know about the CPU/GPU of your device
A.2: MUST KNOW FACTS
B.1: Main Kernel Parameters
B.2: CPU/Governor Adjustments
Post 2:
B.3: Extra Features/Parameters
More Coming Soon!!!
Post 3:
Coming Soon!!!
A.1. What you may want to know about the CPU/GPU of your device:
Galaxy S4 4G/LTE (i9505) features a Qualcomm SnapDragon (600) 1.9GHz Quad Core krait (300) CPU and an Adreno 320 GPU.
A.2. MUST KNOW FACTS:
AOSP/GE/TW versions. Which one to flash on ROM X?
Firstly you have to see that what is your ROM's base. You can find this the thread of ROM.
- TW (As for TouchWiz): These ROMs are based on samsung's official firmwares. Mostly these ROMs are modified version of Samsung firmwares. These are also called Stock ROMs. You can find out a ROM is Touchwiz by looking at its base version. In ROM thread, you may see 'based on samsung's latest firmware "XXBMGA"'. Sammy's firmwares are like that. They consist of a region/carrier code + base version. (XX + BMGA). TW framework is essential for the Sammy's apps to work (like splanner). Also most of the TW ROMs are under Android Development forums.
For these ROMs you should Flash TW version of the kernels (obviously!).
- GE (As for GoogleEdition): These ROMs are based on Samsung's official Google Edition firmwares. GE ROMs contain TW materials, so they somehow are considered as TW ROMs (well, not entirely). Everything which is said in TW section is applied here, too.
So if there wasn't a GE edition kernel, the most likely version that is for GE is TW 4.3 version of the kernel. (Talking about Ktoonsez's kernel). It appears like GE Kernels also works on TW ROMs, too. (Very similar sources).
- AOSP (As for Android OpenSource Project): These ROMs are based on opensource projects like CM, AOKP, PA and... Basically these ROMs does not include TW materials. And so the TW apps does not work in these ROMs (Like Sammy's fine camera). Also most of the AOSP ROMs are under Original Android Development forums.
Flash AOSP version of the kernels for these ROMs.
- Other Bases: There are other bases like MIUI out there which are usually closed source on kernel side. So nothing much you can do here about them.
Click to expand...
Click to collapse
The modifications and changing values of kernel parameters will stick until the next reboot. They will be set to default when you reboot your device. So if you want them to stick, you have to do one of the following:
1. Init.d Scripts: Here is a complete guide, how to make one. (The guide is for another device, but the basics are the same!).
2. Set on Boot: The programs like Trickster Mod, have an option named 'Set on Boot'. If you want the settings you have in Trickster to stick, you have to check that option.
Click to expand...
Click to collapse
And a quote from the elite developer that everyone know:
However, if you put any trust in Quadrant scores you could use them to prove that dancing naked for 5 minutes in your garden affects device performance. - Chainfire
Click to expand...
Click to collapse
B.1. Main Kernel Parameters:
Some info:
- The different frequencies of the CPU are usually called CPU states (In very general way of talking!). CPU jumps from one state to another. The different states of CPU frequencies are seprated using a certain value called "step". So to put it simple the frequencies can be certain numbers.
- Min/Max frequency refers to the frequency that CPU is not able to go below/above.
Click to expand...
Click to collapse
OC/UC (As for OverClock/UnderClock):
As you may know, CPU or any other processing unit features a clock frequency. Over/Under Clock simply means raising/decreasing the clock frequency of CPU.
Reason: Why would one need to overclock? Because one needs more processing power. For example if you want to experience smoother gameplay when playing high-graphic games.
Why would we need underclock? Higher processing power demands more battery. So underclocking helps us, reserve more battery. Searching internet and texting don’t need much of processing power. So we can limit the processing power and save battery during low use of our device.
•Note1: OC/UC is not limited to CPU. GPU is also capable of OC/UC.
•Note2: Gamers may not use GPU UC. Limiting GPU processing power impacts significantly on your gaming experience.
•Note3: These apply to both min and max frequency of the CPU. What we said is mainly about the max frequency. Min frequency defines where the CPU frequency can't go below. So by lowering it (not too much) when in low use CPU will stay in lower states, preserving more power. The exact opposite goes for increasing it. The good thing about increasing it is improving performance and snappiness of the device!
UV (As for Undervolt):
Every frequency of a processing unit, demands a certain amount of power to be supplied. Undervolting to put it simple means decreasing the voltage of a certain frequency (or all of them).
Reason: The more voltage CPU/GPU gets, more heat will be generated. So mainly we UV to decrease the generated heat of CPU/GPU.
•Note1: One Frequency needs a certain minimum amount of voltage to perform correctly and the system be stable. Undervolting more than a certain amount of voltage will cause system instability.
•Note2: UV improves battery life by using less power. See this.
•Note3: In most of the kernels you can perform a -50mv UV across the board (means in all frequencies).
CPU Governors:
Frequency scaling is the means by which the Linux kernel dynamically adjusts the CPU frequency based on usage of the device. Governors refer to schemes which dictate to the kernel how it should do these adjustments. (From rootzwiki)
To put it simple, Governors are the way that CPU frequency is adjusted according to the demand of operating system.
Selecting a proper governor for your CPU is crucial to the performance and battery preserving of your device. For example if you are low using your device you may use a more battery friendly governor and if you want to play games you may use a (more power consuming) performance governor.
I/O Schedulers (As for Input/Output):
Input/output (I/O) scheduling is the method that operating systems use to decide which order block I/O operations will be submitted to storage volumes. I/O Scheduling is sometimes called 'disk scheduling'. (From Wikipedia)
To put it simple, Schedulers are the way reading and writing to the SD card is managed.
The same things that is said in the Governors part is applied here, too.
Governors and schedulers explained:
http://forum.xda-developers.com/showthread.php?t=1687578
http://forum.xda-developers.com/showthread.php?t=1369817
http://tinzdroid.blogspot.com/2012/07/android-kernel-governors-modules-io.html
http://forum.xda-developers.com/showpost.php?p=21638852&postcount=56
Click to expand...
Click to collapse
ReadAhead buffer size:
In terms of reading data from SD card, there is a cache which is used as a buffer. The size of that cache is readAhead buffer size. The size has a direct impact on your reading speed of your SD. So giving it a right amount is crucial.
Profiles:
Some kernels let you specify the parameters stated above in different profiles which are based on different usages of the device. In other words, you can have different parameters in some specific device states.
Different profiles can be Screen Off, Call, Music, Charging, etc...
One of the most useful profiles is Screen off.
When screen is off, you don't expect your device to be smooth (!!!) and snappy! Because mainly nothing important is happening when screen is off. So as a profile you can specify different settings for this state.
For example: Screen Off Max CPU can be really a very low number. Max Frequency is 1.89GHz by default, you can go down to 486MHz when the screen is off.
File System “X” R/W (As for Read/Write):
Android by default doesn’t support all the File Systems (What are file systems?! See here). So some kernels may add certain file system R/W. exFAT and NTFS are such file systems.
B.2. CPU/Governor adjustments:
MP-Decision:
Mpdecision decides when the second core shall be active and sets the idle and screen off freq while the governor decides when the freq should be increased/lowered.
Click to expand...
Click to collapse
Hotplug:
Hotplugging as we know dynamically activates second CPU core ON on load conditions and turns second core OFF on low load conditions.
Click to expand...
Click to collapse
- auto hotplug: Make available the hotplugging for the non-hotplugging governors.
Gentle Fair Sleepers:
Sleeper Fairness is a concept which treats sleeping/waiting tasks as if they were in a run queue. This implies tasks which spend most of the time waiting for an user input and such will get a fair share of CPU when they need it. Disabling Gentle Fair Sleepers could improve UI responsiveness.
IntelliPlug:
In kernel replacement of MP-Decision.
Click to expand...
Click to collapse
Eco Mode:
I quote faux123 here:
Eco Mode is an optimized dual core solution for quad-core SOC (System on Chip) like the Qualcomm S4-pro. This should allow for Maximum battery life without sacrificing performance.
Click to expand...
Click to collapse
Eco Mode mainly turns off two cores of the CPU, and in a way turns your device to a more battery friendly dual core system. optimized settings for dual core operations.
Snake Charmer:
This feature tends to cap the minimum frequency of all cores to the value you set.
- Lock Frequencies: This options prevents other apps to change frequencies.
Adjustments:
Here I will explain some useful adjustments.
- touch_boost_CPU: Specify the frequency of the cores when you touch the screen. Low value results in lags and high value lowers battery life, makes your device experience smooth.
- touch_boost_X_core: Specify if the X core comes online when the screen is touched. More online cores result in smoothness, and lower battery life.
- boost_X_core_on_button: Specify if the X core comes online when the button is pressed.
- sync_extra_cores: Specify if extra cores should be synced with single first core when they come online.
Work in progress, will add more info soon.
thanks and credits to:
ktoonsez - for his great kernel and ktweaker. Here.
faux123 - for his great kernel and app. Here.
droidphile - for his great guide. Here.
PM me if I missed someone.
B.3 Extra Features/Parameters:
TCP Congestion Control:
The choices in this section, address how the operating system kernel manages flows of information in and out of the kernel, which is at some level the "switchboard operator" of your handset. More info here.
Better to leave this options as is. Cubic or Westwood as the default of your kernel.
Init.d Support:
There are some scripts that run every time your device boot up which are located in /etc/init.d Those are called init.d scripts. One of the most popular init.d scirpts that is available for Note 10.1 is this.
FastCharge:
This feature makes it possible for the phone to ask for more current from USB host. So your device would be charged faster connecting to a USB host (Or USB Battery) Be aware that enabling FastCharge would block the USB access to your Phone Storage.
Dynamic FSync:
fsync is a system call in Unix/Linux. "man fsync" says:
fsync() transfers ("flushes") all modified in-core data of (i.e., modified buffer cache pages for) the file referred to by the file descriptor fd to the disk device (or other permanent storage device) so that all changed information can be retrieved even after the system crashed or was rebooted. This includes writing through or flushing a disk cache if present. The call blocks until the device reports that the transfer has completed. It also flushes metadata information associated with the file (see stat(2)).
Click to expand...
Click to collapse
So it's something embedded in programs after a related set of write operations to ensure that all data has been written to the storage device. The bolded part is what makes it interesting for some to disable it - "The call blocks" means the calling program waits until it's finished, and this may create lag. The downside is that if the system crashes, the data on the storage devices may be inconsistent, and you may lose data. (From here).
Dynamic FSync, makes it possible for fsync operation to be asynchronous when the screen is on, and synchronous when the screen is off. And what does asynchronous mean? Means OS issues fsync call, but not necessarily immediately at commit time for each transaction. It delays the FSync call for a certain amount of time. In case of a crash, the transactions not yet sync'ed in the last delay time before the crash may be rolled back, but the state of the data is always consistent. (From here).
MultiCore PowerSaving:
This feature try to group up tasks in the least cores possible. To put it simple, it will focus in using least cores for your tasks to be done. This means less cores are active and so more battery life. Also this will decrease performance.
•Note: To enable use TricksterMod app. 0 for disable and 2 for the most aggressive.
Special Modules:
Special modules can be available in kernel files that can be mounted and used in system. For example CIFS:
In order to manage your cifs/nfs network shares on your Android device you need the proper and working modules. And so you can mount/unmount your network accessible file resources and access your data.
zRAM:
In order to explain zRAM more precisely first we need other terms defined clearly:
Swap can be compared with the swap file on Windows. If the memory (RAM) is almost complete, the data which is not used actively (ex. background applications) will be stored on hard drive so as to re-evacuate RAM free. If required, this data is then read back from there easily. This will preserve performance with no lose at multitasking (the main reason we use swap).
In zRAM unnecessary storage resources are compressed and then moved to a reserved area in the fixed RAM (zRAM). So in other words, zRAM is a kind of swap in memory. As the data is compressed not much memory needs to be preserved as zRAM. However, the CPU has to work more because compressed data has to be unpacked again when it is needed). The advantage clearly lies in the speed. Since the swap partition in RAM is much faster than this is a swap partition on a hard drive.
In itself a great thing. But Android does not have a swap partition, and therefore brings Android ZRAM under no performance gain as would be the case with a normal PC. (From here with some editing.)
Click to expand...
Click to collapse
What we need to know essentially lies here:
zRAM off = Low use data will be stored the way they are in the memory. This will cause no extra load on CPU, yet need more RAM.
zRAM on = Low use data will be stored compressed in the memory. This will cause extra load in CPU as to store or restore data, yet preserve more Free RAM.
The main use of zRAM is when you are using a heavy ROM that eats up all your RAM. This will allow multitasking to be more functional. On light ROMs, or for those who don't multitask much, this is not necessary.
Note: Also there are methods to use a part of internal memory as Swap space. This is not as fast as zRAM. But no RAM will be used at all and CPU load is less. Though I am not sure that this has been brought to our device yet. Will add more data soon on this part.
Work in progress, will add more info soon.
Reserved for OP
Very useful thread
Very informative.. Im learning mew things in xda everyday.. Thanks..
ps000000 said:
Very useful thread
Click to expand...
Click to collapse
dannyella said:
Very informative.. Im learning mew things in xda everyday.. Thanks..
Click to expand...
Click to collapse
Glad to be of help.
Very informative. Might want to consider adding zram definition?
lzk123 said:
Very informative. Might want to consider adding zram definition?
Click to expand...
Click to collapse
Of course, zRAM, throttle and some other stuff are in my list.
Awesome guide!
LuigiBull23 said:
Awesome guide!
Click to expand...
Click to collapse
Glad you approved
Also I'd be happy if you could help me complete it with your suggestions.
zRAM added to the guide. (see post 2).
lzk123 said:
Very informative. Might want to consider adding zram definition?
Click to expand...
Click to collapse
Great guide, very useful. Will point this thread to some people in the future. Thanks
xdeal said:
Great guide, very useful. Will point this thread to some people in the future. Thanks
Click to expand...
Click to collapse
Thanks. Glad to be of help.
Recently added to the GUIDE:
- Must know facts. (This really was making mass confusion for some people!).
Stay tuned, more to come!
Quick questions:
Are the governors included on the kernell? if not, where do I get them? I don't know mucho of this things but i'm assuming that each kernell should have thier own governor ot at least the parameters that each governor should follow.
My other question is if the governors change from kernel to kernel or they are standard? The ''ondemand'' governor on a stock kernell it's the same/ behave the same ina cutom kernell? I don't see the point of a custom kernell if the govenor is going to behave the same regardless of the kernell so the kernell should provide the governor with the parameters or the governor itself.
Anyone knows this?
dclarkg said:
Quick questions:
Are the governors included on the kernell? if not, where do I get them? I don't know mucho of this things but i'm assuming that each kernell should have thier own governor ot at least the parameters that each governor should follow.
My other question is if the governors change from kernel to kernel or they are standard? The ''ondemand'' governor on a stock kernell it's the same/ behave the same ina cutom kernell? I don't see the point of a custom kernell if the govenor is going to behave the same regardless of the kernell so the kernell should provide the governor with the parameters or the governor itself.
Anyone knows this?
Click to expand...
Click to collapse
Yes governors are in the kernel, you don't get them any where. You can set governor with the apps that usually come with the kernels.
Custom kernels usually have more governors that stock kernel, letting you choose the one that suits you the best. Usually the governor that is tweakable or have nice settings is there to choose (like Ktoonzactiveq in Ktoonsez's kernel).
Also sometimes the same governors from stock kernel are tweaked to work better in custom kernel.
The main thing is that the well known governors are mostly standard and same in different kernels. But some are tweaked and some are specifically tweaked for the custom kernel (ex. Ktoonzactiveq or Abyssplug).
Sent from my GT-I9505 using Tapatalk
csec said:
Yes governors are in the kernel, you don't get them any where. You can set governor with the apps that usually come with the kernels.
Custom kernels usually have more governors that stock kernel, letting you choose the one that suits you the best. Usually the governor that is tweakable or have nice settings is there to choose (like Ktoonzactiveq in Ktoonsez's kernel).
Also sometimes the same governors from stock kernel are tweaked to work better in custom kernel.
The main thing is that the well known governors are mostly standard and same in different kernels. But some are tweaked and some are specifically tweaked for the custom kernel (ex. Ktoonzactiveq or Abyssplug).
Sent from my GT-I9505 using Tapatalk
Click to expand...
Click to collapse
Ktoonzactiveq?? Hmm.. Never heard of it but sounds much better than Ktoonservativeq lol.
Yes I know what you meant but you almost had me there a sec for a completely different governor that the boss has not shared with me.
csec said:
Yes governors are in the kernel, you don't get them any where. You can set governor with the apps that usually come with the kernels.
Custom kernels usually have more governors that stock kernel, letting you choose the one that suits you the best. Usually the governor that is tweakable or have nice settings is there to choose (like Ktoonzactiveq in Ktoonsez's kernel).
Also sometimes the same governors from stock kernel are tweaked to work better in custom kernel.
The main thing is that the well known governors are mostly standard and same in different kernels. But some are tweaked and some are specifically tweaked for the custom kernel (ex. Ktoonzactiveq or Abyssplug).
Sent from my GT-I9505 using Tapatalk
Click to expand...
Click to collapse
That's what I thought! I appreciate the help!
One more question: what about the Schedulers? Do they come with the kernel as well? can thos be modified? For waht I've been reading in the forum the Schedulers are more a data allocation sort of thing, those can be modifed depending on the kernel values? do they have anything to do with governors or can they be set regardless of the kernel/governors parameters?
I don't know mucho of this things but since I got the S4 I just felt in love with android and I'm trying to learn a bit. =]
dclarkg said:
That's what I thought! I appreciate the help!
One more question: what about the Schedulers? Do they come with the kernel as well? can thos be modified? For waht I've been reading in the forum the Schedulers are more a data allocation sort of thing, those can be modifed depending on the kernel values? do they have anything to do with governors or can they be set regardless of the kernel/governors parameters?
I don't know mucho of this things but since I got the S4 I just felt in love with android and I'm trying to learn a bit. =]
Click to expand...
Click to collapse
The same thing that I said about the governors applies to schedulers, too. They are in kernel, can be modified, tweaked, and are standard ones are the same in different kernels.
LuigiBull23 said:
Ktoonzactiveq?? Hmm.. Never heard of it but sounds much better than Ktoonservativeq lol.
Yes I know what you meant but you almost had me there a sec for a completely different governor that the boss has not shared with me.
Click to expand...
Click to collapse
Hahahaha, sorry. I mistyped this the first day, and SwiftKey got the best of me!
But thinking logicly, it's based on conservative, and so I think that's why there's the "servative" part! That's it, burnt into my mind. :good:

[How To]Modify HTC One's Thermal Files For Your Own Need

Sorry for poor English
It is well-known that HTC encrypted their thermal config file, thermald.conf, to prevent users from modifying. Since 4.2.2, it throttles both gpu and cpu when battery reached 40C. It is not a good idea, since it cannot satisfy both those who want coolness and those who want extreme performance. As a result, users and devs have to use a custom thermal solution.
It is a good solution to have a 3rd party thermal management, but I believe there are people who want to use stock kernels or to use powersaver function. So I am here to start a thread about how to write a thermal config file for our own needs.
Requirements
1. a computer with adb and related drivers properly installed
2. your phones rooted
3. wp_mod.ko installed properly or using custom kernel
Step 1:
Find more information about temperature sensors
1. enable usb debug
2. connect your phone to the computer
3.1. input the following
Code:
adb pull /proc/last_kmsg
you can find adb.exe in sdk:http://developer.android.com/sdk/index.html
4. open the file, and search "sensor"
3.2. input the following
Code:
adb shell
cat /sys/devices/virtual/thermald/thermald_zone*/temp
* is the number of sensor you wanna checkout. it ranges from 0 to 11
the number displayed is the current temperature on this sensor
The following is the info I analysed, some of which may be incorrect
Code:
thermal_zone0: enabled, related to cpu
thermal_zone1: enabled, related to cpu
thermal_zone2: disabled, probably related to motherboard
thermal_zone3: disabled, related to cpu
thermal_zone4: disabled, probably related to motherboard
thermal_zone5: disabled, probably related to motherboard
thermal_zone6: disabled, probably related to motherboard
thermal_zone7: enabled, related to cpu
thermal_zone8: enabled, related to cpu
thermal_zone9: enabled, related to cpu
thermal_zone10: disabled, related to cpu
thermal_zone11:disabled, unknown
Step 2
create a txt file on your computer, rename it "thermald.conf"
Step 3
open the "thermald.conf" file you just created
Step 4
Write the first line:
Code:
sampling 5000
the number indicates the time interval of the system to scan the temperature, but I doubt whether it has any function now. Also I suggest to leave it unchanged.
Step 5
Define the sensor you want to use and configure its thresholds
Code:
[tsens_tz_sensor2]
sampling 1500
thresholds 54 57 64 70 75
thresholds_clr 51 54 57 64 70
actions gpu+cpu gpu+cpu cpu cpu cpu
action_info 400000000+1728000 320000000+1134000 1026000 918000 702000
Code:
[tsens_tz_sensor2]
the number after the word "sensor" means the sensor you want to use and config
Code:
sampling 1500
time interval of scanning, strongly recommended to leave it unchanged
Code:
thresholds 54 57 64 70 75
As it says, these are the thresholds that trigure actions
For example, the number 57 means that if the temperature of this sensor is over 57C, gpu will be throttled to 320mhz and cpu will be throttled to 1134mhz
Code:
thresholds_clr 51 54 57 64 70
These are the thresholds that make system to do the former action
For example, the number 54 means that if the temperature of this sensor is under 54C, gpu will be set to 400mhz and cpu will be set to 1728mhz
NOTE: it is strongly recommended to match the (n+1)th thresholds_clr to the nth thresholds, except threshold that trigures shutdown action
Code:
actions
These are the actions you want to take, like throttling cpu, gpu and even brightness.
If you want to take multiple actions, just use "+" to connect
For example, if you want to throttle both cpu and gpu
just type
actions cpu+gpu
If you does not want to take any action, just type: none
*actions:
Code:
cpu
gpu
lcd
battery
none
Code:
action_info
These define the values of actions defined earlier.
For example,
Code:
actions cpu+gpu
action_info 1134000+320000000
means to throttle cpu to 1134mhz and 320mhz
NOTE: The sequence of action info should EXACTLY MATCH the sequence of actions
For example, if you type
"cpu+gpu" in actions line
you can only type first, the cpu frequency you want to set, second, the gpu frequency you want to set
you CANNOT type it like this:
Code:
actions cpu+gpu
action_info 320000000+1134000
It can confuse the system when it decides to throttle
cpu frequency table:
Code:
384000 486000 594000 702000 810000 918000 1026000 1134000 1242000 1350000 1458000 1566000 1674000 1728000
gpu frequency table:
Code:
400000000 320000000 200000000
lcd
any value below 255. 255 means not to lower the brightness
battery
Code:
+1
+2
I don't know what these values mean, but it is for sure to be able to lower temperature
none
Code:
0
Step 5
save it and put it in your system
put the thermald.conf file in the folder where your adb.exe is placed
adb:
Code:
adb shell mount -o rw,remount /dev/block/mmcblk0p35 /system
adb push thermald.conf /system/etc/
adb shell chmod 644 /system/etc/thermald.conf
or use recovery to flash
I will post scripts in attachments
Sample
Code:
sampling 5000
[tsens_tz_sensor0]
sampling 1500
thresholds 34
thresholds_clr 32
actions none
action_info 0
[tsens_tz_sensor7]
sampling 1500
thresholds 34 36 45 48 57 66 75 95
thresholds_clr 32 34 36 45 48 57 66 90
actions cpu+gpu cpu+gpu cpu+gpu cpu+gpu cpu+gpu cpu+gpu cpu+gpu cpu+gpu+shutdown
action_info 1728000+320000000 1134000+320000000 1026000+200000000 918000+200000000 702000+200000000 486000+200000000 384000+200000000 384000+200000000+5000
[tsens_tz_sensor8]
sampling 1500
thresholds 34 95
thresholds_clr 32 90
actions none shutdown
action_info 0 5000
[tsens_tz_sensor9]
sampling 1500
thresholds 34 95
thresholds_clr 32 90
actions none shutdown
action_info 0 5000
[tsens_tz_sensor10]
sampling 1500
thresholds 34 95
thresholds_clr 32 90
actions none shutdown
action_info 0 5000
Update
10/12/2013 replaced thermald_boot to prevent pnpmgr from changing config files [email protected]
Downloads
I've modified some thermald files for those who do not want to modify it by their own.
Stock thermald config file from htc:
cpu throttles when reaching 57C. both cpu and gpu throttles when battery temp reaches 40C
View attachment stock_thermal.zip
Stock no gpu:
cpu throttles when reaching 57C, no gpu throttling
View attachment stock_no_gpu.zip
Cool Version:
cpu throttles at 46C, no gpu throttling
View attachment cool.zip
Extra Cool
cpu throttles at 40C, no gpu throttling
View attachment extra_cool.zip
Ultra Cool
cpu throttles at 36C, gpu is limited at 320mhz
View attachment ultra_cool.zip
Performance
cpu will not throttle until 76C, no gpu throttling
View attachment performance.zip
NOTE: without changes of voltages/drivers/kernels, less heat means less performance. cpu performance is noticeably influenced if cpu freq is lower than 1134mhz. if gpu is at 200mhz you will feel laggy in everything.
Hopefully you guys will enjoy this
This is excellent work! where have you been 6 months ago :laugh:
but now we can finally use stock kernel without the risk of disabling throttling completely
I didnt understand one thing, after we create the text file, shouldnt we encrypt it again?
hamdir said:
This is excellent work! where have you been 6 months ago :laugh:
but now we can finally use stock kernel without the risk of disabling throttling completely
I didnt understand one thing, after we create the text file, shouldnt we encrypt it again?
Click to expand...
Click to collapse
One is so hot that I didn't get this phone before May...I would have been very happy if I have had this phone 6 months ago
4.1.2's default thermald file worked fine, but 4.2.2's one annoyed. I was waiting for some devs to decrypt the config file but no one seems to care about that. Since One is a qualcomm device, custom thermald file should work if the right language is used. It works indeed. I am now using Bulletproof with cool version, very cool indeed, and with the full function of powersaver, since I do not need to disable the thermald daemon anymore
no need to re-encrypt. no one knows how and why htc encrypt those things. It works fine without encryption, just as one can flash a decrypted ruu zip file.
jerrylzy said:
One is so hot that I didn't get this phone before May...I would have been very happy if I have had this phone 6 months ago
4.1.2's default thermald file worked fine, but 4.2.2's one annoyed. I was waiting for some devs to decrypt the config file but no one seems to care about that. Since One is a qualcomm device, custom thermald file should work if the right language is used. It works indeed. I am now using Bulletproof with cool version, very cool indeed, and with the full function of powersaver, since I do not need to disable the thermald daemon anymore
no need to re-encrypt. no one knows how and why htc encrypt those things. It works fine without encryption, just as one can flash a decrypted ruu zip file.
Click to expand...
Click to collapse
Ah although i attempted to use the SGS4 themrald on 4.1.2 and it didnt really work, so i guess like you said the proper wording is important
excellent, did you try these on the 3.17 kernel ?
so we only wp_mod.ko in case we push from ADB right? flashing from recovery shouldnt need this
hamdir said:
Ah although i attempted to use the SGS4 themrald on 4.1.2 and it didnt really work, so i guess like you said the proper wording is important
excellent, did you try these on the 3.17 kernel ?
Click to expand...
Click to collapse
First, sensors may be different on the 9505. Second, 9505's thermald is different. It uses soft-link to thermald-8064ab.conf, and its values are obsolete, from which I think samsung does poorly on system optimization. since it uses soft links, one's thermald binary may not support that kind of configuration.
It works very well on all stock kernels. I used 3.17 kernel for a long time, for it does not give me purple/pink issue in low light(I have no problem in 4,2,2, it should be the drivers' fault)
Yes you don't need wp_mod.ko if you use recovery to flash thermald.conf.
jerrylzy said:
First, sensors may be different on the 9505. Second, 9505's thermald is different. It uses soft-link to thermald-8064ab.conf, and its values are obsolete, from which I think samsung does poorly on system optimization. since it uses soft links, one's thermald binary may not support that kind of configuration.
It works very well on all stock kernels. I used 3.17 kernel for a long time, for it does not give me purple/pink issue in low light(I have no problem in 4,2,2, it should be the drivers' fault)
Yes you don't need wp_mod.ko if you use recovery to flash thermald.conf.
Click to expand...
Click to collapse
hold on 3.17 solves the tint issue?
I will post details about your find in my information threads, thanks a lot, this is gold
there is only problem! now i have to rewrite my entire Gaming OP
hamdir said:
hold on 3.17 solves the tint issue?
I will post details about your find in my information threads, thanks a lot, this is gold
there is only problem! now i have to rewrite my entire Gaming OP
Click to expand...
Click to collapse
Sorry for the inconvenience
No, as I said, I have no problem under stock 4.2.2 & 3.09 & 3.17, I only have purple/red issue when I am using 3.17 custom kernel with camera hack. Some users reported that the issue is ameliorated but not fully solved in stock 3.17 system
@jerrylzy you think there is an easy hack for stock kernel to OC the GPU into 450mhz?
hamdir said:
@jerrylzy you think there is an easy hack for stock kernel to OC the GPU into 450mhz?
Click to expand...
Click to collapse
Really? Theoritically, we cannot oc anything without compiling a modified kernel source...
jerrylzy said:
Really? Theoritically, we cannot oc anything without compiling a modified kernel source...
Click to expand...
Click to collapse
well I was just asking if there is a way
anyway listen this might be wrong but I really feel you should fix your patch zip files, by duplicating the txt thermald.conf as thermald_boot.conf as well, I feel I'm getting better performance this way out of stock kernel
I used to have weird stalls in games, all fixed after I also replaced thermald_boot, still I'm not sure but there is no harm in doing this
@jerrylzy i don't think the thermald_boot is related to the stalls i've been feeling
I think the stock no gpu 57c arrives sooner than I accepted so when the threshold is hit and it throttles down a full 500mhz on the CPU we get noticeable drop in CPU hungry games like Asphalt 8 (although no where near as noticeable as the GPU throttle)
I think we should cook a thermald which gradually scales down the CPU, something between the stock no gpu and performance, but it scales down in steps instead of a sharp 500mhz drop
one more thing i noticed, while the threshold is 57 for stock no GPU, i feel its actually threshold_clr 54 which is actually being used but I can't confirm since the CPU temps drop down so fast between switching out of game to a CPU monitor app
for now the solution is your performance zip file, but i noticed you are probing a lot more Sensors in the performance patch unlike the other files, can you elaborate?
hamdir said:
@jerrylzy i don't think the thermald_boot is related to the stalls i've been feeling
I think the stock no gpu 57c arrives sooner than I accepted so when the threshold is hit and it throttles down a full 500mhz on the CPU we get noticeable drop in CPU hungry games like Asphalt 8 (although no where near as noticeable as the GPU throttle)
I think we should cook a thermald which gradually scales down the CPU, something between the stock no gpu and performance, but it scales down in steps instead of a sharp 500mhz drop
one more thing i noticed, while the threshold is 57 for stock no GPU, i feel its actually threshold_clr 54 which is actually being used but I can't confirm since the CPU temps drop down so fast between switching out of game to a CPU monitor app
for now the solution is your performance zip file, but i noticed you are probing a lot more Sensors in the performance patch unlike the other files, can you elaborate?
Click to expand...
Click to collapse
In the new "stock no gpu" patch I added a step of 1566mhz between 1728mhz and 1134mhz. Also the reason why I added a lot more sensors for performance path is that I added a lot more sensors to prevent the cpu from too hot, which is harmful to both the cpu and the battery. Actually, it should not be as hot as that. I personally used stability test to check the thermald patch. with quad core 1.7g running more than 5 minutes, the temperature of my cpu never went higher than 65C. I am on PVS 4 bin.
jerrylzy said:
In the new "stock no gpu" patch I added a step of 1566mhz between 1728mhz and 1134mhz. Also the reason why I added a lot more sensors for performance path is that I added a lot more sensors to prevent the cpu from too hot, which is harmful to both the cpu and the battery. Actually, it should not be as hot as that. I personally used stability test to check the thermald patch. with quad core 1.7g running more than 5 minutes, the temperature of my cpu never went higher than 65C. I am on PVS 4 bin.
Click to expand...
Click to collapse
ok great, I was sure this is why you added those sensors good work, so performance patch is pretty safe I assume? i also have the same bin
I checked the new stock_no_gpu good work mate :good:
but i think i will go with performance

[GUIDE] Advanced Interactive Governor Script - Battery Life

Remember to have the screen turned ON while you apply the script!!!
Hi guys!
Today i want to share with you a script i specifically tailored for our 4C, to decrease high battery drain just by tuning parameters of the interactive governor.
As many of you know, on the Nexus 5X forum there is a huge post about different profiles created to achieve the same purpose, and almost all of them works with our device (personally tested)
[GUIDE] Advanced Interactive Governor Tweaks; Buttery smooth and insane battery life!
I raccomed to read it!
One of them in particular was extremely good battery wise but i felt some lagginess here and there (talkin about HawkTail 1.2)
So i decided to make a script myself and share it with you, the idea behind it is to force the CPU to scale better with loads and making the Big cores in use more frequently by tuning some of the kernel parameters.
Plus we will have the GPU idling @ 180MhZ instead of 300MhZ (like in the Nexus 5x) and a switch to noop scheduler.
Performance wise and taking in example the latest stable ROM from Xiaomi.eu (8.0.5) we will have a decrease of about 5k point in Antutu (I'll attach two screenshots, the 71K was the result without tweaking, plus just by switching back to CFQ scheduler you'll get 2K points back but NOOP is more battery friendly)
So here you go, this is my script TAO.
Using it is pretty simple and you have a couple of options: [ROOT IS NEEDED]
Since it's a script, if your rom have INIT.D folder support, you can just move the file under /etc/Init.d and reboot the device. The script will make a log file under /sdcard/TAO.log that you can check if anything went wrong.
The second option, if your rom doesn't have Init.d folder support, just use Kernel Auditor and a text editor.
Open the downloaded file in a text editor, select all and copy the text.
Then open Kernel Auditor, and in the menu look for init.d, enable the "Emulate Init.d" and then click the "+" symbol. It will ask to add a name (let's set it to TAO for coherence), then OK. It will open a new window where we have to paste all the text previously copied, save it by pressing the icon on the top right. Now we can just reboot the device or click the newly created item and select execute.
Third option is to run it manually from terminal.
Plus, i'll add my Thermal-engine-8992.conf that you guys can use to change the thermal throttling values. Download it and replace it in /system/etc/ , set it with permission 644 and reboot.
This modded thermal will move up the limits, long story short, your device will continue to perform even if it gets hot.
Enjoy! & report back for feedback
Remember to have the screen turned ON while you apply the script!!!
P.S.
Files are zipped, extract them!!!
UPDATE
Minor update - use_sched_load set to 0 for both cores
Correction made for the log file
UPDATE 0.7
Since @solis_f is having some problem with the big cores, and this could be a common problem to many others too i've decided to add something in the script that will force the big core online so you should not have any more problem executing the script. Let me know
UPDATE 0.8 - Experimental
Updated Target_loads for both Little and Big cores.
Little core min freq. to 384 MhZ.
Input boost @ 787 MhZ instead of 600 MhZ.
hispeed_load disabled for both cores.
Updated values for UpMigrate.
Enabled core_ctl for big cluster:
With this update, you'll have your big cores Offline most of the time, but they will comes online when needed.
Yours perfd (/data/system/perfd/default_values) with this version have to look like this:
Code:
ihf;787200
iahd;38000
ighl;200
itl;39 460800:5 600000:62 672000:10 787200:81 864000:90 960000:99
gpu_default_pwrlvl;5
sst;33
smil;20
sminr;3
sitl;65
sum;66
sdm;54
cbmf;1525
cbhdr;90
cbhip;16
ihf0;787200
iahd0;38000
itl0;39 460800:5 600000:62 672000:10 787200:81 864000:90 960000:99
imst0;0
ighl0;200
imf0;0
itr0;30000
its0;-1
iiib0;1
intb0;0
ibd0;0
ihf4;1248000
iahd4;38000
itl4;53 768000:64 864000:72 960000:79 1248000:99
imst4;0
ighl4;200
imf4;20000
itr4;30000
its4;-1
iiib4;1
intb4;0
ibd4;0
P.P.S.
Over two hundred downloads, but not even half of you gives me feedback...
UPDATE 0.9
Sorry for the delay, many things to do IRL.
This version is what i'm using now, should be smoother then v0.8, hope you like it.
nice one, will try this
Did you try to run Antutu several times in a row, so we can see is the result of 66k almost constant. Since as we all know, results can degrade towards 44k because of overheating..
predragiPredrag said:
Did you try to run Antutu several times in a row, so we can see is the result of 66k almost constant. Since as we all know, results can degrade towards 44k because of overheating..
Click to expand...
Click to collapse
I did not, but degradation of score is dictated by the thermal config. That's why i modded that too, and pushed the standard limits...
Let me show you with an example:
Code:
[SS-SKIN-XO-THERM-PERF]
algo_type ss
sampling 250
sensor xo_therm_buf
device cluster1
set_point 43000
set_point_clr 37000
time_constant 0
device_max_limit 800000
This is taken from the original file, and it covers the big cluster... when it reach 43° celsius, the thermal throttling will limit the max frequency of the cluster to 800MhZ
Code:
[SS-SKIN-XO-THERM-PERF]
algo_type monitor
sampling 5000
sensor quiet_therm
thresholds 46000 48000 50000
thresholds_clr 44000 46000 48000
actions cluster1 cluster1 cluster1
action_info 1632000 1248000 960000
This is the same part but modified by me, i've added more step... as you can see thermal throttling for big cluster will work once the big cluster reach 46° and it will cut the max frequency to 1632MhZ, then at 48° 1248MhZ and at 50° at 960MhZ
The hot-plug, that put the cores offline, on the original file for the big cluster is marked at 42° for core 4 and 45° for core 5.
On my config file both cores will be hot-plugged once they reach 52°.
TL;DR if you use my thermal-engine conf file, you will get more consistent score on several runs.
Nice to hear that will try this when I have more time to play with my phone and report back.
Great work and thanks for sharing this
GoldGanja said:
Hi guys!
Today i want to share with you a script i specifically tailored for our 4C, to decrease high battery drain just by tuning parameters of the interactive governor.
As many of you know, on the Nexus 5X forum there is a huge post about different profiles created to achieve the same purpose, and almost all of them works with our device (personally tested)
[GUIDE] Advanced Interactive Governor Tweaks; Buttery smooth and insane battery life!
I raccomed to read it!
(...)
Enjoy! & report back for feedback
P.S.
Files are zipped, extract them!!!
Click to expand...
Click to collapse
Hi,
I can not apply root because of he problem between pokemon go and root, (I am playing pokemon go with my 8 years old son a father-son activity and he loves it)
I am using a dev miui rom and i did tune my thermal-engine and remove the input boost using the TWRP file manager to apply the files.
This rom does not have init.d folder could i call your script from init.qcom.post_boot.sh? if so, do you know how to?
best regards,
John
You should look for some sort of systemless root, and magisk to masquerade root and be able to play Po Go on a rooted phone. I don't think you can chain load the script within post_boot.sh and by the way to modify it you should have super user permissions. Anyway keep up the father and son activity, is way more important!
Sent from my Mi-4c using Tapatalk
GoldGanja said:
You should look for some sort of systemless root, and magisk to masquerade root and be able to play Po Go on a rooted phone. I don't think you can chain load the script within post_boot.sh and by the way to modify it you should have super user permissions. Anyway keep up the father and son activity, is way more important!
Sent from my Mi-4c using Tapatalk
Click to expand...
Click to collapse
thanx, my son does not talk about anything else...
About the chain load the TS rom does that with ts_power.sh file.
Code:
# ts power scripts permissions
chown -h system /system/etc/ts_power.sh
chown -h system /data/ts_power.sh
Code:
# Call ts_power.sh, if found
if [ -f /data/ts_power.sh ]; then
logi "Call /data/ts_power.sh set_profile $profile"
sh /data/ts_power.sh set_profile $profile
elif [ -f /system/etc/ts_power.sh ]; then
logi "Call /system/etc/ts_power.sh set_profile $profile"
sh /system/etc/ts_power.sh set_profile $profile
fi
I will try to see if it works using your script.
About systemless root, i don't want to be in the middle of the cat and mouse thing. Today google update and tomorrow there is another hide root.
I did replace the thermal engine using the twrp file manager. It works.
Nice share bro. Thermal engine + init.d script is good battery backup for mi4c.
Hello,
could you make patched files available and the place where they should be placed ?
I don't want to root my phone but I want to give your optimisation a try. It is possible with TWRP to replace the files in the file manager. More work but it can be done without root. Therefore however I will need the allready patched files....
A little more "complicated" even... might it not be possible using TWRP to flash these files ? I have no idea how that would work exactly but I can imagine it would be possible to create a flashable zip that replaces these files... It currently goes beyound my abbilities though unfortunatly but maybe someone can help with that.
Thanks for your share @GoldGanja , looks interesting.
But i think the thermal-engine.conf would cause more overheating as it is already (for me reduce overheating is the most important), but i like the way to reduce the clockspeed step by step. Maybe i will try it with lower values.
The modified governer looks great. I think this will help with heating too. But on this there aren´t laggings ?
Thank you! i hope this fix my battery drain and the heat, i'll report if i see changes
@nachtwacht
Even if i make a zip file to use with twrp, this will only be useful for the thermal-engine conf file...because the other one is a script i've created and so there is no other file to replace. As stated ROOT is needed, i'm sorry.
@Danny94
thermal-engine.conf per se will not increase or decrease over-heating, of course one could make a conf file to be more restrictive on the temps and brutally decrease the performance but i don't see the need of this because i don't have any over-heat problem within my device with the script i've made. A major cause of over-heating is the input-boost frequency that by default is set to 1248MhZ, while if you run my script it will be 600 MhZ. Farther i have no lags at all...give it a try and report back. More feedback I have about it, the better I can adjust some parameters.
@HYBRIDEMON
Thanks!
@GoldGanja
Yeah i will try tomorrow if i get some free time.
Wich Rom do you use ? I have at almost all roms overheating problems. After 10 min+ of 3d gaming i have ~55°c + (On my old phone Thl 5k i could play the same game hours, don´t get over 45 °c and no lagging or something - and yeah its not the best phone).
With your thermal config the device throttles later. So it will heat higher, until it shut down big core etc. As hotter it becomes as more difficult its to cooldown. Sure if you won´t reach 52°c would be perfect one. But maybe i will replace the values with lower, else it looks very good.
I can't find tao.log at sdcard.
Script is applied or not?
I copied to etc/init.d and set 755 permissions.
Edit:
Finally I applied manually and I have 2 errors with big cluster settings.
Enviado desde mi Mi-4c mediante Tapatalk
@dany94
I'm using last stable from xiaomi.eu (8.0.5). Anyway, if you get to know how the gears of the thermal engine works, do what is best for your usage. Feel free to change the numbers on my file if needed
siba01 said:
I can't find tao.log at sdcard.
Script is applied or not?
I copied to etc/init.d and set 755 permissions.
Edit:
Finally I applied manually and I have 2 errors with big cluster settings.
Enviado desde mi Mi-4c mediante Tapatalk
Click to expand...
Click to collapse
I think you are using a CM TS rom, right? well, for that you have to do two things.
First, set the battery mode to QUICK, because on BALANCE there is the hotplug of the BIG cores. Then re-run my script.
If that's not the case, maybe the device was just a bit hot, and the hotplug kicked in by the thermal-engine...let it cool down first or use my thermal-engine conf.
Second, rename my file to userinit.sh and place it under /data/local if you want the settings to be applied at each boot.
GoldGanja said:
Even if i make a zip file to use with twrp, this will only be useful for the thermal-engine conf file...because the other one is a script i've created and so there is no other file to replace. As stated ROOT is needed, i'm sorry.
Click to expand...
Click to collapse
Maybe I was not clear or, more likely I do not completely understand which is a fact for sure
Let me clear up the first part, then hopefully in the end I will also better understand
Your script chances several files if I understand correctly ? scaling_min_freq for example is the first one you change in the script ?
Could we not update all the files that you change using TWRP ?
My guess is, (that's just me trying to understand better.....) that I think that using TWRP it is possible to change these files without root, but in reality it is not because the phone is not rooted ? Maybe because only the complete system can be changed and not single files ? (without root)
I do know that in the end, for me it is possible to root my phone, apply the settings, and then unroot it again.... which hopefully have my phone working like it never was rooted... it's just a risk I would like to avoid if in any way possible, therefore I am investigating and trying to get it all clear for me, sorry for that
GoldGanja said:
@dany94
I'm using last stable from xiaomi.eu (8.0.5). Anyway, if you get to know how the gears of the thermal engine works, do what is best for your usage. Feel free to change the numbers on my file if needed
I think you are using a CM TS rom, right? well, for that you have to do two things.
First, set the battery mode to QUICK, because on BALANCE there is the hotplug of the BIG cores. Then re-run my script.
If that's not the case, maybe the device was just a bit hot, and the hotplug kicked in by the thermal-engine...let it cool down first or use my thermal-engine conf.
Second, rename my file to userinit.sh and place it under /data/local if you want the settings to be applied at each boot.
Click to expand...
Click to collapse
I'm using Resurrecction Remix.
Thanks for your answer.
Enviado desde mi Mi-4c mediante Tapatalk
I was pretty sure you will do such a good job for Mi4c! Well done!
Edit: btw big cluster values are not getting applied
solis_f said:
I was pretty sure you will do such a good job for Mi4c! Well done!
Edit: btw big cluster values are not getting applied
Click to expand...
Click to collapse
What ROM are you using?
Sent from my Mi-4c using Tapatalk

[KERNEL][GUIDE] Alcatel Ideal (4060A) Insecure Boot Image with Init.d Support

ALCATEL IDEAL 4060A
STOCK KERNEL WITH INIT.D. & INSECURE BOOT SUPPORT​
SPECIFICATIONS:
Model: Alcatel Ideal 4060A
Android Version: 5.1.1 Lollipop
Kernel Version: 3.10.49-g3d12fcb
GCC Version: 4.8
Build Date: Tuesday, July 26, 2016
Revisions Date: Saturday, August 5, 2017
Board Platform: Qualcomm Snapdragon 210 (MSM8909)
FEATURES:
CPU Governors: Interactive, OnDemand, Performance, Userspace, Powersave
Frequencies: 200MHz, 400MHz, 533MHz, 800MHz, 998MHz, 1094MHz
Minimum & Maximum Core Control
VDD Restriction & Temperature Throttle Control
GPU Frequencies: 200MHz, 307MHz, 409MHz
GPU Governors: bw_hwmon, bw_vbif, cpufreq, gpubw_mon, msm-adreno-tz,
 performance, powersave, simple_ondemand, spdm_bw_hyp, userspace
I/O Schedulers: cfq, deadline,row, noop
Adaptive Low Memory Killer: 5 Presets & Tunables
Z-RAM Support
Virtual Memory Tunables: Dirty Ratio, Dirty Background Ratio, Dirty Expire Centisecs, Dirty Writeback Centisecs, Overcommit Ratio, Swappiness, VFS Cache Pressure, Laptop Mode
SELinux Permissive/Enforcing Toggling
Entropy Read/Write Ahead Support
TCP Congestion Algorithms: cubic, reno
Hostname Editing
ADB Over WiFi Support
Android Logging Support
Init.d Script Support & Emulator
REQUIREMENTS:
In order to use init.d script support, and in order to be able to tune this kernel and use its features, you need to be running a ROM with root privileges. Also, while not absolutely required, it is recommended that you have TWRP custom recovery installed. This kernel can be installed by on-device flashing apps such as Rashr, Flashfire, etc. However, for this thread, I will be instructing on TWRP installation only. In order to utilize init.d support, you also need to install a recent version of BusyBox.
DISCLAIMER: You flash this kernel at your own risk. As always, rooting or flashing the partitions of your device comes with the inherent risk of rendering your device inoperable.
You hereby assume responsibility for your own device, and absolve me of any liability for any damage caused to your phone by flashing this kernel. Follow the simple instructions carefully and you should experience no adverse results.
NOTES: This is a stock kernel which has been modified to provide init.d and insecure boot support. The advantages of insecure boot support include having root access through adb shell -- it enables adbd to run as root. Init.d support gives you enormous flexibility in the ability to run scripts and mods to be run at boot -- everything from battery tweaks to performance mods. Aside from init.d, the Kernel Adiutor-Mod application, included in the download link below, allows you to tune several parameters of the kernel, change CPU/GPU governors, adjust I/O schedulers, set CPU/GPU frequency minimums & maximums, apply an adaptive low memory killer preset, etc. With some modding, you will notice a remarkable increase in responsiveness, stability and overall performance of the Android OS, as well as a tremendous increase in battery life. . Trial and error is key. Do some research on the best kernel mods and set your own preferences. You are the captain of your own ship...
THANKS & MENTIONS:
Thanks to @Grarak for developing the original Kernel Adiutor application. Thanks also to "Yoinx" for modifying the original application and thus creating Kernel Adiutor-Mod.
KERNEL SOURCE CODE: https://github.com/zombah/android_kernel_alcatel_msm8909
INSTRUCTIONS:
1. Assuming you have root, BusyBox & TWRP custom recovery installed on your device, boot into TWRP and flash the zip installer in the below download link;
2. Wipe the dalvik cache and reboot system;
3. Upon reboot, install the Kernel Adiutor-Mod application from the below download link.
Open the app, grant superuser access when prompted, and tap on the menu icon near the upper left of the screen;
4. Done.....use the options in the menu to tweak the kernel's settings, change CPU governors,
set CPU/GPU frequencies, toggle SELinux mode, etc., etc.
DOWNLOAD LINKS:
Kernel Installer: https://drive.google.com/file/d/0B1Sfod4HWfk2NjUzWGVldThtQ0U/view?usp=sharing
Kernel Adiutor-Mod APK: https://drive.google.com/file/d/0B1Sfod4HWfk2OC1ORURoN3hTeUE/view?usp=sharing
Been trying out KA mod for about a week, not using the cus kernal tho. Just happened to run into it after a search since when I tried Garak's official back awile it didn't seem to have any effect. Not sure but it may have been due to not (unrestricting) it in apps, or not enabling init.d emulation in it? In any case, using it to set SElinux permissive and trying to squeeze a little more battery life out. After not really knowing what I'm doing, I ended up staying with interactive and just making a few guesses from what I could find out in searches. I think battery life is a (little) better?
Interactive:
CPU minimum freq 400 MHz
tunables:
go_hispeed_load 95
target_loads 1 533000:85
800000:90
998400:90
1094400:80
If there are other/additional things to try, please let me know!
scohut said:
Been trying out KA mod for about a week, not using the cus kernal tho. Just happened to run into it after a search since when I tried Garak's official back awile it didn't seem to have any effect. Not sure but it may have been due to not (unrestricting) it in apps, or not enabling init.d emulation in it? In any case, using it to set SElinux permissive and trying to squeeze a little more battery life out. After not really knowing what I'm doing, I ended up staying with interactive and just making a few guesses from what I could find out in searches. I think battery life is a (little) better?
Interactive:
CPU minimum freq 400 MHz
tunables:
go_hispeed_load 95
target_loads 1 533000:85
800000:90
998400:90
1094400:80
If there are other/additional things to try, please let me know!
Click to expand...
Click to collapse
Set your Adaptive Low Memory Killer to Very Aggressive. This will restrict background apps from flooding your free RAM and save on battery life.
Are you not able to use init.d with this kernel?
MotoJunkie01 said:
Are you not able to use init.d with this kernel?
Click to expand...
Click to collapse
I have init.d emulated ticked on. Settings work, even on reboot. I'll try the memory settings.
scohut said:
I have init.d emulated ticked on. Settings work, even on reboot. I'll try the memory settings.
Click to expand...
Click to collapse
Good to hear
MotoJunkie01 said:
Set your Adaptive Low Memory Killer to Very Aggressive. This will restrict background apps from flooding your free RAM and save on battery life.
Click to expand...
Click to collapse
This DOES seem to be helping also..
scohut said:
This DOES seem to be helping also..
Click to expand...
Click to collapse
It does me too. With a free RAM widget running, I notice about 325Mb+ free RAM most times with 24 user apps installed.
With only a 1750 MAh battery we need all the help we can get
scohut said:
With only a 1750 MAh battery we need all the help we can get
Click to expand...
Click to collapse
Amen there

Snapdragon 820 Power Consumption In Watts

I found a hidden XML called power_profile.xml in the root directory. I found about about its existence after reading this page from Google that explained a requirement for device manufacturers to include information in the OS about the power consumption of every component in the phone. (Source: https://source.android.com/devices/tech/power/values).
After extracting a hidden APK in the root directory, I found this XML file detailing the power consumption of nearly every component in the LG V20, in addition to the power consumption of each CPU core at every possible frequency. (https://drive.google.com/file/d/0B64FbyJyGsUFNUdLbHZvZUJ2QWc/view?usp=sharing). Most of the file is indecipherable, but the important parts are written in English.
I used the data to create this spreadsheet to find the most power efficient frequency to run my rooted phone at. (https://docs.google.com/spreadsheets/d/1by5DiFxtnFS4nbUp7717mgM2TbFQT76lWDsbYGzrphQ/edit?usp=sharing). I set my CPU to 2.1GHz for the big cores and 1.5GHz for the small cores because the highest frequencies seem to use an excessive amount of power.
Comment if you have any questions or suggestions.
bobbyqba2011 said:
I found a hidden XML called power_profile.xml in the root directory. I found about about its existence after reading this page from Google that explained a requirement for device manufacturers to include information in the OS about the power consumption of every component in the phone. (Source: https://source.android.com/devices/tech/power/values).
After extracting a hidden APK in the root directory, I found this XML file detailing the power consumption of nearly every component in the LG V20, in addition to the power consumption of each CPU core at every possible frequency. (https://drive.google.com/file/d/0B64FbyJyGsUFNUdLbHZvZUJ2QWc/view?usp=sharing). Most of the file is indecipherable, but the important parts are written in English.
I used the data to create this spreadsheet to find the most power efficient frequency to run my rooted phone at. (https://docs.google.com/spreadsheet...717mgM2TbFQT76lWDsbYGzrphQ/edit?usp=sharing). I set my CPU to 2.1GHz for the big cores and 1.5GHz for the small cores because the highest frequencies seem to use an excessive amount of power.
Comment if you have any questions or suggestions.
Click to expand...
Click to collapse
which variant of the V20 do you have? how did you go about setting the big and small cores and does changing them require a reboot? do you notice any performance differences from your seeing and the default?
dimm0k said:
which variant of the V20 do you have? how did you go about setting the big and small cores and does changing them require a reboot? do you notice any performance differences from your seeing and the default?
Click to expand...
Click to collapse
I have an H918 from T-Mobile running Nougat 7.0 10d. You have to root your phone to change the cpu frequency. After that, it's really easy and there are no reboots required. I use an app called Kernel Adiutor, but there are others. I haven't tested this specific configuration yet, but there's usually a linear correlation between frequency and Geekbench scores. So the performance is worse at 2.1/1.5GHz, but it's not really noticeable.
There are more factors responsible for battery comsumption than just your cpu, screen is the biggest battery eater. Then services, gpu, etc
Adjust your cpu speeds from 2500 to 2100 wont give much battery boost tbh only by marginal results
Not worth the performance decline if you ask me
Try using different gouvernors / other i/o schedulers like ZEN

Categories

Resources