Your favorite Apple, iPhone, iPad, iOS, Jailbreak, and Cydia site.
02-16-2013, 01:14 PM #1
SBSettings Workarounds/General RAM leakage fixes
In a couple of threads we've been talking about RAM leakage problems with certain apps. Most notable is our venerated SBSettings app that has been found post 6.1 and Evasi0n 1.3 to have some significant RAM leakage issues.
I was wondering what other softwares out there you guys are using that can do most of what SBSettings does until it's totally fixed and just to explore different 3rd party apps that allow you to do SBSettings-type stuff.
• System toggles
• Status Bar readout of RAM (broken in Springtomize
• MobileSubstrate turn off, one by one
• Respring/Reboot etc..
A few I've seen like NCRam and ncRam for RAM readout (yes, just capitalization difference. But they each give different RAM readouts and I don't understand why that is.
I've heard about SBCenter for Respring options. And NCSettings for system toggles (which is often themed by Theme Creators).
Does anyone know of anything that can do Ram readout in status bar?
And what about clearing processes like SBSettings does? Auxo has promise too but has RAM leak issues from experiments I and others have done. I know we're in the early stages of a new jailbreak and I may return to our ole standby, SBSettings soon - after some fixes. But between a lot of you out there we can learn a lot more about this.
Thanks in advance for your great input!
02-16-2013, 01:26 PM #2
Been doing a little more research and wanted to share my findings here with you.
I've read your discussions on the threads about the RAM, and in my own experience I have found SBsettings to be the culprit on my device. I really like SBsetting not only for the RAM display but also for the ability to turn on/off mobile substrate extensions. It's a pain to have to go to the dynamic libraries and manfully turn on/off from there. So for now I'm gonna live with it. I have looked into alternatives for displaying free ram and the ability to free up ram with a touch. I'm sure you have noticed that springtomize does have the ability to display ram on the status bar, but its not dynamic (doesn't update as ram changes) so it's really useless for my needs. I'm sure you have noticed as well that some memory tweaks display the free ram differently than what SBsettings does so let me explain why your seeing the difference.
On our IDevices apple manages memory with 4 memory states:
1) Wired memory - memory used by core services to run the device
2) Active memory - app process currently running in the foreground
3) Inactive memory - memory used by apps in a suspended state (in background switcher) to allow for quick return to active state so the whole app doesn't have to restart from scratch
4) Free memory - self explanatory.
So those are the 4 states of memory, IOS will take from inactive memory to allow foreground apps to use the memory it needs since the suspended apps aren't really being actively used.
SBsettings: displays a combination of free memory AND inactive memory in its display because IOS's inactive memory is dynamic based on the foreground apps needs and can really be considered as "free" because the foreground app can take from it as needed when free memory isn't enough to run the app.
ncRam : displays free memory and inactive together (just like SBsettings)
NCRam: displays free memory + inactive + wired (not accurate because wired memory is not free memory, the dev pointed to the wrong memory key and the results are about 80 meg more (the amount of wired memory)) not recommended as a accurate memory gage
In Apples AppStore, there's a app called SysActivity monitor, a very well written status app. It actually displays the 4 states of memory in their individual states so you can get a nice cross section of your memory usage. Nice thing about that app is that it also has a free ram button to release the inactive memory back to free memory, so it does what SBsettings does with its processes button. So in my opinion a viable alternative to SBsettings in that concern. Only downfall is that it don't display on the status bar.
What I am doing is a combination of different tweaks that give me similar functions as SbSettings.
Here's what I have installed and works fairly well:
For the notification center:
NcRam : set to refresh the display
NCSettings : to give me toggles for brightness, volume and power options with respring etc.
(It's pretty slick and one line in the notification center)
WeeKillBackground Pro: to close all background apps at once (can be set to close apps on notification slide down, by tap or by closing the notifications center)
Only thing I was missing that I couldn't duplicate well was a free ram processes toggle in the Notification center, however I did find a cydia app that uses the same kill processes routines that SBsettings use and that tweak is called "Free Memory". It's icon based and the icon and free memory image are easily changed to something more your liking ( myself I used a auros A5 icon for the free memory icon by changing the icon.png out in its application folder, for the free memory image I just replaced that with a transparent one)
For disabling mobile substrate extensions, I just use springtomize now for that.
So that's my setup, no memory leaks and all the features of SBsettings duplicated
Hopefully this info might be of use for you
Last edited by The.Drifter; 02-16-2013 at 01:53 PM.
02-16-2013, 01:41 PM #3
HUGELY helpful, Drifter!!!! Thanks so much for your input. Even with Auxo and SBSettings gone I'm still getting a little RAM leakage somewhere. And I want to see if it is indeed iWidget based or not - in the amount I use. Can you list for us all the tweaks you currently have installed on your device as a 'base point' for a NO RAM LEAK scenario that's duplicateable by all of us. OH - and I think you're not on iPhone 5 yet - right? That might also be a variable in this equation. Are you ip5?
And can you corroborate the idea that RAM readout after a full reboot is an accurate 'starting place' for testing ram leak from tweaks?
02-16-2013, 01:49 PM #4
I don't think that reading the memory from a full reboot is right because IOS launches a bunch of core system services at initial boot that will use RAM and it takes IOS a little time to level the RAM back to a idle state. If your looking for a baseline to start with, in my opinion, a single kill processes will remove the initial RAM hit that IOS uses launching core services and give you a better baseline.
02-16-2013, 01:59 PM #5
Yes - I just rebooted and saw 601MB free. I hit KILL ALL APPS from inside WeeKillLoader and it then read 623MB. So I guess that's what you mean? It's a little deflating to be now using ncRAM rather than NCRam - because that 80MB less read out will make seeing 700+ impossible again. Oy - I'm SO RAM OCD... I know I shouldn't be.
But as you've explained it's better to use a RAM readout tool that is NOT counting, as part of the total, WIRED ram - since that's not true free RAM. Those who are seeing the high 750's and low 800's are seeing an inflated number.
02-16-2013, 02:08 PM #6
I'm having issues now with the "Free Memory" icon tweak found in Cydia. It seems that it kills processes needed for IOS6 that were not noticeable with IOS5. Seems to make huge free memory gains, but renders my device buggy. Ugh
Might be searching again for a better alternative to free ram other than cydia's Free Memory tweak
02-16-2013, 02:13 PM #7
02-16-2013, 02:19 PM #8
It appears that different tweaks kill processes differently. Each tweak will kill certain process identically, but some go a step further and start to turn off system services after the next tap, that's why you could force a reboot using SBsettings free ram toggle after a couple taps. The first tap frees up inactive memory, subsequent taps start turning off core services in wired memory. That's why I recommended a "single" tap to kill processes, just clear the inactive memory out and not the core services in wired memory with additional taps.
Last edited by The.Drifter; 02-16-2013 at 02:30 PM.
02-16-2013, 02:38 PM #9
02-16-2013, 02:45 PM #10
02-16-2013, 02:53 PM #11
• SysAct refresh (to kill processes)
--now I have my baseline..
Use some apps -- Use some apps --Use some apps
• WeeKill refresh
• SysAct refresh
--check against baseline from step 1 - if more than 10-20MB from baseline number - indicates RAM leakage somewhere.
Pretty good testing paradigm?
02-16-2013, 03:01 PM #12
All WeeKill refresh would do is close apps in the multitask switcher at once, it does the exact same thing as opening the task switcher and closing each app from there. So if you don't want to use the WeeKill tweak, close your apps out manually instead in the multitask switcher
Something to keep in mine after you first reboot/respring and are running HTML widgets like clocks, calendars, weather, rss, and slideshow ones, is that some will add to the initial system ram hit to update themselves, weather and rss will also give a greater initial hit because they have to access info from the Internet. So to have a true baseline to test for tweak memory leaks would be to turn off iWidgets and/or Winterboard SB widgets and knock them out of the equation. Keep in mind that a lot of widgets refresh at different intervals, so once that interval time arrives, you will experience another ram hit for the update. Another reason to turn them off during testing, you want to eliminate as many variables as possible. This might help narrowing down a true memory leak culprit.
Last edited by The.Drifter; 02-16-2013 at 03:54 PM.
02-16-2013, 03:18 PM #13
Great input Drifter, I would quote one but agree with all above. Very well put.
02-16-2013, 03:21 PM #14
02-16-2013, 03:41 PM #15
02-16-2013, 03:49 PM #16
Last edited by NewD; 02-16-2013 at 03:52 PM.
02-16-2013, 03:56 PM #17
And, Pinoy, I'm sorry that I have caused your shame of having made Simon give you 'Banned status' in your Avatar Name (for giving me my 1000th thanks)... LMAO!!!![/QUOTE]
Lol, I can't even see it cause I'm still not able to log on. I don't care though. Peeps know me well enough. You could take my stats and put them in the garbage. They serve no purpose for me anymore. Simon is funny though. I dig that guy! He's good people.
Last edited by Pinoy; 02-16-2013 at 03:59 PM.
02-16-2013, 04:00 PM #18
02-16-2013, 04:06 PM #19
It's hard for me not to worry about ram anymore, guess I just got used to it and thought the higher the ram the better tweaker I was, you know the feeling, "mine is bigger/better than yours" mentality I guess in the end, our apps still work great, and that's all that really matters, isn't it?
02-16-2013, 04:07 PM #20
I go crazy when my ram starts to show 300 ish ram.