[Xiaomi Mi A1 Guides, News, & Discussion] gougous3:
Yo fellas, its your"rooting enthusiast SenpaiYank ;)(lmao rooting enthusiast, as if such a thing exists)​

Well, as you know, our device has a quite outdated and not so beefy (at all) SoC, the snapdragon 625. While its CPU is not tremendously ridiculously bad, the GPU quite is. This is not a prolem to people who don't care about games but a very prominent one on the other side.

With the help of this trick, tweak, whatever you decide to call it, you'll practically be able to play any game out there that you're not able to or play that same game at a higher setting than you would. The trick consists basically on lowering the screen resolution through a script, trading some of the visual quality for a noticeable night day performance boost. It's a common trick that works on other devices too and I've yet to find a game that had problems with it.

I'm using "profile" scripts to achieve it so you can change it on the go. I feel that way is the most ergonomic and quick one. Just run each script with root permissions according to your need. I recommend FX file explorer. Wanna play a graphically intensive game? Switch to gaming profile. Wanna do something else besides gaming? Switch to the default one.

As I side note, the trick can be done on unrooted users too but you'll need a computer and you'll have to apply the gaming profile permanently (unless you're willing to repeat the procedure whenever you want to go back to default). I can talk about it if you guys get interested on it.

Enough blah blah, how do I do it ?​

1st - Grab both of them (default.sh and gaming.sh)

2nd - Install (in case you don't have it), open and type this on the Terminal Emulator app:

su

To attain root access (not sure if needed but, just in case)

wm density

To get your current screen density value at 1080p (override density field).

Lets imagine you got 432.

3rd - Choose and calculate a new resolution for your gaming profile

So now lets ge to the actual work. Our device native resolution is 1080p (1920x1080) and we want to lower that.

I lower it to 810p (not a standard lmao) which is 75% of 1080p (1440x810) as it gives me agood balance between visual quality and performance. You can go even lower to something like 50% if you're ambituous about performance. At 810p I can expect a minimum of 25% performance uplift (not FPS).

So, to get your gaming profile resolution DPI, you multiply the relative percentage of it by the default profile resolution DPI.

[COLOR="darkred"]432[/COLOR] * [COLOR="RoyalBlue"]0.75[/COLOR] = [COLOR="Blue"]324[/COLOR]

This value will be your gaming resolution DPI a.k.a. the resolution from your gaming mode script.

4th - Edit default.sh and gaming.sh, apply the new values and save the files somewhere.

default.sh script should contain the values of your default resolution, in this case, 1920x1080 and 432. Size for resolution and density for DPI.

gaming.sh script should contain the values of your gaming profile resolution, in this case, 1440x810 and 324.

VOILÁ​

To make the process much much easier and quicker, I use FX file explorer and its shortcut feature so I can switch between both profiles from my home screen pretty easily. Whenever I'm not playing a demanding game Is stick to the default mode, whenever I'm playing a graphically intensive game, I switch to the gaming mode and enjoy the improvement.

Cool, cool. So, is there an actual improvement in performance or is this just one of these so called placebo tricks ?​

It's definately not placebo and probably the most effective way around of increasing gaming performance!

I've tried to record a test with and without the trick (and failed, it doesn't look as effective in the video but I'll leave it here anyway). Take it with not 2 but 3 grains of salt due to all the uncontrallable factors that involved the scene, the actual gain in practical use is much more noticeable. The benchmark takes place in the super duper hot (pun intended) looking and intensive game, Shadowgun Legends.

On the first video, the device is running the Extreme Kernel, without the tweak, along a CPU cap of 2.5Ghz and a GPU cap of 855Mhz (or something around that). I didn't increase it further to prevent the device from overheating (which it already practically was) and because at a higher GPU clock, I would get arctifacts (my device does not support the 922Mhz frequency).

http://sendvid.com/zi9l8q44

On the second video, the device is running a beta batch of the velocity kernel, with the tweak, along a CPU cap of 1.9Ghz and GPU cap of 672Mhz. I ran the device at a lower speed so you can see how useful the improvement can also be.

http://sendvid.com/fqum12jw

I ran the game at the high graphical setting (30 FPS max) on one of its most intesive scenarios and were at very high ambient temperatures (30C) so again, take the videos with a grain of salt. Used an external gamepad to play and used Scrcpy to record the screen (through wifi so, the quality and framerate from the recording is considerably worse than the actual one). You should also remember the 5-6 FPS strain of capturing the screen.

I also used game bench to monitor the framerate (top right corner) where the last 1 minute of each benchmark were with the screen capturing off. Once again, sorry for the bad quality of the recordings, I'll leave a screenshot of the game bench results.

Not willing to write a outro so, yeah, basically thats it :P