[GUIDE][Nikel] Helio X20 power saving settings with (almost) stock performance. - Xiaomi Redmi Note 4 Guides, News, & Discussion

Hi,
I've prepared two small CPU "fixes" for Xiaomi Redmi Note 4/4X Nikel (Mediatek MT6797 Helio X20 CPU).
There are several fixes on the web, but none of them actually worked good.
As you probably know, CPU in our devices are controlled by both standard cpufreq interactive linux CPU goveror and proprietary Mediatek Perfservice.
The problem is, that Perfservice tends to set max frequencies and waking up big cores on certain events like launching/switching app or simpy touching or rotating screen.
Providing excellent user experience, but wasting battery power at the same time.
Simply disabling Perfservice isn't good idea, as - contrary to governor settings - both A72 cores will be limited to 1,5Ghz (down from 2,1Ghz).
So while this is nice and power saving, it also limits single core performance considerably (to about 1200 points in Geekbench 4).
Multicore performance seems unaffected, though.
My modification aim to reduce power consumption and temperatures while still providing (almost) stock speed.
It comes in two "flavours", and please note you only need ONE of them (your choice).
Two files are included in this post:
perfservscntbl.txt is *only* for flavour 1.
unlock.sh is *only* for flavour 2.
But you can use both if you want to switch between flavours.
And of course they come without any warranty - I don't take responsibility for *any* damage and bricked devices.
They were prepared in two hours time, in fact I rooted my phone yesterday and have it for a week - so I didn't do much testing.
If you don't know what are you doing, never used linux before etc - please simply don't do it.
If you have TWRP use it and make backup just in case.
Prequisities :
- Unlocked and rooted Helio X20 device
Flavour 1
This modification alters perfservice settings to much simpler and less aggresive.
- backup your stock /system/etc/perfservscntbl.txt
- replace it with included file
- give it 644 permissions (rw-r--r--)
- reboot
That's it.
Flavour 2
This modification disables perfservice entirely and unlocks A72 cores high speed for standard governor
- disable mediatek perfservice by setting
ro.mtk_perfservice_support = 0
in your build.prop (/system/build.prop)
- reboot
- run incuded bash script with root privileges to unlock max frequencies (linux proc changes are not permanent, only until reboot!).
You can use something like ROMToolboxPro to execute script automatically after each reboot.
Or use terminal as root user to set it manually (just look what's inside).
Notes:
Due to lower average frequencies (and time that interactive governor will need to ramp them up) performance will most likely be still slightly inferior to stock and you will ocassionally feel UI shuttering.
Even though you should still be able to hit 1500+/4800 in Geekbench 4 on both variants, just like stock.
I hope it will help.
Q&A:
Q) How much more SOT and standby can I achieve with these patches?
A) I really don't have any idea. I don't do such tests.
Q) Which flavour is faster?
A) Probably first one, especially for UI. Tends to utilize mid cluster more. Second one is more energy-saving. But on multicore geekbench test I got opposite results (tested just once).
Q) How can I check that it is working?
A) Try DevCheck and observe frequencies before and after mod. Try switching applications, rotating and touching screen.
Q) Can I improve battery life even further and still have usable phone (without buying snapdragon version)?
A) Yes, you can disable A72 cores entirely and have ordinary octa-core CPU (4*1.8Ghz + 4*1.4Ghz):
echo Low_Power > /proc/ppm/mode
Performance will be around 650/3500 Geekbench4 points.
Alternatively you can do it this way (don't know what's the difference yet)
echo 2 > /proc/ppm/policy/hica_power_state
Or disable both high and mid cluster, and leave only low cluster (kind of super powersaving mode, x20 becomes quad core)
echo 0 > /proc/ppm/policy/hica_power_state
(echoing -1 there will re-enable all clusters)
Q) Can I improve perfservice settings further?
A) Yes, I spent only about one hour on them, and speak polish not chinese, so almost certainly they can be improved.
http://blog.csdn.net/zhangyongfeiyong/article/details/52946781
For example I don't have any idea what's the difference between vcore 1 and 3.
Even though 3 seems to be selected for better performance, I haven't noticed any speed difference.
I set it to 1, so it may run undervolted. Maybe. Hopefully. You can also remove vcore entries entirely.
I'm using flavour 2 though, so I'm not gonna work on it anymore.
Q) My AnTuTu score (or other benchmark score, or game X FPS) went down!
A) Unfortunately, this is what you should expect from battery saving modifications.
If you need top-notch performance these modifications are not for you.
You can try altering cpufreq governor settings, though.
Q) Can I improve it further by altering cpufreq governor settings?
A) Probably yes, but not much. Default cpufreq settings are actually quite good.
Q) Will you tune cpufreq governor for my specific purposes?
A) I'm sorry I don't have time for it. As I said, default one is quite nice already.
Q) Can I improve overall device performance further?
A) Yes, you can for example enable zRAM and tune I/O schedulers, queues and low memory killer YMMV, though. And it depends on your workload.
Q) I really don't know how to do it, can you provide one click installer?
A) No, and I strongly advise against doing it if you don't understand.
Q) My device exploded!
A) You have been warned

amazing mate! waiting for some reviews of this, i am going to try it

how to input these codes:
Alternatively you can do it this way (don't know what's the difference yet)
echo 2 > /proc/ppm/policy/hica_power_state
Or disable both high and mid cluster, and leave only low cluster (kind of super powersaving mode, x20 becomes quad core)
echo 0 > /proc/ppm/policy/hica_power_state

iflawlietasgod said:
how to input these codes:
Alternatively you can do it this way (don't know what's the difference yet)
echo 2 > /proc/ppm/policy/hica_power_state
Or disable both high and mid cluster, and leave only low cluster (kind of super powersaving mode, x20 becomes quad core)
echo 0 > /proc/ppm/policy/hica_power_state
Click to expand...
Click to collapse
You need to either access terminal with superuser rights (look for Terminal Emulator) or use app that can execute shell scripts (like Rom Toolbox or FX Explorer).

Tried echo 1 > /proc/ppm/policy/hica_power_state
It will disable your 2x A72 + 4x A53 1.4GHz, leaving you with 4x A53 1.8GHz. Sounds like "not-so-aggressive ultra powersaving mode" for me

TwelveMoon said:
Tried echo 1 > /proc/ppm/policy/hica_power_state
It will disable your 2x A72 + 4x A53 1.4GHz, leaving you with 4x A53 1.8GHz. Sounds like "not-so-aggressive ultra powersaving mode" for me
Click to expand...
Click to collapse
But you'll lose lowest powered A53 cores. I wonder if L cores (1.8Ghz) consume more power than LL cores (1.4Ghz) when doing nothing.
Even in such case, this setting should be ideal for long term gaming - decent performance with probably no thermal throttling
Ah, there is also "/proc/ppm/mode" setting. I set it to "Just_Make" recently - seems to be between "Low_Power" and "Performance". Just_make doesn't limit any frequecies or affect GeekBench score.

sobrus said:
But you'll lose lowest powered A53 cores. I wonder if L cores (1.8Ghz) consume more power than LL cores (1.4Ghz) when doing nothing.
Even in such case, this setting should be ideal for long term gaming - decent performance with probably no thermal throttling
Click to expand...
Click to collapse
Yeah, I've tried to use echo 0 on /proc/ppm/policy/hica_power_state as well, and it turns out that 4x A53 1.4GHz is still usable for low-end gaming. Tried Antutu benchmarking on echo 0 setting + CPU hifreq turned down to 1092MHz by tweaking governor values, I still get 50K++, which is quite good for me.
I also accidentally locked my lowest cluster to the lowest frequency possible (221 MHz) by simultaneously change the target_loads and go_hispeed_load values to beyond 100 (120 for example). My device became unimaginably laggy at that time :laugh:
FYI, those tweaks give me extra up to 2 hrs of SOT, which is good for someone who spent a lot of time with this device like me :laugh:

I have my go_hispeed_load far beyond 100 (I don't quite like the idea of "hispeed" and "boost" and it's OK - not excellent, but passable, closer to conservative governor), but any target_loads beyond 90 will make UI choppy and beyond 100, as you noticed, will lock on lowest frequency.
If someone needs better UI experience, setting it to 80-85 would be my first experiment, then reducing timer to 10000.
Extra 2hr is nice improvement

flavour 2 is only use 2xA72 only? middle and low is disable?

Flavour 1 - stuck on boot logo.
IS it for miui 8 only?

I'm a little interested in htat. I have a Leeco s3 running MIUI 9 beta.
My problem is that in RR3 the a72 idles 1ghz to 1.5ghz, not more. And sometimes game is a little laggy.
Your tweak would fix that?
Is there anything I can do with kernel auditor more safety?

Leeco S3 uses Qualcomm Snapdragon 652, so my tweak won't help.
And unfortunately I don't know have any Snapdragon phone to prepare tweaks for you
You can try to set performance cpu governor, but I don't know if it is possible on your device.
Are you sure your device is not throttling due to high temperatures?

sobrus said:
Leeco S3 uses Qualcomm Snapdragon 652, so my tweak won't help.
And unfortunately I don't know have any Snapdragon phone to prepare tweaks for you
You can try to set performance cpu governor, but I don't know if it is possible on your device.
Are you sure your device is not throttling due to high temperatures?
Click to expand...
Click to collapse
Maybe he meant x626?

These tweaks confirmed to be working on LeEco Le S3 X626 (MTK Helio X20)! The result is REALLY noticeable. I'd say around 50% increase in battery life. (I used method 2)

How did you know the policy command, "echo 0 > /proc/ppm/policy/hica_is_limit_big_freq"
What is "echo 0"?
And what is mean by "hica_is_limit_big_freq"?
Where i can find any other policy command?

cheapster8 said:
These tweaks confirmed to be working on LeEco Le S3 X626 (MTK Helio X20)! The result is REALLY noticeable. I'd say around 50% increase in battery life. (I used method 2)
Click to expand...
Click to collapse
How did you use method 2?
Guide me please
Sent from my LEX626 using Tapatalk

Can anyone explain me how to install that archive?and how to increase the working time of the phone with this archive?

@Votrexx
I don't understand what your problem is
@BLINGER-PC, @CSSman
You need to ROOT your phone first, which may void your warranty, and by doing these changes improperly you CAN brick your phone too.
That's why I'm not going to give explanations easier than "modify your build.prop and echo this value". It is all you need to do.
You need basic understanding how linux and android work before you begin to be sure you won't damage your phone.
Sorry.

sobrus said:
@Votrexx
I don't understand what your problem is
@BLINGER-PC, @CSSman
You need to ROOT your phone first, which may void your warranty, and by doing these changes improperly you CAN brick your phone too.
That's why I'm not going to give explanations easier than "modify your build.prop and echo this value". It is all you need to do.
You need basic understanding how linux and android work before you begin to be sure you won't damage your phone.
Sorry.
Click to expand...
Click to collapse
What to modify at build.prop
?

ro.mtk_perfservice_support = 0
It is written in the first post.

Related

[GUIDE][SCRIPTS] v5.0 ¦ How to Easily Unleash your HTC One gaming powers

----------------------------------------------------------------------------
Sense 6.0 official game boost method
HTC added High Performance Mode in it's Sense 6.0 update, which is acts like an official form of game boost, now locked users can enjoy the full speed of the s600 as well
Higher Performance Mode (HPM) in Stock Sense 6 software, hidden in developer options (Screenshots)
- Go to your HTC One (M8) settings menu and scroll to the very bottom. Select "About" and open the "Software Information" menu.
- Tap on the "Build Number" several times until you get a message confirming that "you're now a developer".
- The developer options menu should now appear in your settings list. Go ahead and open it. Note that this section contains settings that should not be modified unless necessary. Doing so may make your phone behave in unexpected ways. Proceed at your own risk from now on.
- The fifth option in the list should be labeled "High Performance Mode". Enable it by marking the tick to the right. Tap again to disable the mode when it isn't required.
Click to expand...
Click to collapse
This will force the CPU into higher frequencies, delay throttling and prevent stalls/fps dips from any affected app (try it with Ripetide GP2)
Always remember that this boost will take a heavy tole on the battery and thermals, so remember to disable HPM when you are done gaming
----------------------------------------------------------------------------
----------------------------------------------------------------------------
The following information is for Sense 5.0 / 5.5 and more advanced performance tips
Fast version of this guide and simple solution:
For new comers, this section should be enough
Facts: Gaming on the HTC One can be negatively affected by two factors, CPU/GPU thermal throttling (down) and the inability to boost the CPU in tilt /sensor controlled games
Example: By default Asphalt 8 in tilt controls will fluctuates between smooth and laggy, with touch controls it's smooth until the GPU throttles down after 15 minutes and then it becomes laggy, with the following solution the HTC One will run this game above 30fps locked even with max graphics effects
Scripts: Prevent CPU / GPU throttling and Boost the CPU | last updated 11-12-2013
Simply use my Boost script before your start your favorite game, it will insure using the max CPU and GPU speed during your game session, once you are done gaming unBoost and the device returns to it's stock state
The only requirement is acquiring root
- Simply download my HTC One Simple Gaming Boost scripts and follow the tutorial for a one click solution
Remember to always unBoost once you are done gaming to allow the phone to cool down
Click to expand...
Click to collapse
I still recommend to take the time and read through the the rest of this guide, it will help you understand how the HTC One processor works and how to extract the best of it
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comprehensive HTC One gaming performance guide and multiple solutions:
The HTC One runs heavy 3D games like Modern Combat 4 in full visual quality, native 1080p resolution and remains above 30fps, equally the HTC One Adreno 320 GPU beats the iPad 4 GPU in native performance, unfortunately you will be surprised when your powerful HTC One suddenly drops smooth frame rate after some time of gameplay
This because like most Snapdragon 4 pro and 600 devices, Qualcomm throttles the CPU clocks when it hits a select temperature target, this is done to both protect the device, reduce overheating and extend battery life, unfortunately the target temperature is entirely up to the OEM and these targets vary greatly between quad core krait devices, to make matters worse certain OEMs choose to throttle the Adreno 320 GPU as well, the GPU is the most important gaming hardware in your device, currently we have abundance of CPU power but we can never have enough GPU power, this is why dropping the GPU clocks will directly drop your gaming performance, check this post on how different device builders throttle their Snapdragons
The HTC One by default throttles the CPU when it reaches 57c but it also throttles the GPU with CPU when the battery arrives at 40c (probably to safeguard the built-in battery), it drops from 400mhz to 320mhz, after 20 minutes or so of gameplay the GPU will slowdown, throttling the CPU at 57c is fine but the 40c battery GPU threshold is simply too soon, this throttling is just preservative especially since the GPU is already under clocked at 400mhz, equally this device metal shell actually acts a heatsink and gets rids of it's heat quite well
The other part of this gaming equation is CPU speed, by default the speedy quad core favors medium CPU frequencies for average jobs and will ramp up fairly well when more is needed, this is all controlled by the CPU governor, however there are certain heavy games which still fail to call full CPU speed or maintain it, particularly if a game relies on tilt or sensor controls, like Asphalt 8 or Ripetide GP 2, for such games you will need to increase the CPU aggressiveness
In conclusion, if we want to have the full gaming performance expected from our HTC One, we will have to disable GPU throttling and boost the CPU
This guide consists of three parts:
. Part I: GPU Throttling
. Part II: CPU Boost
. Part III: More performance tricks (future proofing)
----------------------------------------------------------------------------
Part I: GPU Throttling
Reminder the following tips will use the device to its potential and therefore will abuse the battery life, so try to be moderate and don't over use the device at high temps
General tips for stock non rooted users
In order to control throttling on your HTC One without root, you have little choice but to prevent your device from heating and so delay throttling, consider the following tips:
- Never play games on the charger otherwise this means instant overheat
- Covers and cases this might be the most important tip, the metalic back plate is linked to the CPU and meant as a heatsink by design, so covers especially hard covers will prevent the metal back plate from releasing heat, choose a cover which doesn't trap the heat, i found the worst is polycarbonate hard shells, meanwhile TPU did conduct heat a little better, finally the official double flip case was best for me since it's rubber, has many exposed areas and the device a little relaxed
- Thankfully the power saver mode doesn't reduce the GPU clock only the CPU is dropped to 1134mhz, so you can rely on the power saver mode to delay throttling
- Auto Sync and background activity will contribute to processor usage and heat increase, so disable auto sync and kill background processes
- Screen brightness is also be a contributor to temperatures as well, so don't go for the max
- Ambient temperature your ambient temperature will affect the temps of your device, so if you are in a hot environment throttling will come sooner than later
Unfortunately at 40c battery there isn't much we can do, when gaming your device will reach this temp sooner or later, this is why rooting and custom recovery gives us much greater control and allows us to unleash gaming on this device
Prevent CPU / GPU throttling and Boost the CPU - requires root
You can simply lock the Max CPU and GPU speeds using the gaming boost scripts described in the second part of this guide, the Boost script will set the Max CPU and GPU clock to read only preventing the system from throttling them down, once you unBoost the device returns to it's stock state
- Simply download my HTC One Simple Gaming Boost scripts and follow the tutorial for a one click solution
Remember to always unBoost once you are done gaming to allow the phone to cool down
Disable GPU throttling - requires root and custom recovery
You can also disable GPU throttling all together or configure throttling on stock kernel thanks to jerrylzy's work
- Download the Stock no gpu patch (stock_nogpu.zip) and flash it from custom recovery
This will keep the CPU throttling at 57c but disables GPU throttling, your games will no longer lag suddenly once the battery reaches 40c, you can also use the performance patch which further delays CPU throttling
Alternatively you can read through the tutorial and customize the thermald file for your liking
Custom kernels with built-in thermal control - requires root and custom recovery
If your device is Unlocked and Rooted, you can flash a custom kernel which has thermal controls, for example the ElementalX Kernel replaces the HTC thermal driver with it's own and gives us control during the kernel installation process, as explained by flar2 the kernel developer
Thermal Control
I've added kernel based thermal control and throttling. HTC's thermald is very aggressive and throttles the CPU frequency pretty much anytime you use all four processors. This kernel based implementation allow better performance while still protecting your phone from overheating. There are three levels of thermal control, which can be chosen in the installer or changed in /etc/elementalx.conf. The default option is recommended. With the run cool option, your CPU will run about 5C cooler than default while under heavy load. With the run hot option, the CPU will run about 5C warmer than default under heavy load.
Click to expand...
Click to collapse
There is no throttling of the GPU.
The CPU throttling kicks in when it hits certain temperatures. The first level throttles to 1728 if you're overclocking (there is no change if you are at stock freqs or lower), the second level throttles to 1350, the third level throttles to 918, the fourth to 384. It is unlikely that you will ever get to the fourth throttling level even in an extremely hot climate.
Click to expand...
Click to collapse
The Snapdragon 600 GPU is able to achieve 450mhz, in fact it's the stock clock on the SGS4, ElementalX OCs the GPU to 450mhz by default, the default throttling behavior for this kernel starts at 63c which is massively better than HTC's 40c and thankfully it only affects the CPU
By the way the default throttling files on the s600 SGS4 will not start to throttle before 85c and it doesn't drop the GPU either, this should give a good idea how held back the s600 is on the HTC One
I found the following configuration the most optimal when using ElementalX
- Don't go above the stock 1728mhz in AROMA (kernel installer), for gaming we really don't need more so lets not OC to keep the heat down, in fact most games will not use more than 2 to 3 CPU cores, also if you don't lock it from the installer it will never stick, you can even go with 1533mhz lock for further heat reduction
- Select your throttling temps from AROMA, thankfully this only affects the CPU and not the GPU, at default throttling it begins at 63c, with run hot it starts at 66c, run cool is 58c and run extra cool is 54c, you will have to find the sweet spot for your device, more info here
- Select GPU 450mhz from AROMA, we didn't OC the CPU in order to have thermal room for GPU OC
- You can even go with power saver mode which reduces CPU to 1134mhz, in most games you notice any drop at these CPU clocks, GPU will remain at max clock and heat will be further delayed
Click to expand...
Click to collapse
----------------------------------------------------------------------------
Part II: CPU Boost
CPU Boost: Tweaking CPU governor for Games in need of single threaded top speed (ex: Asphalt 8 & Ripetide GP2 which suffer from performance dips unless the CPU is boosted)
For certain games you might have unexplained bad performance, this means the game is not really optimized for the device since the default ondemand CPU governor is usually pretty good in extracting performance, some games also suffer if they rely on tilt controls since without screen interaction the CPU fails to ramp up, for such issues you can boost the ondemand CPU governor, a better alternative to the performance governor (which would lock the cpu at high clocks causing heat/drain)
Note for HTC stock Kitkat kernel you will need to use performance CPU governor since ondemand boost no longer works
These tweaks require root access
More info about games in need of CPU governor boost>>
Optimize the stock CPU Governor for more aggressive behavior using a one click script (Free)
- Simply download my HTC One Simple Gaming Boost scripts and follow the tutorial for a one click solution
Remember to always unBoost once you are done gaming to allow the phone to cool down
How to Manually Optimize the stock CPU Governor for more aggressive behavior (Free)
- Download a free app like Tickster MOD
- Go to the General tab scroll down to CPU governor control section and click the Governor Control button, scrolldown to Up_Threshold* and lower it to 50
- From the General tab I/O control section, change the Scheduler to deadline and raise the Read Ahead Buffer Size to 1024 or 2048
- You can Set On Boot from the app's main menu
*Up_Threshold: This is the main load threshold, reducing this value from the stock 90 will make the CPU more aggressive, recommended for gaming: 50
This no longer work for HTC stock Kitkat kernel, instead switch to performance CPU governor as described below
How to Manually Switch your CPU governors (Free)
- Download a free app like Tickster MOD
- Go to the General tab scroll down to CPU governor control section and switch your CPU governor to performance for example, you can also switch your scheduler to deadline in the I/O Control section
How to Automatically Switch your CPU governors for Games of choice (Paid)
- You need to purchase the SetCPU app or another app with similar profile functions
- Launch the app, leave the CPU governor at default ondemand, also leave the scheduler at default
- Go to the PROFILES tab and tick Enable profiles
- Press the plus sign at the top and then Turn this profile one when...
- Select App when asked to Add Condition, select apps again and then the game of your choice
- Press Next, make sure to untick set the CPU Speed, this because we still need to have the ability to use the power saver function so lets leave them at default
- Tick Set CPU governor and select Performance or any other governor of choice
- Tick Set the I/O scheduler and select Deadline or any other scheduler of choice
- Press Next Twice
and you are done! SetCPU will remain resident in the memory and switches to the your selected CPU governor and scheduler on the fly, when you exit the game it will return back to stock, keep in mind the app will remain running in the background so sometimes Android might close it but it will launch again, i suggest you don't close it yourself
Click to expand...
Click to collapse
----------------------------------------------------------------------------
Part III: More performance tricks
GPU Boost: Reducing Android's Native Resolution (Proof of concept for future performance needs)
The panel of the HTC One is 1080p and although the GPU is powerful there is no denying that almost 70% of it's performance is wasted in the jump from 720p to 1080p especially considering that even at 720p the density is still above 300ppi, thankfully many new games already offer in-game resolution slider like RipeTide GP2 or run in sub 1080p out of box like IronMan 3, RR3 and Asphalt 8, still if any game is badly optimized in the future you might want to use the following tricks in order to downscale the native resolution and almost double your GPU power, one more thing to keep in mind there are some games on the Playstore which fail to support 1080p like Need For Speed Most Wanted, forcing it to 720p will run this game with full effects including motion blur
ADB Shell: The display change Android command
4.2.2
Code:
am display-size 720x1280
4.3
Code:
wm size 720x1280
Change Android's Native Resolution, using Scripts
Change Android's Native Resolution on the fly, using Tasker by @neuTrue
Click to expand...
Click to collapse
----------------------------------------------------------------------------
My Own HTC One gaming setup>> (constantly updated)
Don't miss these other gaming focused posts:
Gaming Boost scripts for Elemental X custom kernel >>
Gaming boost for HTC stock Kitkat kernel no longer works using up_threhold 50, requires performance CPU govenror>>
Need for Speed™ Most Wanted v1.0.50 updated with HTC One support>>
[MOD][HOW TO] Enable Tegra 4 Graphics on Dead Trigger 2>>
Asphalt 8 1008 version, the OpenGL ES 3.0 edition, it works only on 4.3 ROMs with ES 3.0 drivers>>
A new method to control HTC's encrypted default ThermalD configuration, for stock kernels or custom kernels with GPU throttling>>
HTC One Adreno 320 GPU OC now supported beyond 500mhz thanks to Elemental X kernel 5.4, scores 52fps in Egypt HD at 585mhz>>
Adreno 320 performance comparative with competing GPUs (Septembers 2013)>>
New Adreno 320 drivers in the leaked 3.17 Sense Android 4.3 base, drivers v45 (up from v16), better ES 3.0 support and 2fps gain in Egypt HD offscreen>>
Snapdragon 600's Adreno 320 performance head to head with the iPhone native resolution (1136x640)>>
Change Android's Native Resolution, using Scripts (Android 4.2.2 only)>>
HTC One Adreno 320 GPU - Resolution Scaling GFX Bench tests>>
ThermalD Throttling disable patch>>
HTC One Simple Gaming Boost scripts - Root>>
HTC One, 3D Games Performance Report, Asphalt 8>>
HTC One Adreno 320 GPU - OC GFX Bench tests>>
RipeTide GP 2, Beach Buggy Blitz, Ironman 3 and Real Racing 3, performance tips>>
HTC One supports Open GL ES 3.0 in the stock 4.2.2 OTA>>
HTC One, Adreno 320 GPU scores better in 3DMark with the 2.17.40.1 update (4.2.2)>>
HTC One, Adreno 320 GPU scores better in Egypt HD (41fps vs 37fps) with the 2.17.40.1 update (4.2.2)>>
ElementalX, the HTC One best Gaming Kernel>>
HTC One, 3D Games Performance Report Part III>> (Asphalt 7, Real Racing 3, Fast and Furious 6)
HTC One, 3D Games Performance Report Part II>> (Dead Trigger, Modern Combat 4, Need for Speed Most Wanted)
HTC One, 3D Games Performance Report Part I>> (Beach Buggy Blitz, Temple Run 2, Shadowgun Deadzone)
How To Run Need For Speed Most Wanted on the HTC One>>
HTC One will get OpenGL ES 3.0 support in the upcoming 4.2.2 update>>
HTC One, First Adreno 320 GPU OC 450mhz results>>
HTC One stock Adreno 320 GPU clocks revealed, 400mhz, can be increased up to 487mhz using custom kernels and fauxclock>>
Confirmed, Modern Combat 4 runs smoothly in full effects at native 1080p>>
HTC One, Adreno 320 GPU Shines in new 3DMark tests>>
HTC One, Adreno 320 GPU Shines in the new GL Benchmark 2.7 results>>
HTC One Gameplay video's analysis>>
HTC One Gameplay videos>>
Qualcomm's performance MSM-DCVS governor included on the stock HTC One, default is ondemand>>
Click to expand...
Click to collapse
CPU/GPU overclocking and underclocking comparative charts thanks to @jerrylzy
jerrylzy said:
@hamdir can we move this to #2 or #3 or whatever in the first page? so that users can see my results
I did some tests about overclocking and bottlenecks.
I know a lot of people like over clocking, but because of various bottlenecks, it is really not wise to over clock very high if improvements of benchmarks are excluded.
Overclocking tests:
Antutu:
ARM Miner:
Sunspider
3DMarks:
BaseMark X:
GFXBench:
GT Racing 2:
Real Racing 3:
Riptide GP 2
CPU Bound Tests:
From CPU Tests results, we saw magnificent increase in performance. The suggestion, however, is still not to over clock high.
at high frequencies, the cpu voltage might be so high that can burn up your cpu completely; also, high voltages+frequencies create extreme heat that are both uncomfortable for battery and human hands.
GPU Bound Tests:
We saw huge improvements in well-optimized benchmark apps, but real gaming tests do not show the same.
Overclocking to 501mhz above IMO is totally unnecessary, it creates little performance gain over 450mhz, let alone 490mhz.
It's amazing to see that my tests results reveal the same frequencies of sweet points as those @hamdir wrote in his scripts.
Bottlenecks:
I heard more than once people complaining about gaming performance on stock system/kernels. It is really not because of the performance of the chip, as @hamdir stated, it is because of thermal throttling that created a lot of bottlenecks to limit the graphics performance.
When the battery reached 40C, the cpu will be capped at 1134mhz and gpu at 320mhz; When CPU reached 56C, it will be capped at 1134mhz, and further at 1026mhz.
If your unit has difficulty in exhausting heat, the cpu might get hot quickly and your gaming performance is thus significantly reduced.
Bandwidth Bottlenecks:
When CPU freq is lower than 1026mhz, the L2 freq will also be capped at 648mhz and theoretical bandwidth will be reduced from 8.5G/s to 6.4G/s. a 30% drop in bandwidth surely resulted in about 30% drop in gaming performance.
So never cap your cpu freq below 1134mhz!!
CPU Bottlenecks:
CPU single thread performance also affect gaming performance. when GPU is running at 400mhz, CPU performance at quad core 1566mhz is very sufficient. If you enable powersaver, or your chip is throttled, your cpu freq will be capped at 1134mhz and resulted in significant performance decrease.
Click to expand...
Click to collapse
Been waiting for you to start one of these like you did on the HoX Looking forward to good news, and new games!
Wicked!
Another sweet Hamdir guide! :good::good::good:
The best part? with this tip, most games will run fine even with the Power saver function turned on! saving you both battery and thermals
Click to expand...
Click to collapse
This is amazing! So you can have Power saving on and still play games really well
I think I've now found my reason to root!
It's great that it'll do it on the fly too! Enter a game and it'll switch to the best performance, leave the game and it goes back to what it was before the game started, excellent!
yup this was my reason for root actually,
the moment i saw Beach buggy stuttering even in low resolution, almost the same between low and 1080p, I knew we will need to switch the governor
Msm dcvs does not play nice with some custom launchers like nova. The bloody thing stutters like it is 2 year old phone while scrolling through home screens on this governor. This governor too is not yet optimised for our s600 properly.
At the moment it is tradeoff either way. Or you have to manually change it each time before playing games. The only launcher that works ok with Msm dcvs is go launcher that to after some tweaking to animations.
From my HTC One, in your face.....
Funkym0nkey said:
Msm dcvs does not play nice with some custom launchers like nova. The bloody thing stutters like it is 2 year old phone while scrolling through home screens on this governor. This governor too is not yet optimised for our s600 properly.
At the moment it is tradeoff either way. Or you have to manually change it each time before playing games. The only launcher that works ok with Msm dcvs is go launcher that to after some tweaking to animations.
From my HTC One, in your face.....
Click to expand...
Click to collapse
you dont have to set it manually, Setcpu profiles will automatically switch it for you and leaves ondemand for the launcher
there is no trade off with profiles
dont jump to conclusions so quickly, its essential for gaming, well worth the cost of SetCPU
I might just root the phone and install custom recovery, I don't think I'll bother installing ARHD... not for a bit anyway.
hamdir said:
you dont have to set it manually, Setcpu profiles will automatically switch it for you and leaves ondemand for the launcher
there is no trade off with profiles
dont jump to conclusions so quickly, its essential for gaming, well worth the cost of SetCPU
Click to expand...
Click to collapse
With profiles yeah it should but it still does not play nice with 2D games. Games like Hill climb racing does not play nice even with MSM-DCVS as well. Game stutters a bit. Only performance Governor seems to help a bit and even that can cause some micro stutter in 2D games. I play 2D arcade type games and most have similar problems with One. They fly on my Nexus and SGS4 and even Oppo Find 5 which uses Krait 200. HTC or Qualcomm needs some more work on this chip.
And I purchased SetCPU long way back to support the developers.
Funkym0nkey said:
With profiles yeah it should but it still does not play nice with 2D games. Games like Hill climb racing does not play nice even with MSM-DCVS as well. Game stutters a bit. Only performance Governor seems to help a bit and even that can cause some micro stutter in 2D games. I play 2D arcade type games and most have similar problems with One. They fly on my Nexus and SGS4 and even Oppo Find 5 which uses Krait 200. HTC or Qualcomm needs some more work on this chip.
And I purchased SetCPU long way back to support the developers.
Click to expand...
Click to collapse
well it seems to differ between games, for example msm-dcvs does great for beach buggy, while i noticed MC4 runs very well using ondemand
this is the benefit for porfiles you can enable it for the games that benefits from it
added ondemand tweaks to OP
I'm gonna assume OnDemand locks 2 cores like the HoX, or is ondemand finally ondemand like it should be?
ArmedandDangerous said:
I'm gonna assume OnDemand locks 2 cores like the HoX, or is ondemand finally ondemand like it should be?
Click to expand...
Click to collapse
it wasn't the fault of ondemand, it was nvidia's fault where the maximum clock speed step is single core, so when the CPU boosted to max it actually locked into a single core crippling performance, non of this exist on qualcomm's side
added recommended ondemand values to OP
what about battery life on msm governor?
shiningarmor said:
what about battery life on msm governor?
Click to expand...
Click to collapse
natural to assume its going to be worse, this is why i never suggested to use it all the time and instead use profiles to call it for your selected games
Hamdir, have you tried Faux's Intellidemand? It doesn't seem bad for gaming, but haven't tested it too much
Pointlol said:
Hamdir, have you tried Faux's Intellidemand? It doesn't seem bad for gaming, but haven't tested it too much
Click to expand...
Click to collapse
right now im focused on reviewing stock kernel, later i might have a look at custom kernels
but after the strange death of my One X, im not too excited to mess with kernels
It seems some people here have not 100% understood (or fully read:banghead: ) Hamdirs post.
You can use setcpu to switch between governors per app. For example, as default it is standard. Press the icon for the game you want to play and the governor will change AUTOMATICALLY while playing. End the game and setcpu will switch back AUTOMATICALLY.
Thanks for the info Hamdir. Seems its time to root.
Sent from my HTC One using Tapatalk 2
hamdir said:
right now im focused on reviewing stock kernel, later i might have a look at custom kernels
but after the strange death of my One X, im not too excited to mess with kernels
Click to expand...
Click to collapse
Cool. I wouldn't worry about that though since it's more of a freak case honestly. There are so many people using custom kernels for extended periods without any issues
ok i did some more tests
three things for sure
- also it's delayed, but throttling does eventually happens, i noticed when testing few games in a row performance suffered
- the 1.28 ondemand values in the OP are a lot better for gaming, so if you don't like to bother with profiles and SetCPU, simply changing back ondemand to the recommended values will do
- not all games are running well with MSM-DCVS, for example i suspect MC4 is running better with the tweaked ondemand (maybe MSM-DCVS is driving it to throttle too quick), NFSMW running the same on both, Beach buggy running much better with the tweaked ondemand but locked smooth with MSM-DCVS, another game running better with this governor is RR3
conclusion for now, tweak your ondemand back to the values in OP if you value your gaming the most at the slight loss of battery life, you can use profiles and MSM-DCVS for suffering games like Beach Buggy Blitz (i wish SetCPU profiles allows specific governor tweaks per profile)
i think any optimized games for the s600 (like MC4) will not require us to switch the governor (perphaps its switching on its own), this trick is only needed for games that so far do not specifically support our device or SOC
one more thing, it might be my imagination, my previous PVS2 was definitely running cooler and hence smoother than my current PVS3, maybe the GPU has it's own binning?
A Big Big Thank you hamdir !
Envoyé depuis mon HTC One avec Tapatalk

How To: Improve Device Performance w/o Overclocking [root]

I've been using XBMC on the FireTV fairly successfully but wished it was a bit snappier. Thinking back to my days with the Galaxy S3, I remembered a great app called Seeder.
From the Play Store listing:
Seeder is a service for root users. It assists the kernel in "topping off" the entropy pool by re-seeding it with data from the non-blocking (high performance) random device. Optionally, it can also help alleviate MMC I/O contention by extending the I/O queue, allowing the I/O scheduler to make better decisions, and combine more writes.
After installing and enabling the moderate option on my FireTV, XBMC loads faster and navigates through menus much smoother. An essential app and well worth the purchase in my opinion.
Setup:
Root your FireTV (http://forum.xda-developers.com/showthread.php?t=2783805)
Install Google Play Store (http://www.aftvnews.com/how-to-install-the-google-play-store-on-the-amazon-fire-tv/)
Download Seeder (https://play.google.com/store/apps/details?id=com.lcis.seeder&hl=en)
Give Seeder root permissions
Select Start on Boot
Choose Moderate
Profit!
Seeder ($2.50) - https://play.google.com/store/apps/details?id=com.lcis.seeder&hl=en
Thanks for your tip. Does Anyone else recommends it? I am quite satisfied with the firetv performance but i am all forward with improvements
Enviado de meu GT-N7100 usando Tapatalk
It does boost performance,even with my "overclocked" settings already made.
I quote it because I can't actually overclock the Fire TV because the lack of unlocked bootloader.
I can only change governor types to "Performance" on GPU,and "interactive" on all four CPU cores to boost them a bit.
I also have two booster apps for visual and touch performance increases,which prove to work really well.
I want to OC the GPU to a minimum 400Mhz and maximum 500Mhz to match the stronger equivalent GPU's 450Mhz and 550Mhz OC settings.
Maybe also get the CPUs on at least 1.9 Ghz or 2.0Ghz as the maximum with 500Mhz as the forced minimum.
When bootloader unlocking is possible,I want to find a fix for the kernel panic rebooting issue with Reicast caused by instability with certain Android ROMs.
retroben said:
It does boost performance,even with my "overclocked" settings already made.
I quote it because I can't actually overclock the Fire TV because the lack of unlocked bootloader.
I can only change governor types to "Performance" on GPU,and "interactive" on all four CPU cores to boost them a bit.
I also have two booster apps for visual and touch performance increases,which prove to work really well.
I want to OC the GPU to a minimum 400Mhz and maximum 500Mhz to match the stronger equivalent GPU's 450Mhz and 550Mhz OC settings.
Maybe also get the CPUs on at least 1.9 Ghz or 2.0Ghz as the maximum with 500Mhz as the forced minimum.
When bootloader unlocking is possible,I want to find a fix for the kernel panic rebooting issue with Reicast caused by instability with certain Android ROMs.
Click to expand...
Click to collapse
Nothing...NOTHING about what you're doing is even remotely considered overclocking....
OC is pushing hardware past it's max performance out of the box or standard state. CPU's downclock themselves for power savings. You telling it to run at a different minimum isn't OC'ing, you're just telling it to not downclock itself so far.
Spykez0129 said:
Nothing...NOTHING about what you're doing is even remotely considered overclocking....
OC is pushing hardware past it's max performance out of the box or standard state. CPU's downclock themselves for power savings. You telling it to run at a different minimum isn't OC'ing, you're just telling it to not downclock itself so far.
Click to expand...
Click to collapse
Lighten up. In case you missed it he said he can't overclock and even pointed out his use of quotes.
If you want to be nit picky overclocking is not pushing hardware past it's max performance but TO it. Overclocking takes the hardware past factory spec, which you could call "standard state" but that is never near the max. It is set for stability and longevity not necessarily the fastest performance.
Intel used to push a new chip until it crashed then dropped it a notch and called it XGHz. It's why overclocking was so limited without changing voltage and needing extra and even extreme cooling. AMD always designed a chip to have plenty of room to grow and why they support overclocking and enabling extra cores.
AMD now has some extremely powerful multicore CPU processors up to 5.0Ghz!
It's called AMD FX-9590.
Beat that,intel!
Confirmed. . Seeder 2.0 actually does speed up the just about everything from watching streaming movies to using XBMC, except your Internet. . Highly recommended. Use the setting above and trickster mod.
retroben said:
AMD now has some extremely powerful multicore CPU processors up to 5.0Ghz!
It's called AMD FX-9590.
Beat that,intel!
Click to expand...
Click to collapse
intel destroys amd! and thats a fact! a 4.4 ghz i7 would still beat that 5 ghz amd in benchmarks! so its already been done
rontonomo said:
intel destroys amd! and thats a fact! a 4.4 ghz i7 would still beat that 5 ghz amd in benchmarks! so its already been done
Click to expand...
Click to collapse
Not to go further off topic but benchmarks mean literally squat VS real world use.

Using Trickster MOD on stock kernals

OK, I have been tweaking my stock 4.2.2 ROM a bit further to make the affinity more robust.
As with many stock ROMs factory tweaks to make multi core CPUs have more than one core or all jump into overdrive when at a particular load has been reached by CPU0.
My tweak is to make pegasusq work more like on demand. Since we all think pegasusq is properly set tovconcerve battery power, many don't see how bad they are misled in how it rally functions.
Example... Samsung helicopter video test running on stock video player in window overlay over Trickster MOD in info panel.
If you watch the frequencys on both governors, you will see ondemand is best for watching most videos.
As it stays constant at 200Mhz on all 4 cores. While pegasusq will jump up and down the frequency range.
In tweaking pegasusq with Trickster MOD, I have found that I can limit how many cores operate and when they trigger to function. I don't recommend setting the primary core to remain as the only active core when loads are very h7gh.
As androids threading requires at least two cores to be functional on multi core kernels.
For my tweak, I found allowing 3 cores to become active under moderate loads will allow proper playback of all videos, when keeping power drain to a minimum.
At best ondemand will utilize a total of 800Mhz of CPU power 200MHZ x 4. At best pegasusq will have1600Mhz of CPU power. 400Mhz x 4. Why does pegasusq utilize so much in needed power as a minimum, I have no idea.
After tweaking, the CPU utilization ranges from 200Mhz x 3 to 400Mhz x 3, while 70% of the time it us at 300Mhz x 3.
Though, there is a draw back to having some apps that do not push loads or threads to all cores. titanium backup will only use all cores when archiving. Scanning and compairing will be random CPU utilization.
Because, my tweak allows one core to operate during initial loads below 60%, there will be some starting lag with minor loads, mostly noticeable when slow scrolling when reading pages.

Mali T760MP8 GPU has unused 852 Mhz clock state

According to the review of Anandtech, the Mali T760 GPU on our Galaxy S6 has a unused 852 Mhz clock state. Normal speed now is 772 Mhz. Hopefully, this can be enabled in future in custom kernels to better drive those 2k displays. I wonder why they didn't enable it default as the SoC on 14nm should handle the temperature. More speed Ahead i hope.
"There's also a suspicion that Samsung was ready to go higher to compete with other vendors though, as we can see evidence of an 852 MHz clock state that is unused. Unfortunately deeply testing this SoC isn’t possible at this time as doing so would require disassembling the phone"
http://www.anandtech.com/show/9146/the-samsung-galaxy-s6-and-s6-edge-review/2
That's cool! Maybe they didn't enable it to safe battery?
Beukhof1 said:
That's cool! Maybe they didn't enable it to safe battery?
Click to expand...
Click to collapse
Perhaps, with custom kernel we can maybe turn off 2 A57 cores and ramp up to MAX GPU 852 Mhz, that'll be sweet.
Actually the test on the battery page proved that the GPU is throtteling when it targets the maxium frequency
"The one major issue here that is visible from the FPS vs time graph is that Samsung continues to struggle with graceful throttling as the GPU attempts to always target maximum performance, which causes a strong rise and fall in frame rate as the GPU goes through periods of high and low clock speeds determined by the thermal governor."
kemo6600 said:
Actually the test on the battery page proved that the GPU is throtteling when it targets the maxium frequency
"The one major issue here that is visible from the FPS vs time graph is that Samsung continues to struggle with graceful throttling as the GPU attempts to always target maximum performance, which causes a strong rise and fall in frame rate as the GPU goes through periods of high and low clock speeds determined by the thermal governor."
Click to expand...
Click to collapse
I think this only happens on sustained push by the benchmark app, i doubt it'll be same behaviour on real world usage. But in any case custom kernels will provide various tweaks and alternative governors to try.
They have also hidden 4 frequencies on the larger cores. They are at 2.2 even though they can go up to 2.5.
guaneet said:
They have also hidden 4 frequencies on the larger cores. They are at 2.2 even though they can go up to 2.5.
Click to expand...
Click to collapse
Exynos 2.1Ghz not 2.2Ghz...
SD810 2.0Ghz
Sent from my SM-G920F
ama3654 said:
I think this only happens on sustained push by the benchmark app, i doubt it'll be same behaviour on real world usage. But in any case custom kernels will provide various tweaks and alternative governors to try.
Click to expand...
Click to collapse
DVFS is sadly in effect all the time limiting the frequency. You can check it yourself by opening CPU-Z in multiwindow (only way to display frequency of the mali gpu) and running a game. Only thing that is going to let users run customised settings is xposed with DVFS disabler + custom kernel.

Overclocking possible?

I want to raise question is it possible to overclock the CPU, or GPU or memory speed. We all know that ze550kl / z00l performance with msm8916. Is almost in the limit to run apps and games, wanted to know if possible or not, and if there is any development has this respect. I like the device and it is great but it is clear that it is getting weak in the matter of hardware, if someone can work in this respect to give a breath / power to our device
Ermes.mt/brasil said:
I want to raise question is it possible to overclock the CPU, or GPU or memory speed. We all know that ze550kl / z00l performance with msm8916. Is almost in the limit to run apps and games, wanted to know if possible or not, and if there is any development has this respect. I like the device and it is great but it is clear that it is getting weak in the matter of hardware, if someone can work in this respect to give a breath / power to our device
Click to expand...
Click to collapse
i don't think so , if its possible to overclock the processor to its frequency,
you can costumize it too max frequency of it or to lower , as u need
But if is then i would love like to know too
I am already extracting the maximum, from him that I can of him, already put using ex kernel, with governor ordenad, frequency of 200mhz @ 12000mhz, and simple GPU ordered frequency of 200mhz to 400mhz, active zram of 512mb, and entropy of 128/256, then Of course, here with standard frequency of the paddle extracting nothing more than that, the problem and that we have a large bottleneck in memory lpddr3 of 533mhz, that opera and 32bit, there is a single channel giving bandwidth of 4.2gb / s that It has to be split between CPU and GPU. What is clearly one of the pro soc power limiter, I do not know much about the arm architecture, but I can not do over clock in lpddr3 memory, since I did not see any software or tutoring Citing this. Although this would be a solution, if you do over clock in the CPU or ns GPU will force the clock controller up what will increase the memory performance consequently, something else, not good will lock the clock at maximum in 1200mhz and GPU at 400mhz, as there will be a large power consumption and the performance will be limited by the cords of the tempering control and the low frequency of the RAM, # excuse me to have been so far more enthusiastic about hardware,
even with my old htc explorer i could increase cpu clocsk from 600mhz to 900mhz why we cant do it on zenfone 2 just we need good developer and kernel
it's up to the hardware
If you look at the specs from qualcom it has a max speed and not every device is possible to reach the max, but if you have the proper kernel you can reach that speed and "overclock"

Categories

Resources