Related
Hey everyone, over at The Nexus 5X Forum we tweaked the thermal throttling behavior of the phone. Since The Moto X Pure uses the same SOC, we can also apply this (with a few changes) to this phone.
Update: Please uninstall the old version and reinstall as soon as the new version is online.
Update: Now with a Aroma zip isntaller, see post 2. thanks @tohtorin
I don't own this phone, so I need to rely on some volunteers to test things out.
Of course, you need root and this could potentially damage your phone, so don't crank up the thermals too high. I'm not responsible for any damages, tweak at your own discretion. Even though the phone (probably) has built in overheating protection, be careful.
Naturally, you can also use this to decrease the temps if you think it's too hot, downclock the CPU's, or disable the big cluster alltogether.
One more thing. This will work on the stock kernel. I don't know about other kernels, since they might implement their own thermal tweaks.
First, I'll show you how to actually see the CPU and GPU frequencies. You need the following apps: trepn profiler, stability test and Antutu 3D bench. Trepn profiler can show the frequencies in an overlay, switch to advanced mode and select what you want to see. Don't look at the CPU temperature, it looks crazy hot, but it's irrelevant. The real important temperatures cannot be shown in here.
Stability test is a small app that pushes the CPU so you can quickly see the throttling behavior. Antutu 3D bench is just that, a benchmark for 3D. If you run this a few times and the GPU does not drop it's frequency, than we can confirm that it doesn't throttle.
Let's start with the GPU. It seems that, on this device, the GPU is not throttled at all. It seems strange, since the Nexus 5X's GPU is throttled quite aggressively. If someone could confirm this, that would be nice.
The file that needs to edited is located under /system/etc and is called thermal-engine-clark.conf. You need a root explorer to edit the text and set permissions.
Let's move on to the big cluster (the fast cores): There are two relevant entries for them.
The hotplug temperature determines at what temperature the big cores are shut down.
Code:
[HOTPLUG-CPU5] and [HOTPLUG-CPU4]
thresholds [B][COLOR="Blue"]44[/COLOR][/B]000 and [COLOR="blue"][B]47[/B][/COLOR]000
thresholds_clr [COLOR="blue"][B]42[/B][/COLOR]000 and [B][COLOR="blue"]45[/COLOR][/B]000
The blue numbers represent the temperature at which the core is shut down. Thresholds means when it is shut off, thresholds_clr when it goes back online. Keep at least 2°C between them.
Next is the throttling behavior. Both cores' throttling is determined by this setting:
Code:
[MONITOR-QUIET-1]
thresholds [B][COLOR="blue"]44[/COLOR][/B]000 [COLOR="blue"][B]45[/B][/COLOR]000 [COLOR="blue"][B]46[/B][/COLOR]000
thresholds_clr [B][COLOR="blue"]42[/COLOR][/B]000 [COLOR="blue"][B]43[/B][/COLOR]000 [COLOR="blue"][B]45[/B][/COLOR]000
action_info [B][COLOR="SeaGreen"]1632[/COLOR][/B]000 [COLOR="seagreen"][B]1248[/B][/COLOR]000 [COLOR="seagreen"][B]960[/B][/COLOR]000
Again, the blue numbers show the temperature, and thresholds means when it clocks down, thresholds_clr when it increases the clock. Keep at least 1°C between them. The green numbers show the clock speed. That means @44°C the big cores' frequencies wil be decreased to 1.632 GHz (down from 1.824 GHz) and so forth.
Now to the little cores. Only one of them is shut off at a certain temperature:
Code:
[HOTPLUG-CPU2]
thresholds [B][COLOR="Blue"]48[/COLOR][/B]000
thresholds_clr [B][COLOR="Blue"]45[/COLOR][/B]000
The throttling behavior:
Code:
[MONITOR-QUIET-0]
thresholds [B][COLOR="Blue"]46[/COLOR][/B]000 [B][COLOR="blue"]48[/COLOR][/B]000
thresholds_clr [COLOR="blue"][B]44[/B][/COLOR]000 [B][COLOR="blue"]46[/COLOR][/B]000
action_info [COLOR="SeaGreen"][B]1248[/B][/COLOR]000 [COLOR="seagreen"][B]960[/B][/COLOR]000
Profiles and Installation
I created some profiles that you can place and overwrite in your system/etc folder (rename them to thermal-engine-clark.conf). Set permissions to rw- r-- r-- and reboot
Update: thanks @tohtorin for a flashable zip!
Update: Please uninstall the old version and reinstall as soon as the new version is online. Sorry for the inconvenience.
The new installer 1.2 and uninstaller 0.2 are online. I also attached the old 0.1 uninstaller in case someone still needs it. The magisk uninstaller didn't change.
Code:
INSTALLATION:
1. Download installer zip
2. Only IF using magisk, download magisk module for moto x as well
3. Reboot to custom recovery
4. Only IF using magisk (requires magisk v6 or higher) flash thermal tweaking magisk module
5. Flash installer zip
6. Select proper installation method:
- Systemless for SuperSU systemless install (requires SuperSU v2.76 or higher)
- Magisk for magisk install (requires magisk v6 or higher)
- System for classic system install (writes directly to system partition and might trigger dm-verity, breaks OTAs)
7. Select profile to be installed (uses stock by default)
8. Enjoy your snappier Moto X
UNINSTALLATION (Only with systemless or magisk):
1. Download uninstaller zip IF using magisk then download uninstaller for magisk
2. Reboot to recovery
3. Flash uninstaller zip
4. Reboot back to stock thermal settings
If using system mode just flash stock settings with installer to get back to stock
Light profile:
Increase all blue temperatures by 2. This should be almost risk free.
Medium:
4. This will make your phone noticably warmer.
Heavy:
6. Should be safe, but that's just an estimate.
Insane:
8. That is hot. Would not recommend it.
I'll make an installer for this today. It supports supersu systemless, magisk and normal system install.
Stay tuned.
So what about this file
“/system/bin/thermal engine”?
lknnnn said:
So what about this file
“/system/bin/thermal engine”?
Click to expand...
Click to collapse
No. Thats the engine binary itself. Config file is located at /system/etc/thermal-engine-8992.conf
---------- Post added at 14:52 ---------- Previous post was at 14:39 ----------
NOTE: I do not own this device so there might (and probably will) be bugs around. Just report them to me with recovery log if possible.
AROMA installer ported from Nexus 5x
Changelog:
v1.1
* Fixed few typos
v1.0
* Initial release
* Ported from Nexus 5x
* Support magisk, system and systemless installations
INSTALLATION:
1. Download installer zip
2. Only IF using magisk, download magisk module for moto x as well
3. Reboot to custom recovery
4. Only IF using magisk (requires magisk v6 or higher) flash thermal tweaking magisk module
5. Flash installer zip
6. Select proper installation method:
- Systemless for SuperSU systemless install (requires SuperSU v2.76 or higher)
- Magisk for magisk install (requires magisk v6 or higher)
- System for classic system install (writes directly to system partition and might trigger dm-verity, breaks OTAs)
7. Select profile to be installed (uses stock by default)
8. Enjoy your snappier Moto X
UNINSTALLATION (Only with systemless or magisk):
1. Download uninstaller zip IF using magisk then download uninstaller for magisk
2. Reboot to recovery
3. Flash uninstaller zip
4. Reboot back to stock thermal settings
If using system mode just flash stock settings with installer to get back to stock
Download primarily from OP attachments, but here is direct secondary links:
Installer:
http://drg.fi/misc/thermal_tweaking_systemless_motox_v1.1.zip
Magisk module:
http://drg.fi/misc/thermaltweaking_magisk_motox.zip
Uninstaller (which is same for N5X and motox):
http://drg.fi/misc/thermal_tweaking_uninstaller_v0.1.zip
Uninstaller for magisk:
http://drg.fi/misc/thermal_tweaking_magisk_uninstaller_v0.1.zip
@Razorless you can update OP accordingly
Enjoy!
got it.thanks
Fixed few typos from installer so do not care if old one says in recovery "Selected profile: Normal" even tho you selected different. Its just a typo and it is fixed now.
Updated installer:
http://drg.fi/misc/thermal_tweaking_systemless_motox_v1.1.zip
Will test as soon as I get the time.. The file is of a different file name btw
ffonegod said:
Will test as soon as I get the time.. The file is of a different file name btw
Click to expand...
Click to collapse
Do you mean this is the only engine you see in system/etc after installing? When using the systemless installation, it can occur that certain file managers no longer "see" the thermal-engine-8992. This is because the system gets the information from a differernt file. Nothing to worry about.
Razorless said:
Do you mean this is the only engine you see in system/etc after installing? When using the systemless installation, it can occur that certain file managers no longer "see" the thermal-engine-8992. This is because the system gets the information from a differernt file. Nothing to worry about.
Click to expand...
Click to collapse
that's the stock engine file name actually before installing..
@Razorless I think we need to change those profile file names since I think moto x reads that clark file instead of 8992 so flashing our installer does not affect thermal engine?
tohtorin said:
@Razorless I think we need to change those profile file names since I think moto x reads that clark file instead of 8992 so flashing our installer does not affect thermal engine?
Click to expand...
Click to collapse
That's my point.. Clark has a different file name engine so flashing the "8992" won't make a difference.. It wouldnt overwrite the stock file you would just have 2 file engines installed
ffonegod said:
That's my point.. Clark has a different file name engine so flashing the "8992" won't make a difference.. It wouldnt overwrite the stock file you would just have 2 file engines installed
Click to expand...
Click to collapse
Thermal engine uses different config file so yes you are right it does not even try to load different one. I can make a changes to installer when razorless confirms this.
N5X and LG G4 has 8992 conf file, dont know about other 808 SoC devices.
tohtorin said:
Thermal engine uses different config file so yes you are right it does not even try to load different one. I can make a changes to installer when razorless confirms this.
N5X and LG G4 has 8992 conf file, dont know about other 808 SoC devices.
Click to expand...
Click to collapse
To verify that, someone needs to upload all thermal-engine files present on a stock Moto X so we can take a look at this.
I know the LG G4 has two thermal engines, but both the G4 and 5X read the 8992 for throttling/hotplugging. The thermal engine I found somewhere on the Moto forum was only named "Moto default", so I didn't know it's original file name. I just assumed it was the same as on the G4 and 5X.
Razorless said:
To verify that, someone needs to upload all thermal-engine files present on a stock Moto X so we can take a look at this.
I know the LG G4 has two thermal engines, but both the G4 and 5X read the 8992 for throttling/hotplugging. The thermal engine I found somewhere on the Moto forum was only named "Moto default", so I didn't know it's original file name. I just assumed it was the same as on the G4 and 5X.
Click to expand...
Click to collapse
http://forum.xda-developers.com/attachment.php?attachmentid=3775249&d=1465303814.. That's the moto default file u mentioned
Found it.. This is the engine on my device presently
ffonegod said:
Found it.. This is the engine on my device presently
Click to expand...
Click to collapse
Thanks, this confirms that the name of the engines need to be changed.
So everyone please uninstall the thermal tweaks and reinstall as soon as the new zip is ready. Or download the new profiles from post two and overwrite.
That sounds interesting but what are the expected benefits?
AROMA installer updated:
Changelog:
Systemless installer v1.2
* Fixed thermal engine config filename
Magisk module v0.2
* Fixed config filename
Now Moto X has its own uninstaller (the same with N5X does not work anymore):
Uninstaller v0.2
* Fixed config file name
Download from here:
Installer:
http://drg.fi/misc/thermal_tweaking_systemless_motox_v1.2.zip
Uninstaller:
http://drg.fi/misc/thermal_tweaking_uninstaller_motox_v0.2.zip
Magisk module:
http://drg.fi/misc/thermaltweaking_magisk_v0.2_motox.zip
@Razorless update OP accordingly
Enjoy!
tohtorin said:
AROMA installer updated: Enjoy!
Click to expand...
Click to collapse
Thanks, post #2 has been updated
DekkerP6 said:
That sounds interesting but what are the expected benefits?
Click to expand...
Click to collapse
The phone will not throttle as much under heavy load with a tweaked thermal-engine, but it will become warmer.
[NOTES]
Guys, there are many members encounter blackscreen (after system boot) after flashing the driver on the LATEST Pie ROM (it's happening after September security patch).
Looks like it's due to the hardening security.
This method fixed that blackscreen problem : https://forum.xda-developers.com/showpost.php?p=78355758&postcount=1047
Or the better way is, to tell your dev to include this blobs in the rom directly, that way the rom will boot successfully.
I will try to solve the issue ASAP, best regards.
[DISCLAIMER]
* flash it with your own risk, don't blame me if it's not working for you, make sure to backup before you messed up.
* there are possibilities that maybe this driver won't work on some ROMs.
* there are possibilities that maybe this driver won't work on some CPUs that hasn't been tested.
[README]
* to check your GPU driver OpenGL ES version, use AIDA64 (like shown on the picture in attachment). download : https://play.google.com/store/apps/details?id=com.finalwire.aida64&hl=en_US
* to check your GPU driver Vulkan version, use Vulkan Hardware Capability Viewer (like shown on the picture attachment). download : https://play.google.com/store/apps/details?id=de.saschawillems.vulkancapsviewer&hl=en_US
* if your current driver have higher version and don't have any bugs, no need to flash this driver.
* check your device compatibility in compatibility list section.
* some tester said the benchmark score go higher and 3D heavy games are smoother using latest GPU driver, you can try to take before and after benchmark pictures and post it here to prove it.
* the driver is interchangeable (can be flashed over the top of another version, it will be replaced).
[COMPATIBILITY]
PROJECT :
* Non-Treble
* Treble
OS :
* Android 8.0 : [email protected]
* Android 8.1 : [email protected]
* Android 9.0 : [email protected] | [email protected] | [email protected]
CPU :
* Snapdragon 430 = msm8937 (tested)
* Snapdragon 435 = msm8940
* Snapdragon 625/626 = msm8953 (tested)
* Snapdragon 650 = msm8956 (not compatible)
* Snapdragon 652/653 = msm8976
* Snapdragon 820/821 = msm8996 (tested)
* Snapdragon 835 = msm8998 (tested)
* Snapdragon 429 = sdm429
* Snapdragon 439 = sdm439
* Snapdragon 450 = sdm450
* Snapdragon 630 = sdm630
* Snapdragon 632 = sdm632
* Snapdragon 636 = sdm636
* Snapdragon 660 = sdm660 (tested)
[INSTRUCTIONS]
1]. find out what is your CPU model number, you can see it in COMPATIBILITY section, on CPU sub-section. for example, my CPU is Snapdragon 821, so the CPU model number is msm8996.
2]. download the zip file. rename file in the zip file with name "vulkan.xxx.so" in system/(vendor)/lib/hw and system/(vendor)/lib64/hw to "vulkan.CpuModelNumber.so". for example, for me, i rename "vulkan.xxx.so" to "vulkan.msm8996.so".
you can use this app to rename the file inside the zip file : https://play.google.com/store/apps/details?id=com.rarlab.rar
DO NOT EDIT FILE NAMED "a5xx", ONLY EDIT FILE NAMED "vulkan.xxx.so", I HAVE TO MENTION THIS BECAUSE SOME GENIUS DECIDE TO DO THINGS BY THEIR OWN REGARDLESS FOLLOWING THE INSTRUCTIONS THAT HAS GIVEN STEP BY STEP.
3]. boot into TWRP
4]. make sure your SYSTEM and VENDOR partitions are not read only.
5]. just in case, mount SYSTEM and VENDOR partitions before flash the zip file.
6]. flash the modified zip file, wipe Dalvik Cache and Cache.
7]. after flash, boot into system, and check if your GPU Version driver has changed (you can use AIDA64). and you can test benchmark if you want (i suggest 3DMark or Antutu).
8]. this step is optional/additional : to boost GPU performance a little bit again, please add this code in system/vendor/build.prop (or in system/build.prop if you can't find it in system/vendor/build.prop). and please check if there's the same code line in your default build.prop, remove it so it won't conflicting each other. code to add :
com.qc.hardware=true
debug.composition.type=gpu
debug.egl.hw=1
debug.egl.profiler=1
debug.enabletr=true
debug.gralloc.enable_fb_ubwc=1
debug.overlayui.enable=1
debug.performance.tuning=1
debug.qc.hardware=true
debug.qctwa.preservebuf=1
debug.qctwa.statusbar=1
debug.sf.hw=1
debug.sf.latch_unsignaled=1
dev.pm.dyn_samplingrate=1
hw3d.force=1
hwui.disable_vsync=true
hwui.render_dirty_regions=false
ro.config.enable.hw_accel=true
ro.fb.mode=1
ro.product.gpu.driver=1
ro.sf.compbypass.enable=0
[DOWNLOADS]
https://drive.google.com/drive/folders/1JN05hFMijXq2Xpn_tFv1AJWodVnQYTsu
[BUGS REPORTING]
* provide device model.
* provide ROM name, android version, and treble/non-treble version.
* which file did you flash.
* provide logcat, preferable taken with adb using verbose option. how to : https://forum.xda-developers.com/showthread.php?t=2185929
* I WILL NEVER TRY TO INSPECT/FIX ANYTHING IF YOU DON'T SEND LOGS, SAME GOES I WILL NEVER REPLY YOUR MESSAGE IF YOU DON'T SEND LOGS.
[OTHER STUFFS]
* Do this only if you get stock camera app force close : https://forum.xda-developers.com/showpost.php?p=77971228&postcount=803
* A little help from @LilBlinx for msm8953 devices : https://forum.xda-developers.com/showpost.php?p=78574409&postcount=1123
[CREDITS]
* Source : v313 : https://www.coolapk.com/feed/7290260 | v319 : https://www.coolapk.com/feed/7483860 | v328 : https://github.com/LineageOS | v330 : https://github.com/syberia-project
* Driver Author : v313, v319椿的神之圍樓 | v328, v330, v331 : @[B]heindrix[/B]
* Informant : @[B]llinn[/B]
* WHY DON'T YOU CREATE MAGISK MODULE?
Well, i just believe the performance will be better to flash the driver directly into its designated directory, rather than mounting it from an image and load it later when booting (which is what is magisk doing). For me, some other things is okay to make it into a magisk module, but not a driver, period.
Source? You might want to remove the 540 links since we only need 530, just to save any 'which one' questions.
With 3DMark I used the Sling Shot Extreme (Open GL ES 3.1 & Vulkan) and Ice Storm (Open GL ES 2.0) benchmarks. Results again remained pretty much the same before/after. SSE was ~2550-2700 for Open GL and ~1900-2000 for Vulkan. Ice Storm was almost always ~38,500.
In Antutu though, I got a considerable boost (76k on GPU instead of my usual max of 69k).
I'd be interested to see what others get, and if there are any alternative benchmark apps worth using.
gavin19 said:
Source? You might want to remove the 540 links since we only need 530, just to save any 'which one' questions.
With 3DMark I used the Sling Shot Extreme (Open GL ES 3.1 & Vulkan) and Ice Storm (Open GL ES 2.0) benchmarks. Results again remained pretty much the same before/after. SSE was ~2550-2700 for Open GL and ~1900-2000 for Vulkan. Ice Storm was almost always ~38,500.
In Antutu though, I got a considerable boost (76k on GPU instead of my usual max of 69k).
I'd be interested to see what others get, and if there are any alternative benchmark apps worth using.
Click to expand...
Click to collapse
got it from a friend.
he said he got it from a china forum www.coolapk.com.
the driver is extracted from Pixel 2/Essential PH-1, since msm8998 gpu driver can be used for msm8996 too.
is it possible to merge the driver into your rom? (crdroid, aicp, rr)
okay, done a bit research.
i downloaded Google Pixel driver binaries from here (taimen and walleye for Adreno 540, and marlin and sailfish for Adreno 530) : https://developers.google.com/android/drivers
looks like the same files, and the binaries were updated very regularly, which is good.
maybe i'll create a magisk flashable zip and try to flash it to see if it works fine.
if it works fine, i'll update it regularly here everytime google release new driver binaries.
The lowest is before and the highest is after.
I'm using the magisk non treble version.
thanks, but radiation Island and radiation city are unable to run after I updated 313 driver (I tried both magisk and rec edition;other games and apps work fine)
could you fix this ?
or it's the problem of game maker so I just need to waitting for them upadate games?
With the new v8 Magisk version
xX.R.O.G.Xx said:
With the new v8 Magisk version
Click to expand...
Click to collapse
Wrong image sorry, here is the new one.
Will this work on an oneplus 3 running oxygen os on Android 8.0? Thanks!
Annoyingmouse said:
Will this work on an oneplus 3 running oxygen os on Android 8.0? Thanks!
Click to expand...
Click to collapse
Pretty sure it'll work fine. It should work for all SD820/821 devices. Just take a backup in TWRP so you can restore if it breaks something.
Wow, the new driver is amazing! I really don't know what it changed but it was magic! Not only my gpu AnTuTu score is higher but somehow the phone doesn't get as warm as before, the temperature is just stable. Also I have tested one game - madout open city - and I think that the phone throttloted less because I had higher fps and everything was smooth. I'm just impressed with what 313 did, I feel like qualcomm is really trying to improve their drivers even on older models.
Really nice to find this option using magisk....
But bootloop on MIUI 9.5.2 Android N
Bootloop with v6 driver twrp version.
OS epicrom 7.10.26
how to use magisk flash this driver?
or reboot recovery flash thish driver?
sis3002001 said:
how to use magisk flash this driver?
or reboot recovery flash thish driver?
Click to expand...
Click to collapse
For me Flash with magisk failed.... then like all time, flash using TWRP is much easier !!
DOn't do like me, make a backup first !!
I need dirty flash my rom and when i install magisk again he found lastest img from magisk then restore and module bootloop again, borrrrrrinnnnng !
Install with magisk
Ouch I think that I beat even some snapdragon 835 decices with my op3 on 313 drivers & android 8.0
V8magisk 821 edition LINK can't download
Annoyingmouse said:
Ouch I think that I beat even some snapdragon 835 decices with my op3 on 313 drivers & android 8.0
Click to expand...
Click to collapse
The GPU score is about what's expected, given the boost from the drivers, but it's the CPU score that stands out. 60k is typical of the 3T, but not the 3.
sis3002001 said:
V8magisk 821 edition LINK can't download
Click to expand...
Click to collapse
I upload the V6 and V8 zips here.
Yeah sorry I think I should have mentioned that the cpu was slightly oc-ed to 2.25 ghz, so closer to the op3t's stock clock speed; this is how I let the phone run always when Im not low on power..but everything else was just like oxygen os stock.
I just switched today to Corvus OSv14 based on Android 11 on my Poco X3. I was scrolling to developers options searching for game driver preferences, then I found that the game drivers of Adreno aren't installed. Although MIUI comes with Adreno GPU drivers preinstalled the custom ROM doesn't so do you guys have any idea how to install Adreno 618 GPU drivers whether by an APK or an update, MAgisk Module, or a flash BY recovery, or even push by ADB sideload?
This guide will help you to maximize your GPU's potential. It's completely safe to follow, so let's start!
Prerequisites:
1. Rooted
2. TWRP
Works on any ROM and even MIUI !
Magisk Modules:
1. OverlayFS
2. Latest GPU driver
Apps:
1. Konabess - https://github.com/libxzr/KonaBess/releases/tag/v0.17
Import settings from the attached file and reboot. This will overclock the GPU to 692mhz.
2. Franco Kernel Manager. (Play store)
Check GPU version after updating drivers, should be 614.
3. Lyb kernel manager (Play store)
Go to adreno settings and import settings from given file.
Done!
Thanks to all the developers for their amazing work as always
thank you, this works on android 13?
This is a simple but powerful mod to improve your User experience on your Moto G7 Power/ any Aderno 506 device.
What this mod does?
*Removes CPU rendering Pathway.
*Gives priority to GPU rendering for better cleaner and faster animation and gaming experience.
*Improves touch.
And much more!
(Of course backup your system just in case)
How to install:
This is a magisk module so install from magisk then reboot and it will be installed
Requirements:
Have magisk installed