Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,741,628 Members 40,752 Now Online
XDA Developers Android and Mobile Development Forum

[MOD][JB] Super Launcher + Slimmer + SQLite Optimization [ALL ROMs]

Tip us?
 
mnazim
Old
(Last edited by mnazim; 22nd December 2012 at 02:45 PM.)
#1  
mnazim's Avatar
Recognized Contributor / Recognized Developer - OP
Thanks Meter 6275
Posts: 1,067
Join Date: Nov 2011
Cool [MOD][JB] Super Launcher + Slimmer + SQLite Optimization [ALL ROMs]

Introduction:


I was searching for ways to keep the android home launcher in memory like many applications have options when I stumbled over this MOD. This thread is to provide Super Strength Launcher+ other MODs for multiple Jelly Bean ROMs out there that suffer from Launcher redraws, Micro lags in the UI etc. due to the low RAM constraints on the GT-i9000.

Basically it is the Launcher that makes a big difference in the overall smoothness of the ROM. There was a build.prop tweak in ROMs up till GB that helped make the HOME launcher stay in memory no matter how much free RAM was available as below
Code:
Select Code
ro.HOME_APP_ADJ=1
The problem with ICS/JB ROMs is that these don't read the ADJ values from build.prop or local.prop as they are hard-coded into the services.jar!
So I patched the services.jar file to change the OOM priorities which gave me Super Launcher and other UI improvements.

PS: THIS MOD IS FOR Galaxy S GT - I9000.

PS: THIS MOD IS NOT DEPENDENT ON THE LAUNCHER. IT WORKS FOR ANY LAUNCHER SET AS THE DEFAULT.
Details:

This MOD is a collection of tweaks to the services.jar file taken from the Supercharger MOD by zeppelinrox additionally with some added build.prop and GPU acceleration tweaks. The collection of tweaks will grow in the future as I update this thread. If you are using The supercharger script then there wont be much performance gain with this tweak.
THE SUPERLAUNCHER DOES NOT GET KILLED BY LONG PRESSING BACK BUTTON

The SQLite optimization script was taken from pikachu01 from the well known Thunderbolt script pack. This optimizes the APP databases, hence boosting the app data access and app response times.
Testing:

This mod was tested by me, personally on my daily driver Galaxy S GT-i9000 along with the stock/semaphore kernels and gave excellent results with nearly no launcher redraws at all. The details of the changes in the priorities are provided in the third post.

Note: DO THIS AT YOUR OWN RISK. MAKE A NANDROID BACKUP AS A PRECAUTION. IF ANYTHING GOES WRONG REFLASH YOUR ROM.
Requirements:

  • specified ROM
  • Recovery
  • Basic flashing knowledge
Installation:

  • Download
  • Reboot to recovery
  • Flash ZIP
  • Advanced -> Wipe dalvik-cache [Absolutely Necessary]
  • Optionally flash the Slimmer package.
  • Reboot will take longer than usual due to rebuilding of the optimized dalvik-cache.
Updates:

I will try to maintain the thread with regular updates concentrating on the CM10 releases (CM10 user, personally the best out there ) and others according to my ability to personally test them. Downloads in following post.
Additional Info:

If you want to Apply Super to any other App read this.
If you want me to get you this MOD for any other ROM. PM me with the services.jar file from framework attached along with the ROM name. I will add it here.
If you do not suffer from severe launcher redraws and UI lag issues, do no flash this MOD.
If you do not find any improvements at all then you are probably doing something wrong or it is not applicable to your specific device or your specific requirements.
PLEASE DO NOT START FLAMING
Credits:

zeppelinrox
Android Dalvik VM
Supercharger
Windows Auto Patcher
pawitp
krarvind
stratosk
OOM Priorities
Configuring internal process priorities
Android Internal System Task Killer

Please do say thanks to zeppelinrox. [link above]

And LOL watching the below video...




The Following 157 Users Say Thank You to mnazim For This Useful Post: [ Click to Expand ]
 
mnazim
Old
(Last edited by mnazim; 29th March 2013 at 11:53 AM.)
#2  
mnazim's Avatar
Recognized Contributor / Recognized Developer - OP
Thanks Meter 6275
Posts: 1,067
Join Date: Nov 2011
Default Downloads


If you find improvements then show your support by buying me a drink and/or clicking the thanks button

Also thank zeppelinrox for the OOM Priorities..

FLASHING SL + SQLITE OPTIMIZER AFTER THE WHOLE ROM IS SET UP WILL MAKE THE BIGGEST DIFFERENCE.!!!

Please Do Mount the Partitions in Recovery or the File May not be Flashed.!

Change Log:

1222 : Updated ROM Slimmer
1213 : Fixed mounts points for SQLite script. [thanks StuttgartKiwi]
1117 : Fixed Progress Bar
1005 : Optimizing SQLite DB! [Faster App DB Access]
924 : VM Heap Size 96MB [Found to be better ...][Reverted!]
91X : Touchscreen Enhancements! [Testing...]
830 : Performance Boost on the Way...! Absolute Butter...!
829 : Launcher priority changes = not visible in running apps.

SQLite Optimizer + [Faster App DB Access] Click Here.!

Smaller ROM == Faster Xperience...? ROM Slimmer v1.2


Gets rid of the following...
 
Code:
Select Code
Apollo
CMWallpapers                        RomManager
DSPManager                          Stk
Email                               Talkback
Exchange2                           Term
GoogleFeedback                      File Manager[Not CM]
Galaxy4                             VideoEditor
GenieWidget                         VpnDialogs
Gmail                               GoogleEars
HoloSpiralWallpaper                 FaceLock
HTMLViewer                          Bootanimation
Launcher2                           Music[and FX]
MagicSmokeWallpapers                lang_pico [all except en_*]
NoiseField                          media/video
PicoTTS                             Offline charging animation
Modify the updater-script to add/remove entries.


Want Mod for a ROM. Post the Services.jar and Build.prop for the ROM.

Downloads:

CyanogenMod 10.1
OLDER BUILDS...?

Slim Bean 4.2.2
OLDER BUILDS...?


CyanogenMod 10
OLDER BUILDS...?
 
CyanogenMod 9
Slim Bean
OLDER BUILDS...?

HellyBean
OLDER BUILDS?

AOKP JB
Older Builds?

ELITE
OLDER BUILDS...?

Paranoid Android
OLDER BUILDS...?

CodeNameAndroid
LANIGHT
X-Bean
OLDER BUILDS?
TiramiSlim
Eclipse
CREED

Slow Boot Up:

Read This
The Following 99 Users Say Thank You to mnazim For This Useful Post: [ Click to Expand ]
 
mnazim
Old
(Last edited by mnazim; 2nd March 2013 at 09:07 PM.) Reason: Cleanup
#3  
mnazim's Avatar
Recognized Contributor / Recognized Developer - OP
Thanks Meter 6275
Posts: 1,067
Join Date: Nov 2011

Configuration:
OK... Here's what I use on a daily basis. And I cannot express the smoothness...Butter pure Butter...!
Currently I am running everything in GPU configuration...! testing... and its smooth believe me... it is...
Changes:
Bytecode Verification and Optimization

The system tries to pre-verify all classes in a DEX file to reduce class load overhead, and performs a series of optimizations to improve runtime performance. Both of these are done by the dexopt command, either in the build system or by the installer. On a development device, dexopt may be run the first time a DEX file is used and whenever it or one of its dependencies is updated ("just-in-time" optimization and verification).

There are two command-line flags that control the just-in-time verification and optimization, -Xverify and -Xdexopt. The Android framework configures these based on the dalvik.vm.verify-bytecode property.

If you set:

Code:
Select Code
adb shell setprop dalvik.vm.verify-bytecode true
then the framework will pass -Xverify:all -Xdexopt:verified to the VM. This enables verification, and only optimizes classes that successfully verified. This is the safest setting, and is the default.
If dalvik.vm.verify-bytecode is set to false, the framework passes -Xverify:none -Xdexopt:verified to disable verification. (We could pass in -Xdexopt:all, but that wouldn't necessarily optimize more of the code, since classes that fail verification may well be skipped by the optimizer for the same reasons.) Classes will not be verified by dexopt, and unverified code will be loaded and executed.

Enabling verification will make the dexopt command take significantly longer, because the verification process is fairly slow. Once the verified and optimized DEX files have been prepared, verification incurs no additional overhead except when loading classes that failed to pre-verify.

If your DEX files are processed with verification disabled, and you later turn the verifier on, application loading will be noticeably slower (perhaps 40% or more) as classes are verified on first use.

For best results you should force a re-dexopt of all DEX files when this property changes.
Execution Mode

The current implementation of the Dalvik VM includes three distinct interpreter cores. These are referred to as "fast", "portable", and "debug". The "fast" interpreter is optimized for the current platform, and might consist of hand-optimized assembly routines. In constrast, the "portable" interpreter is written in C and expected to run on a broad range of platforms. The "debug" interpreter is a variant of "portable" that includes support for profiling and single-stepping.

The VM allows you to choose between "fast" and "portable" with an extended form of the -Xint argument. The value of this argument can be set through the dalvik.vm.execution-mode system property.

To select the "portable" interpreter, you would use:

Code:
Select Code
adb shell setprop dalvik.vm.execution-mode int:portable
If the property is not specified, the most appropriate interpreter will be selected automatically. At some point this mechanism may allow selection of other modes, such as JIT compilation.
Not all platforms have an optimized implementation. In such cases, the "fast" interpreter is generated as a series of C stubs, and the result will be slower than the "portable" version. (When we have optimized versions for all popular architectures the naming convention will be more accurate.)

Priorties [credits zeppelinrox]:

Code:
Select Code
BACKUP_APP_ADJ:I = 0x7

FOREGROUND_APP_ADJ:I = 0x0

HEAVY_WEIGHT_APP_ADJ:I = 0x4

HOME_APP_ADJ:I = 0x0

PREVIOUS_APP_ADJ:I = 0x5

SERVICE_ADJ:I = 0x6

SERVICE_B_ADJ:I = 0x8

VISIBLE_APP_ADJ:I = 0x3
Source: elinux
The Following 42 Users Say Thank You to mnazim For This Useful Post: [ Click to Expand ]
 
albertobom
Old
#4  
albertobom's Avatar
Senior Member
Thanks Meter 437
Posts: 1,412
Join Date: Apr 2011
Location: Esquinzo

 
DONATE TO ME
Thanks mate I was looking for this. Going to test it .

Sent from my GT-I9000
Follow your feelings

My Fonts For Jelly Bean Roms

Clicking in "thanks" button doesn´t hurt. Try it!
The Following User Says Thank You to albertobom For This Useful Post: [ Click to Expand ]
 
Helloworld294
Old
#5  
Helloworld294's Avatar
Senior Member
Thanks Meter 231
Posts: 841
Join Date: Feb 2012
Location: Vancouver
Isn't superchargers buletproof launcher same thing?

sent from the SGS TITAN and stuff
Phone: Galaxy S I9000M (Bell)
Memory: Int-16GB, Ext-4GB
Rom: THE Hellybean ROM 25/10 by the devil himself
Kernel: Semaphore 2.4.4s 1.0Ghz SmartassV2 Simple I/O
Mod: Super Launcher
Modem: UKG3

Phone: Galaxy S3 SGH-I747M (Bell)
Memory: Int-16GB, Ext-64GB Class 10
Rom: Pwncake's Quantum 4 ~
Kernel: QuantumCore ~
Mod: NONE
Modem/Bootloader:MK5

 
warhead1978
Old
#6  
Senior Member
Thanks Meter 62
Posts: 361
Join Date: Oct 2010
Works !

MfG
 
jjlwork
Old
(Last edited by jjlwork; 23rd August 2012 at 03:00 PM.)
#7  
Senior Member
Thanks Meter 2
Posts: 174
Join Date: Aug 2007
I know this is an i9000 thread, but.... I am on slim bean 2.1 and have an i897(captivate) are the modifications done in Slim 2.1 BulletProof device specific or is this something that will work on any device running slim bean?

***edit***examining the package it seems to have some updates to build prop that refer to i9000, does this mean I can't use it? If not; If I gave you my build prop would you mind doing the same for the i897?
 
mnazim
Old
#8  
mnazim's Avatar
Recognized Contributor / Recognized Developer - OP
Thanks Meter 6275
Posts: 1,067
Join Date: Nov 2011
Quote:
Originally Posted by jjlwork View Post
I know this is an i9000 thread, but.... I am on slim bean 2.1 and have an i897(captivate) are the modifications done in Slim 2.1 BulletProof device specific or is this something that will work on any device running slim bean?

***edit***examining the package it seems to have some updates to build prop that refer to i9000, does this mean I can't use it? If not; If I gave you my build prop would you mind doing the same for the i897?
Just pm me the services.jar file from framework folder and the build.prop file... will make a package and add here for everyone.
The Following 2 Users Say Thank You to mnazim For This Useful Post: [ Click to Expand ]
 
jjlwork
Old
#9  
Senior Member
Thanks Meter 2
Posts: 174
Join Date: Aug 2007
Quote:
Originally Posted by mnazim View Post
Just pm me the services.jar file from framework folder and the build.prop file... will make a package and add here for everyone.
sent Thank You!
 
TheSchatz
Old
(Last edited by TheSchatz; 24th August 2012 at 01:47 AM.)
#10  
TheSchatz's Avatar
Senior Member
Thanks Meter 91
Posts: 219
Join Date: Apr 2012
Wow, thanks for the quick update! Will test tonight

EDIT: Flashed it, and have been running with it for a few hours now. Played around with lots of apps in the background including some memory-hogs etc.

Disclaimer: Devices react differently to different things, results may vary.

Verdict: Looking good! Seems smoother overall, and no redraws yet! Definitely recommended by me

The Following User Says Thank You to TheSchatz For This Useful Post: [ Click to Expand ]
Tags
cm10, launcher, mod, slim, supercharger
THREAD CLOSED
Subscribe
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes