Game AI (Automatic Improvement)

 

    Game Ai is a feature to provide automatic improvements when running 'game' applications or applications that are in the game list at "/proc/d8g/game_ai_list" and  "/proc/d8g/game_ai_list_default". Game Ai by default limits the maximum value on big CPU / prime CPU when user isn't running application in game_ai_list, this aims to save more power usage when used daily. Game Ai are made specifically for non-init users, and also work on non-root users, game ai support per-app with json config. game ai uses the open file reading method to working.

Feature :
- Set Oprofile
- Set Cpufreq Governor
- Set Thermal sconfig
- Set Adreno Boost
- Set Cpuset Assist Top-App
- Set Uclamp Assist Top-App
- Set Dynamic Charger
- Detect usb plug unplug to set thermal


Game Ai use oprofile to set the level of performance mode
Profile mode : (oprofile)
0 = balance (def)
1 = performance (Max)
2 = game
3 = game plus
4 = battery (non boost)


GMU Boost
enable on oprofile 1-3

Load Balance
0 & 4 : Reduce latency load balance
1 - 3 : Use stock load balance


Game Mode (gm) Cpuset/Uclamp Assist Top-App
0 : cpuset 0-6 uclamp boost off
1 : cpuset 0-7 uclamp boost on



Game Ai: drop fps method (exp sm8250)
Non Mark :
- default limit cpufreq max 2.6 GHz
- oprofile 2
- On drop fps
     RR = 60
     ->  if fps drop under 40 fps set cpufreq max to 3.2 GHz
     ->  if fps drop under 50 fps set cpufreq max to 2.8 GHz
     RR > 60
     ->  if fps drop to RR-30 set cpufreq max to 3.2 GHz
     ->  if fps drop to RR-20 set cpufreq max to 2.8 GHz
- Non Drop fps
     ->  if fps not drop set cpufreq max 2.6 GHz


Mark :
- default cpufreq max 3.2 GHz
- default oprofile 1
- adreno boost 3



How to use game ai?
game ai uses json config. with the following format

Game Ai List method
--------------------------------
pkg : packageName
gm : game mode (1/0)
op : oprofile (0-4)
gov : cpu governor (schedutil , game, performance)
t : thermal (-1 - 16)
gpu : adrenoboost (0-3)


add or edit on
/proc/d8g/game_ai_list

don't edit /proc/d8g/game_ai_list_defualt
You can copy from line in this list to help

exp game app : PUBG
{"pkg": "com.tencent.ig", "gm": 1, "op": 2, "gov": "game", "t": 16, "gpu": 1}

exp non game app : whatapp
{"pkg": "com.whatapp", "gm": 0, "op": 0, "gov": "schedutil", "t": 8, "gpu": 0}

for each new list, mark the split with enter (new line)
exp :
{"pkg": "com.tencent.ig", "gm": 1, "op": 2, "gov": "game", "t": 16, "gpu": 1}
{"pkg": "com.whatapp", "gm": 0, "op": 0, "gov": "schedutil", "t": 8, "gpu": 0}


exp for shell script (.sh):
#!/bin/sh
#

dir_main=/proc/d8g
game_list="{\"pkg\": \"com.tencent.ig\", \"gm\": 1, \"op\": 2, \"gov\": \"game\", \"t\": 16, \"gpu\": 1}\n
{\"pkg\": \"com.whatapp\", \"gm\": 0, \"op\": 0, \"gov\": \"schedutil\", \"t\": 8, \"gpu\": 0}"

echo -e $game_list > $dir_main/game_ai_list



Game List
===============================
op : 0 - 3
thermal : 10 / 16
gpu boost : 0 - 3


#default (op : 2)
com.tencent.ig
com.pubg.krmobile
com.rekoo.pubgm
com.pubg.imobile
com.pubg.newstate
com.garena.game.codm
callofduty
com.gameloft.android.ANMP.GloftA
com.dts.freefireth
com.garena.game.lmjx
com.GlobalSoFunny.Sausage
com.levelinfinite.sgameGlobal


#Low (op : 0)
com.mobile.legends
com.supercell.clashofclans


#gpu focus (op : 3)
com.HoYoverse.hkrpgoversea
com.netease.mrzhna
com.xdg.and.eu.lifeafter
com.kurogame.wutheringwaves.global
com.miHoYo.GenshinImpact
com.hoyoverse.cloudgames.GenshinImpact
com.blizzard.diablo.immortal
com.carxtech.sr
com.tencent.nfsonline
com.ea.gp.nfsm
com.slsm.an.en
com.pearlabyss.blackdesertm
com.nebulajoy.act.dmcpoc
com.nebulajoy.nero.opensdk
com.newtypegames.dl2hmt
com.HoYoverse.Nap
jp.konami.pesam


#benchmark (op : 1)
skynet.cputhrottlingtest
com.primatelabs.geekbench5
com.primatelabs.geekbench6
com.antutu.ABenchMark
com.antutu.benchmark.full
com.futuremark.dmandroid.application
com.Saplin.CPDT
org.ppsspp.ppsspp
com.ppssppgold.pspemulator.ppssppgames
org.dolphinemu.dolphinemu
com.dsemu.drastic
com.emulatorpro.gba.gameboy
com.thz.nostal.gb.retro.gbc.gba.emulator
com.gba.retro2024
com.android.test.uibench
com.nostalgiaemulators.gbalite



Sosmed List
===============================
op : 0
thermal : 8
gpu boost : 0


com.whatsapp
org.telegram.messenger
tw.nekomimi.nekogram
com.radolyn.ayugram
com.thunderdog.challegram
app.nicegram
uz.unnarsx.cherrygram
com.facebook.lite
com.facebook.katana
com.facebook.orca
com.instagram.android
com.instagram.barcelona
com.instagram.lite
com.tencent.mm
jp.naver.line.android
com.twitter.android
com.ss.android.ugc.trill
com.discord
com.ime.android
com.imo.android.imoim
com.michatapp.im
com.shopee.id
us.zoom.videomeetings
app.revanced.android.youtube
app.android.youtube
com.gojek.app
com.grabtaxi.passanger

Popular posts from this blog

D8G Kernel V1.7 - The Real of Gamer - POCO F2 Pro | POCO F3 | REDMI K40 | POCO F4 | REDMI K40S | MI10T | Pro

D8G Kernel V1.8 - The Real of Gamer - POCO F1 | POCO F2 Pro | POCO F3 | REDMI K40 | POCO F4 | REDMI K40S | MI10T | Pro

D8G Kernel V5.5 - Oxygen - Xiaomi SDM845