yashsingh1/xdaforums huggingface dataset:
[Galaxy Ace II Android Development] Sidebandit:
ive tested 96/48 128/64 256/96. I would have to go with the original value 128/64. When getting to the stage of upping the heapsize to 256 or 192 to install to run a large app-game there's likely to be ram issues. In addition, this device has slow io data transfer loading + weak cpu/gpu combination. 90+% of the time 128mb works great. My ace2 is set at 128mb 64mb combo. Google documentation recommended value for a device around 500mb ram standard screen density is 96/48 of which i tried. Performance suffered badly on a game using 300mb ram, stuttering, frame rate drop from 36fps to 25. Returned value to your default set and frame rate went backup. Maybe a more aggressive lmk setting may have smoothed things out at 96/48, a little?

128mb heap 64mb growth ? manually adjust on rare occasions for very large apps.

Another consideration when talking of large modern games is the mali mp400. Single core obsolete lacks many graphical extensions-instructions that modern games use for special effects/lighting. So, you could install game use lmk+zram to help the low ram and face graphic artifacts. There was a few in war robots and major on s3 mini running pubg lite.
[Galaxy Ace II Android Development] ace2nutzer:
New Builds are Up !!

Changelog:

Kernel 20190918:

CPU/GPU: updated governors

Charger: tiny update

Sweep2Wake: Fixed Touchscreen not waking up on incoming notification or call (if Sweep2Wake was enabled)

Mali-GPU-400: Fixed memory allocation failures - alloc_order 6 --> 0 / block_size 256 KB --> 4 KB

Re-added zRam Support with fast LZ4 Compressor

Set GPU/SXA governor up_threshold to 95 % for better powersavings

CPU: added a better control for managing CPU suspend_freqs - (for more info check the kernel release notes in the thread)

Bug Fixes

Source cleanup

A2N Kernel Control V6.8

Misc: added zRam switch and

swappiness control

Full overhaul and

Bug Fixes

CM11 ROM 20190918:

Updated build.prop - improved dalvik heap

incl. A2N Kernel 20190918 - normal version

Release Notes:

If u've the Full Version of the A2N Kernel Control App then there's no special interaction from your side.

Anyway i recommend to read my comment in /system/etc/init.d/99_user especially if u're using any custom

init.d scripts.

Otherwise u're informed that suspend_min_freq = 200 MHz need to be enabled in /system/etc/init.d/99_user

This is to obtain the following cpu_min_freq logic:

With Screen ON the min_freq should be 400 MHz because 200 MHz is laggy.

And with Screen OFF it should be 200 MHz.

If u've the Full Version, the App will do that for you automatically, otherwise if u do nothing then

min_freq is always 400 MHz.

Thanks for your tests ! :good:

Honestly it's not very practicable solution to change Dalvik heap very often ... it's not a tunable that can be changed on the fly without to reboot the phone. If u change the heap size u've to reboot and wipe dalvik-cache every time u change it. And that's a quite annoying task. :o

Well finally i've decided to use the following dalvik config:

dalvik.vm.heapsize=192m
dalvik.vm.heapgrowthlimit=48m

and i've removed the other dalvik flags like

dalvik.vm.heapmaxfree

in order to take the default from Sources.

I think this is a good Combo that should fit for every situation. :cool:
[Galaxy Ace II Android Development] Mohammad Jebreeni:
Hey again Ace2nutzer, I have a question please: Is it possible to install Lineage OS 15.1 of Sergeyl's with your this Kernel? And if yes, how, and can it be done without removing the OS and going back to stock then installing the OS again?
[Galaxy Ace II Android Development] Sidebandit:
[MENTION=5840412]ace2nutzer[/MENTION] Once again thanks for your fine work and persistence with ace2 ?

Preliminary test results. For the moment i kept my default dalvik values and original rom. I will try the new values later on.

Quick update on KSM performance = no change (previous posts)

Zram = not tested yet but interested on your explanation in a2n kernel control app, " if you set to zero then it will only swap pages....................." = No battery drain when free ram above 6mb? Looking forward to further tests ?

Good job!

Update. changed dalvik to 192/96.

Set zram multiple swapiness settings but doesn't appear to be working?

COLUMNS=72;LINES=17;export COLUMNS LINES;

u0_a47@codina:/ $ free

total used free shared buffers cached

Mem: 646696 373004 273692 0 3804 142688

-/+ buffers/cache: 226512 420184

Swap: 0 0 0

u0_a47@codina:/ $

Have other changes been made to ROM apart from those listed above?
[Galaxy Ace II Android Development] Sidebandit:
I don't think this kernel is compatible. I don't know what kernel Sergeyl uses but a Chrono version would be the best. (if you want to change).
[Galaxy Ace II Android Development] Mohammad Jebreeni:
I like Chrono's Kernel but I'd like to try the A2N Kernel as well :P
[Galaxy Ace II Android Development] ace2nutzer:
A2N Kernel works only up to Android 4.4.4 for now.

What do u expect from KSM ??

it should be 4 MB .. was a typo. Yes, as i said zRam only drains battery when it's actually compressing or decompressing RAM.

So as long the value "used" from the line "Swap" is not changed, there will be no draining at all.

No, zRam Support is completely in Kernel ... but requires the zRam script to be placed in /system/etc/A2N....

The Kernel installer script do this.

So if u flashed latest kernel and updated the App to 6.8 and zRam is not working, then u probably changed something in the ROM.

For instance, it needs SU permission (advanced root is not needed for zRam) and requires compatible Busybox tool. (the default one from the CM11 package is fine)
[Galaxy Ace II Android Development] Sidebandit:
[MENTION=5840412]ace2nutzer[/MENTION] KSM, to save more ram. OK the next part which is hard to explain. First off, i got it to work, i adjusted the value i wanted then turned off zram and re-switched it on again. Next the value which appears to be amount of data compressed (higher) not when zram kicks in. From my tests a low setting when running a large app will kill the app. Where as running the large app without zram results in not being killed. Best of all running zram at a 100% gave better performance + smoothness. Again for me the higher % the better performance. Lower % worst performance than with it off. zram block = 210mb with large app 180mb of the zram block was used. What is the compression ration used 2.1 or 3.1? so 180mb used =
[Galaxy Ace II Android Development] ace2nutzer:
Nope :) KSM is not a RAM saver.

Kernel SamePage Merging ... nothing more.

It just scans the whole ram for same pages and merge them to just one. It's not a real ram compression.

Om Stock 4.1.2 Dalvik seems to be quite wasteful on RAM footprint. So there's too much tashed / duplicates on RAM .. so KSM have to do more merging ... resulting on higher RAM shared thanks to KSM .. but it doesn't mean, higher Value is better, higher Values only means the RAM is too bas used. so KSM hellps here.

As we can see on Android 4 and higher - KSM merged pages in MB never is higher than 20 - 30 MB ... even on my S8 Android 9 with 4 GB RAM, newer kernel version and more modern KSM driver ... but ... :highfive:

Yes.. thats right ... Value 0 will only swap to avoid an OOM condition. It was also meant to save battery. :D

Yes right, but of cost of some more battery usage. But who knows .. maybe it's not that high draining ... the LZ4 Compressor is very efficient and the preffered one for Android Mobile Phones in Custom Kernels.

So swappiness = 100 % is best ?

Honestly i don't have it in my mind what Compression ratio has the LZ4 Compressor, but i think u can google it. :)

PS: forget to mention, did u also re-enabled the DDR OC + Advanced root ??

Those 2 Features needs to re-enable after every kernel update !
[Galaxy Ace II Android Development] Sidebandit:
Two pics below explain the swap setting better on my tests. One was set at 100 and the other at 15. At 15 the app got killed.
[Galaxy Ace II Android Development] ace2nutzer:
All right, thanks :good: :)

So next release it's swappiness = 100 by default. :cool:

btw: can u pls test swappiness = 60 ?? which is the Linux default ... but i don't think that it'll work smoother than 100.
[Galaxy Ace II Android Development] Sidebandit:
On Samsung devices I've owned 60 seems to be the default setting. Hard core gaming, major multitasking the general consensus is 100.

Im guessing here, the number of mb contained in the zram block when decompressed has to be larger than the zram block to be of any gain? In my case using a swap value of 15 (see pic previous post) cost me ram causing my app to be killed. At 15 the zram block was virtually empty - wasted ram doing nothing. Two figures being banded around the net are 2/1 - 3/1 ratio. So from one of my uploaded pics above, 190mb compressed ram by a ratio of 3/1 plus remaining free ram is a big gain.
[Galaxy Ace II Android Development] ace2nutzer:
So maybe we can remove the swappiness control ? - since the best way is to keep it at 100... what do u think?

As for the zRam Size, it's RAM_SIZE / 3. (631 MB / 3 = 210 MB)

The "wasted ram" (when zRam is placed in RAM ... but the "used" Value is "0") is only 0,34 MB RAM. :)
[Galaxy Ace II Android Development] andressnb9:
Help :)

Hello. I hope you could help me with this. I have recently discovered the world of Custom ROMs. I currently own a Galaxy Ace II GT-I8160L with Android 2.3.6. I have read many many post about software updates and the risks they involve. Since this is a very old phone, I am glad to see that you are still updating the software content and release new kernels and versions, which is super cool. I wanted to know if you advised me to update to 4.1.2 (stock) which I have read is very very slow or to install the custom ROM you provide in the other thread. The reason why I want to update is becayse 2.3.6 is very old and there varely any compatibility and I cannot afford a new phone in my country. Would the 4.1.2 work better/faster witht he kernel you have provided and it is safer to update to stock with Odin, rather than the cusom one? Or is he custom one too risky. My mother's phone (same model) got updated to a custom 6.0 ROM, and it got bricked after one month (it restarted from time to time and you werent able to set the sd as the main memory, maybe it wasnt correctly installed). Sorry to ask so many questions, but I would like an expert opinion before doing anything badly. Thank you in advace. :)
[Galaxy Ace II Android Development] ace2nutzer:
@ up

Welcome :)

I suggest to start with Android 4.1.2:

https://xdaforums.com/galaxy-ace/ace-2-develop/kernel-ace2nutzer-kernel-20170118-stable-t3541451

start with step 0.

I suggest to flash first the I8160L-3-parted ROM for your I8160L latin version.

Then the latest I8160L ROM with ODIN .. you can find the ROM's in the FTP folder Stock_ROM.

If u want to go 99% save (100% is impossible) then just make sure you have an original USB Cable without any loose contact.

Also make sure to connect with a USB Port that doesn't have any loose contact !!

If the contact between PC and Phone is interrupted while it's flashing the bootloader, then you will have a soft-bricked Phone.

(u can watch the ODIN screen while flashing .. it'll show u what partition it's actually flashing ... BOOT is the most important one., also keep attention to flash only software that are made for your phone model ... so never flash with ODIN a ROM that is for I8160 or I8160P on your I8160L model ... except the Custom ROM or custom ROM where it's not a problem if u flash the ROM or Kernel made for I8160 .. because they are universal, only exception would be if u want later to flash CM11 over the 4.1.2 ... then u've at the end to flash the I8160L Support.zip.. .otherwise u can't make calls, but that's all described in the Installations steps, so don't worry!)
[Galaxy Ace II Android Development] andressnb9:
Ohh, thanks. I understand better now. I will try the 4.1.2 then with your kernel. If it runs ok, I will keep it so I don't risk it. I once tried the original 4.1.1 on my mother's phone and it was too slow, so I hope the new kernel helps a bit. Thank you for your answer :D
[Galaxy Ace II Android Development] ace2nutzer:
4.1.2 Stock ROM with Stock Kernel never worked well because the stock kernel was outdated and buggy. :)

With A2N Kernel it'll work properly. :cowboy:

Have Fun !
[Galaxy Ace II Android Development] andressnb9:
Thank you so much!! I installed the one that you recommended (rooted kernel) and it runs super smoothly so far. Thanks a lot!!! This should be enough for a while. Only one question, I suppose I have a rooted version now? Or do I need to do any extra step? I ask because I tried to open superuser (I think) and it opened the recovery and asked if I wanted to root. I said no, for now. I don't mind not having it rooted, I am just curious. And again, thanks a lot. You are a life-saver, hehe :good::)
[Galaxy Ace II Android Development] ace2nutzer:
If u need ROOT, u only need to flash the rooted kernel version.

In cwm always say no for root. (it's outdated cwm ..)

Then in the system u open the app SuperUser .. it will want to update the su binary .. u say Yes --> normal method ... and that's it !
[Galaxy Ace II Android Development] Sidebandit:
Many thanks for all the info!

I don't have your android knowledge but ? worked better for me. I don't a slider is needed plus with lower settings it made performance worst.

KSM i here what you're saying, your rom is alot more efficient than sammy stock ?
[Galaxy Ace II Android Development] gepel:
Hello Ace2Nutzer, i gave some tests on build,prop and as i have seen i had much sharper response on ace2 when i changed the heap size to static 48mb. As im not sure about my config cause i have delete almost all entries about vm.xxxx could you prepare a complete build,prop with the least required config for static heap size equal to 48mb .. thanks !!
[Galaxy Ace II Android Development] Morricorne:
This rom is still active i See. I plan buy used Ace 2 for backup phone. With 8.1 custom rom. But i remember when i have old Ace 2 around 2016/2017 with cm11 from ace2nutzer.

How this phone work on cm11 and ace2nutzer kernel in 2019?

Can i buy, flash and use normaly old Ace 2 for call, SMS and Little web browsing?

I know this phone is old, and no start to snapdragon 425 phones. But is usuable?

Edit. Last question. Can i install cm11 from ace2nutzer withouth gaaps?
[Galaxy Ace II Android Development] Morricorne:
Nevermind. Withouth google apps. And cm11 this phone is fast as can be for 768 ram.

I use this phone now as my backup phone.
[Galaxy Ace II Android Development] ace2nutzer:
So u don't have working Google play store ??

If so, u'll not be able to buy the full version of a2n kernel control app. But u can still use init.d scripts of course.

Personally i use it with the smallest gapps package, i've working Play Store and honestly i don't see any performance issues. Works great for me.
[Galaxy Ace II Android Development] Morricorne:
Yup im use Old Ace 2 without Google service.

And its working really fast for this old phone.

I change sdcard0 with sdcard1. And i have 64gb memory now. I use 64gb Samsung Micro SD card with Ace 2.

Its too old device to use Google service. 1gb ram is a must. My lenovo Vibe b lag sometimes on 1gb ram.

Huawei p9 lite mini Snapdragon 425 2gb ram work without lag. But 2gb Google Service can work normal. Thats all from me
[Galaxy Ace II Android Development] ace2nutzer:
You can enable zRam .. then it's like having 1GB RAM.

I use it also as a second Phone ... e.g. for Chrome Browser + YouTube App .. works fine even without overclocking.

Anyway, a Phone without Play Store is not very comfortable and may not fully functional.
[Galaxy Ace II Android Development] :
There is MicroG which is much nicer at RAM and CPU usage (also have Play Store working) but you need to enable signature spoofing in CM11 to make it works.
[Galaxy Ace II Android Development] Morricorne:
Can you tell more about this signature spoof?

Im interested, maybe i do this for my Ace 2. For test only
[Galaxy Ace II Android Development] :
Signature spoof = enable app to fake itself as another app.

Like:

Your app: com.example.1

You enable signature spoof to change the app name

It become: com.your.new.name
[Galaxy Ace II Android Development] bla.tiga:
Can i install magisk in this rom? Your one package rom + kernel...

Thanks
[Galaxy Ace II Android Development] ace2nutzer:
@ up

It'll probably not work .. also it's a question if Magisk supports this boot.img .. not if the ROM supports magisk.

[MENTION=6973536]bien2004official[/MENTION]

i'll try out this Signature stuff, but not in this ROM ... this ROM is EOL.

I'll try out with new compiled ROM's (from scratch) from me.
[Galaxy Ace II Android Development] ace2nutzer:
Kernel && App Update Guys !!

Changelog:

Kernel 20191017:

VM: patched swappiness to be tuned up to 200 - (kernel default)

USB OTG Power: allowed output power 300 @ 500 mA

LCD's: increased stability against potential black-screen issues

LCD's: decreased wakeup latency from suspend

CPUFREQ: updated logic - auto set lower cpu_min_freq for suspend

updated ramdisk

A2N Kernel Control V6.9

Misc: removed swappiness control (it's set @ 200 by default)

USB OTG Power: allowed output power 300 @ 500 mA

Minor Fixes

----------------------------------------------------------------------------------------------------------

Version Info:

in previous Release you had to do something in /system/etc/init.d/99_user...

In this Release it's no longer needed to enable_suspend_freqs by hand (over init.d script)

because it's done now automatically by boot-script !

Enjoy Your A2N Kernel :)
[Galaxy Ace II Android Development] Morricorne:
[MENTION=5840412]ace2nutzer[/MENTION]

Last question about Ace 2.

How i can enable and use zram on Ace 2 and you cm11?

I want to test this
[Galaxy Ace II Android Development] ace2nutzer:
@ up

With full Version Kernel Control App in "Misc" Menu, just tick "zRam" done.

or if u don't have the License or don't want to support this Project, then u can just execute zram1.sh in /system/etc/A2NKernelControl*/

and to disable run zram0.sh in the same folder or reboot the phone.

To Keep it permanent enabled, u can copy (do not move it) the script to /system/etc/init.d
[Galaxy Ace II Android Development] Morricorne:
I need to wait few Times to buy this app. Now i have only 50 euro cent on playstore.

Anyway thanks for help
[Galaxy Ace II Android Development] gepel:
Hello ace2nutzer, I remember that in older releases there was a way to change the display's refresh rate by inserting a line in init.d . I want to lower the refresh rate , could you help me on this?
[Galaxy Ace II Android Development] ace2nutzer:
Hi, any reason for this ??

Also the method didn't change, it's still the same way.

Maybe i'll re-add it in Demo App.

btw: do u have the license for the full version of the App?
[Galaxy Ace II Android Development] gepel:
Hmm, battery save?? I have the lines but it didn't work ,, yes I have the licensed version
[Galaxy Ace II Android Development] ace2nutzer:
i don't think it'll save battery, instead it's better to increase CPU/GPU up_threshold .. in the App.

Anyway if u like to play with lcd freq setting it's like always in:

cd /sys/kernel/mcde/

cat lcd_freq // to check current parameter and what u can set

then simply:

echo "number" > lcd_freq

best way to understand and learn is to use ADB .. then try to read/write setting in kernel which are located in

/sys

/proc

/debug

What can happen ?

the phone can freeze or reboot if u set some wrong settings in kernel .. so the kernel can panic.

anyway after a reboot everything is normal again ... so u can't mess it up as long u don't move your things in init.d
[Galaxy Ace II Android Development] gepel:
I'm using the following 'echo '1-6' /sys/kernel/mcde/lcd_clk' under terminal but nothing happen..I have the ws2401..
[Galaxy Ace II Android Development] ace2nutzer:
For WS2401 there are 6 Different Frequencies and for S6D there are even 7.

So it should be:

For Stock Freq 50 MHz:

echo 1 > /sys/kernel/mcde/lcd_clk

Kernel Default of 70 MHz is:

echo 4 > /sys/kernel/mcde/lcd_clk

and for S6D Kernel default of 45 MHz is:

echo 6 > /sys/kernel/mcde/lcd_clk

and stock for S6D is 31 MHz:

echo 6 > /sys/kernel/mcde/lcd_clk

Anyway, u can't mess it up .. since u'll only see the freq steps for you lcd model.

I've spend a lot of time of trying to make it as smooth as possible with stock Freq by changing video.modes .. (6 tunables) but that's the best i could reach. Both LCDs are smooth now .. but it's really needed to tune them a bit.

I'm not sure if using Stock Freq really will drain less power ... probably only a placebo effect ... someone can measure power consumption with the App "current widget"

How to measure current ?

make sure the phone is in airplane mode and is fully in IDLE .. then set screen ON timeout to at least 5 minutes ... so now u're able to measure power consumption for the different LCD Freqs steps. Have Fun !
[Galaxy Ace II Android Development] gepel:
As you could see above, I m using the same command but it didn't change the refresh rate. I don't want the higher rate cause it speeds up a bit the games..
[Galaxy Ace II Android Development] ace2nutzer:
:laugh: Yeah ... that's true ... the higher rate will make games running faster ... it's strange.

Nope, u didn't use the same command ... take a look exactly ... it has to be exactly like i wrote ... use copy&paste ...

Also u need to be root .. so execute first "su" in term emulator .. but in init.d script u don't need to write "su" first ... because it's already root user.
[Galaxy Ace II Android Development] gepel:
Ok, I missed a space between 1 and > ha ha. I think I prefer the 50hz rate and of course is not so smooth like 70hz , a bit tuning for you ?
[Galaxy Ace II Android Development] ace2nutzer:
What do u mean ? - U feel the difference from 50 Mhz to 70 MHz is quite big ? - If so u're right. The LCD Chip Default is 50 Mhz, but is able to use higher Freq's .. like an CPU.

btw: right now i've compared the way how LCD Freq is set in Stock GB / JB .. and maybe i've found something interesting ... i can remember that both LCDs only worked properly on stock GB.. and so far i've never managed to make it working exactly like it was on stock GB ... it caused always lags ...

But now i'll give it a new try. If it'll work like i think then wen can expect same LCD smoothness like it was on stock even without to overclock LCD.

Otherwise the current config is still the best.

EDIT: [MENTION=6518260]gepel[/MENTION]

with forced APE/DDR OPP 100 % it can handle even 100 MHz the WS2401 Model, but drains more power, just as info. ;)
[Galaxy Ace II Android Development] :
70hz causes phone smooth just like flagship phones ;)
[Galaxy Ace II Android Development] ace2nutzer:
New Kernel & App for ultimate performance

Changelog:

Kernel 20191114:

Optimized memory management

CPU/GPU/SXA: optimized Governors

Set vm_swappiness to 200 (patched)

Updated kernel config

FSB/DDR_OC: updated for lower power consumption and stability

Charger: Set AC Current to 800 mA by default

MCDE: LCDs: updated for quick wakeup + stability

Improved performance, responsiveness, and battery life

More smoothly

A2N Kernel Control V7.0

Updated defaults and strings

Minor Fixes

Flash and enjoy extreme performance :cool:
[Galaxy Ace II Android Development] gepel:
Hello ace2nutzer, any news for refresh rate @ 50mhz for ws2401 ?
[Galaxy Ace II Android Development] ace2nutzer:
[MENTION=6518260]gepel[/MENTION]

I did several tests but no luck. I think the bug is in the ROM.

btw: it's not a refresh rate .. the refresh rate is set in the ROM. (probably 60 fps)

That 50 MHz is LCDCLK (clk = clock) ... also there's a MCDECLK which is 160 MHz. Tried to decrease and increase MCDECLK .. but no luck. Always out of sync with 50 MHz LCDCLK.
[Galaxy Ace II Android Development] bla.tiga:
[MENTION=10362837]This is[/MENTION] lcd clock post , i needed if i need to find my post

By the way.. is there any way to use anything i dont know , for auto cmd after restart?