A new name for MPEngine>>
RAM OMFGASDF PWNer Engine ™ => RPEngine™
my thanks meter and post just passed 1000
ITS UNIVERSAL AND AWEEESOMEEEE!!!
Sent from my R800i using xda app-developers app
---------- Post added at 08:25 PM ---------- Previous post was at 08:24 PM ----------
I just love the new name...T.T WHYYYY WHYYY LENAROX WHYYY?!!
Sent from my R800i using xda app-developers app
No sweat my man! Try it!! Remember to keep a nandroid backup handy!!!
Sent from my R800i using xda app-developers app
---------- Post added at 09:44 PM ---------- Previous post was at 09:43 PM ----------
And Lenarox, umm is myass like what u listed as put anything which makes heapsize 48 by default?
Sent from my R800i using xda app-developers app
It really helps for modern combat 4 no lags at all
*Sent_From _Qmobile_Noir_A8*
Sane here my man. MC4 runs on my device with only occasional lags... and 3D rendering improved quite a lot on my device clocked from 184-921MHZ
Sent from my R800i using xda app-developers app
#!/system/bin/sh
echo Dalvik Booster V5 test release by LENAROX.
echo waiting...
sleep 5
echo SHW-M110S *365Mb*, empty_app_mem=48Mb, heapsize/2=heapstartsize method.
setprop dalvik.vm.heapsize 48m
setprop dalvik.vm.heapgrowthlimit 48m
setprop dalvik.vm.heapstartsize 12m
#enables uniprocessor for single ladies.
setprop dalvik.vm.dexopt-flags m=y,u=y
echo ========================
#echo SHW-M250S *830Mb*, empty_app_mem=80Mb, heapsize/2=heapstartsize method.
#setprop dalvik.vm.heapsize 80m
#setprop dalvik.vm.heapgrowthlimit 80m
#setprop dalvik.vm.heapstartsize 20m
#enables SMP for couples.
#setprop dalvik.vm.dexopt-flags m=y,u=n
exit
dalvik.vm.heapsize=128m
dalvik.vm.heapgrowthlimit=128m
dalvik.vm.heapstartsize=5m
70% Complete.
Dug up some source codes for flags
edit: A new wan
Code:#!/system/bin/sh echo Dalvik Booster V5 test release by LENAROX. echo waiting... sleep 5 echo SHW-M110S *365Mb*, foreground_app_mem=14Mb, empty_app_mem=48Mb. setprop dalvik.vm.heapsize 48m setprop dalvik.vm.heapgrowthlimit 48m setprop dalvik.vm.heapstartsize 14m #enables uniprocessor for single ladies. setprop dalvik.vm.dexopt-flags m=y,u=y #echo SHW-M250S *830Mb*,foreground_app_mem=32Mb, empty_app_mem=80Mb. #setprop dalvik.vm.heapsize 80m #setprop dalvik.vm.heapgrowthlimit 80m #setprop dalvik.vm.heapstartsize 32m #enables SMP for couples. #setprop dalvik.vm.dexopt-flags m=y,u=n
result i found: increasing heapstartsize cures lags. But you shouldnt increase more than the size of foreground app mem. Or your ram will be run out of space easily while less than 20(I believe its a small number) app processes are running lol.
SHW-M250S stock ics rom had this:
in build.prop.Code:dalvik.vm.heapsize=128m dalvik.vm.heapgrowthlimit=128m dalvik.vm.heapstartsize=5m
thats where i found that heapsize value=heapgrowthlimit value is same as disabling heapgrowthlimit features.
So i disabled it just like that. trusting samsung lol
to do this for real, i have no choice but to forget lmk booster.
What do you guys think?
Stay tuned
RAM OMFGASDF PWNer Engine ™ => RPEngine™
I use gingerbread as a base
RAM OMFGASDF PWNer Engine ™ => RPEngine™
Btw im talking about gingerbread.
I know concurrent is already set as default in honeycomb and later versions.
Omfg. I just found a really good one called concurrent gc and i tried putting setprop dalvik.gc.type concurrent. Restored heapsize to default which makes my game lag all the time, but just enabling concurrent gc prevents EVERY lags. Concurrent gc allows apps to continue process (Never stop"hang")even though full gc process is in effect. Great for maxpayne mobile.
I didnt know dalvik.gc.type support concurrent, anyways it does work
i am feeling the possibility that some dev might have found this before me, let me know.
RAM OMFGASDF PWNer Engine ™ => RPEngine™Code:#!/system/bin/sh setprop dalvik.gc.type concurrent
It's nice to see that you are experimenting with vm heap settings. I've done a lot of experimenting myself; currently I have dalvim.vm.heapsize=64 and commented out heapstartsize and heapgrowthlimit. I'm on jellybean on xperia x10.
Sent from my Xperia X10 using xda app-developers app
2.new design of rtmixman
boot(bios)
(instructions)
-C0000>I0000(read map when first boot)
C0000(main process)
(instructions)
-I0000(read map)
-I0001(sync time)
-I0002(sleep time)
-I0003(go go gadget)
-I0004(^^this)
(execute map=whole skeleton)
(execute instructions)
C0001(child process)
(execute instructions)
C0002(child process)
(execute instructions)
C0003(child process)
(execute instructions)
C0004(child process)
(execute instructions)
C0005(child process)
(execute instructions)
C0006(child process)
(execute instructions)
C0007(child process)
(execute instructions)
C0008(child process)
(execute instructions)
(return)
3.I0004 special feature:
-make process concentrate on foreground tasks, make background process usage low as possible(avoid lags).
I0003 special feature:
-kill apps only in specific layers(you can avoid killing launcher and background apps). both multitasking and performance wise(might be possible)
I0000 special feature:
-retrieves every single information through anywhere, anytime.(I/O)
I0001 special feature:
-it counts time between desired tasks(whom goes first in line) and sends random statistics to other instructions for changing aggressivity options to keep them in sync.
I0002 special feature:
-go to sleep for reasonable seconds.(synced with I0001).
4.just two cons for this engine:
-enabling log will be a real pain in the ass.
-I0004 is sort of a BS, i will have to test this alot, i mean ALOT more to actually make this happen.
boot()
{
export boot=I0000 id=1
C0000 #start main unit
}
C0000() #Power Processor Element
{
I0000() #mapping
{
./system/etc/usrsettings.conf ##masterfile read
###warning: it must be able to count all instructions, or else some wont work.###
export C0000A=\`echo \$C0000 | sed 's/,/ /' | awk '{print \$1}'\`
export C0000B=\`echo \$C0000 | sed 's/,/ /' | awk '{print \$2}'\`
export C0000C=\`echo \$C0000 | sed 's/,/ /' | awk '{print \$3}'\`
export C0000D=\`echo \$C0000 | sed 's/,/ /' | awk '{print \$4}'\`
export C0000E=\`echo \$C0000 | sed 's/,/ /' | awk '{print \$5}'\`
export C0001A=\`echo \$C0001 | sed 's/,/ /' | awk '{print \$1}'\`
export C0001B=\`echo \$C0001 | sed 's/,/ /' | awk '{print \$2}'\`
export C0001C=\`echo \$C0001 | sed 's/,/ /' | awk '{print \$3}'\`
export C0001D=\`echo \$C0001 | sed 's/,/ /' | awk '{print \$4}'\`
export C0001E=\`echo \$C0001 | sed 's/,/ /' | awk '{print \$5}'\`
export C0002A=\`echo \$C0002 | sed 's/,/ /' | awk '{print \$1}'\`
export C0002B=\`echo \$C0002 | sed 's/,/ /' | awk '{print \$2}'\`
export C0002C=\`echo \$C0002 | sed 's/,/ /' | awk '{print \$3}'\`
export C0002D=\`echo \$C0002 | sed 's/,/ /' | awk '{print \$4}'\`
export C0002E=\`echo \$C0002 | sed 's/,/ /' | awk '{print \$5}'\`
export C0003A=\`echo \$C0003 | sed 's/,/ /' | awk '{print \$1}'\`
export C0003B=\`echo \$C0003 | sed 's/,/ /' | awk '{print \$2}'\`
export C0003C=\`echo \$C0003 | sed 's/,/ /' | awk '{print \$3}'\`
export C0003D=\`echo \$C0003 | sed 's/,/ /' | awk '{print \$4}'\`
export C0003E=\`echo \$C0003 | sed 's/,/ /' | awk '{print \$5}'\`
export C0004A=\`echo \$C0004 | sed 's/,/ /' | awk '{print \$1}'\`
export C0004B=\`echo \$C0004 | sed 's/,/ /' | awk '{print \$2}'\`
export C0004C=\`echo \$C0004 | sed 's/,/ /' | awk '{print \$3}'\`
export C0004D=\`echo \$C0004 | sed 's/,/ /' | awk '{print \$4}'\`
export C0004E=\`echo \$C0004 | sed 's/,/ /' | awk '{print \$5}'\`
export C0005A=\`echo \$C0005 | sed 's/,/ /' | awk '{print \$1}'\`
export C0005B=\`echo \$C0005 | sed 's/,/ /' | awk '{print \$2}'\`
export C0005C=\`echo \$C0005 | sed 's/,/ /' | awk '{print \$3}'\`
export C0005D=\`echo \$C0005 | sed 's/,/ /' | awk '{print \$4}'\`
export C0005E=\`echo \$C0005 | sed 's/,/ /' | awk '{print \$5}'\`
export C0006A=\`echo \$C0006 | sed 's/,/ /' | awk '{print \$1}'\`
export C0006B=\`echo \$C0006 | sed 's/,/ /' | awk '{print \$2}'\`
export C0006C=\`echo \$C0006 | sed 's/,/ /' | awk '{print \$3}'\`
export C0006D=\`echo \$C0006 | sed 's/,/ /' | awk '{print \$4}'\`
export C0006E=\`echo \$C0006 | sed 's/,/ /' | awk '{print \$5}'\`
export C0007A=\`echo \$C0007 | sed 's/,/ /' | awk '{print \$1}'\`
export C0007B=\`echo \$C0007 | sed 's/,/ /' | awk '{print \$2}'\`
export C0007C=\`echo \$C0007 | sed 's/,/ /' | awk '{print \$3}'\`
export C0007D=\`echo \$C0007 | sed 's/,/ /' | awk '{print \$4}'\`
export C0007E=\`echo \$C0007 | sed 's/,/ /' | awk '{print \$5}'\`
export C0008A=\`echo \$C0008 | sed 's/,/ /' | awk '{print \$1}'\`
export C0008B=\`echo \$C0008 | sed 's/,/ /' | awk '{print \$2}'\`
export C0008C=\`echo \$C0008 | sed 's/,/ /' | awk '{print \$3}'\`
export C0008D=\`echo \$C0008 | sed 's/,/ /' | awk '{print \$4}'\`
export C0008E=\`echo \$C0008 | sed 's/,/ /' | awk '{print \$5}'\`
#I0002 specific properties
export main_custom_sleep_timer=\`echo \$custom_sleep_timer | sed 's/,/ /' | awk '{print \$1}'\`
export sub_custom_sleep_timer=\`echo \$custom_sleep_timer | sed 's/,/ /' | awk '{print \$2}'\`
}
I0001() #sync
{
}
I0002() #sleep
{
if [ ! "\$custom_sleep_timer" ]; then
sleep 4
else
sleep \$custom_sleep_timer
fi
}
I0003() #flush
{
prev_total=0
prev_idle=0
while true; do
cpu=`cat /proc/stat | head -n1 | sed 's/cpu //'`
user=`echo $cpu | awk '{print $1}'`
system=`echo $cpu | awk '{print $2}'`
nice=`echo $cpu | awk '{print $3}'`
idle=`echo $cpu | awk '{print $4}'`
wait=`echo $cpu | awk '{print $5}'`
irq=`echo $cpu | awk '{print $6}'`
srq=`echo $cpu | awk '{print $7}'`
zero=`echo $cpu | awk '{print $8}'`
total=$(($user+$system+$nice+$idle+$wait+$irq+$srq+$zero))
diff_idle=$(($idle-$prev_idle))
diff_total=$(($total-$prev_total))
usage=$(($((1000*$(($diff_total-$diff_idle))/$diff_total+5))/10))
clear
echo "Current Usage: $usage%"
prev_total=$total
prev_idle=$idle
sleep 1
done
}
I0004() #nice
{
}
if [ "\$id" == 1 ]; then \$boot; export id=0; fi ##bootup
if [ "\$C0000A" ]; then \$C0000A; fi
if [ "\$C0000B" ]; then \$C0000B; fi
if [ "\$C0000C" ]; then \$C0000C; fi
if [ "\$C0000D" ]; then \$C0000D; fi
if [ "\$C0000E" ]; then \$C0000E; fi
###sub unit online interconnection###
if [ "\$C0001" ]; then \$C0001 &; fi
if [ "\$C0002" ]; then \$C0002 &; fi
if [ "\$C0003" ]; then \$C0003 &; fi
if [ "\$C0004" ]; then \$C0004 &; fi
if [ "\$C0005" ]; then \$C0005 &; fi
if [ "\$C0006" ]; then \$C0006 &; fi
if [ "\$C0007" ]; then \$C0007 &; fi
if [ "\$C0008" ]; then \$C0008 &; fi
C0000 & ##loop
}
C0001() #Synergistic Processor Element #1
{
if [ "\$C0001A" ]; then \$C0001A; fi
if [ "\$C0001B" ]; then \$C0001B; fi
if [ "\$C0001C" ]; then \$C0001C; fi
if [ "\$C0001D" ]; then \$C0001D; fi
if [ "\$C0001E" ]; then \$C0001E; fi
}
C0002() #Synergistic Processor Element #2
{
if [ "\$C0002A" ]; then \$C0002A; fi
if [ "\$C0002B" ]; then \$C0002B; fi
if [ "\$C0002C" ]; then \$C0002C; fi
if [ "\$C0002D" ]; then \$C0002D; fi
if [ "\$C0002E" ]; then \$C0002E; fi
}
C0003() #Synergistic Processor Element #3
{
if [ "\$C0003A" ]; then \$C0003A; fi
if [ "\$C0003B" ]; then \$C0003B; fi
if [ "\$C0003C" ]; then \$C0003C; fi
if [ "\$C0003D" ]; then \$C0003D; fi
if [ "\$C0003E" ]; then \$C0003E; fi
}
C0004() #Synergistic Processor Element #4
{
if [ "\$C0004A" ]; then \$C0004A; fi
if [ "\$C0004B" ]; then \$C0004B; fi
if [ "\$C0004C" ]; then \$C0004C; fi
if [ "\$C0004D" ]; then \$C0004D; fi
if [ "\$C0004E" ]; then \$C0004E; fi
}
C0005() #Synergistic Processor Element #5
{
if [ "\$C0005A" ]; then \$C0005A; fi
if [ "\$C0005B" ]; then \$C0005B; fi
if [ "\$C0005C" ]; then \$C0005C; fi
if [ "\$C0005D" ]; then \$C0005D; fi
if [ "\$C0005E" ]; then \$C0005E; fi
}
C0006() #Synergistic Processor Element #6
{
if [ "\$C0006A" ]; then \$C0006A; fi
if [ "\$C0006B" ]; then \$C0006B; fi
if [ "\$C0006C" ]; then \$C0006C; fi
if [ "\$C0006D" ]; then \$C0006D; fi
if [ "\$C0006E" ]; then \$C0006E; fi
}
C0007() #Synergistic Processor Element #7
{
if [ "\$C0007A" ]; then \$C0007A; fi
if [ "\$C0007B" ]; then \$C0007B; fi
if [ "\$C0007C" ]; then \$C0007C; fi
if [ "\$C0007D" ]; then \$C0007D; fi
if [ "\$C0007E" ]; then \$C0007E; fi
}
C0008() #Synergistic Processor Element #8
{
if [ "\$C0008A" ]; then \$C0008A; fi
if [ "\$C0008B" ]; then \$C0008B; fi
if [ "\$C0008C" ]; then \$C0008C; fi
if [ "\$C0008D" ]; then \$C0008D; fi
if [ "\$C0008E" ]; then \$C0008E; fi
}
boot #start processC0000=I0000,I0001,I0002,I0003,I0004 #enable map, sync, sleep for main unit
C0001=I0003,I0004 #repeat others for ultimate sync test
C0002=I0003,I0004
C0003=I0003,I0004
C0004=I0003,I0004
C0005=I0003,I0004
C0006=I0003,I0004
C0007=I0003,I0004
C0008=I0003,I0004