View Single Post
brontide's Avatar
Posts: 868 | Thanked: 474 times | Joined on Oct 2007 @ Capital District, NY, USA
#1
I may not be a maemo developer, but I am a linux geek and I have been tweaking and my n810 feels like a whole new device! The main reason for such a speedup is because the kernel was not properly tuned for such a small memory device.

If this does not make sense, or you are not conformable at the command line or reflashing DO NOT ATTEMPT. I'm hoping to get some feedback and then I will probably repackage this up as something more user friendly.

This is Alpha quality work, don't ***** at me if making these changes destroy your NIT!


First off I tweaked the MicroB to be better suited to the speed of the device.

I changed my cache to 8k

user_pref("browser.cache.memory.capacity", 8192);

and added the following to my prefs.js ( in /home/user/.mozilla/microb/ )

user_pref("nglayout.initialpaint.delay",2000);
user_pref("content.notify.interval", 1250000);
user_pref("content.notify.ontimer", true);
user_pref("network.http.pipelining", true);
user_pref("network.http.pipelining.maxrequests", 1000);
user_pref("network.http.max-connections", 4);
user_pref("network.http.max-connections-per-server", 4);
user_pref("network.http.max-persistent-connections-per-server", 1);


I disabled the metalayer-crawler0 ( as root )

mv /etc/rc2.d/S99metalayer-crawler0 /etc/rc2.d/D99metalayer-crawler0

This will disable the autodetection of media for the built-in media player, but I use canola anyways.

Next I started optimizing the linux kernel itself. I started by adding a 32MB swap file and then applying the following settings ( as root ).

sysctl -w net.ipv4.tcp_window_scaling=0
sysctl -w net.ipv4.tcp_sack=0
sysctl -w net.ipv4.tcp_keepalive_time=1800
sysctl -w net.ipv4.tcp_fin_timeout=10
sysctl -w net.ipv4.tcp_timestamps=0
sysctl -w vm.swappiness=25
sysctl -w vm.vfs_cache_pressure=150
sysctl -w net.ipv4.tcp_dsack=0
sysctl -w vm.min_free_kbytes=768

BOOM.

It's like a whole new device! The responsiveness of the applications has increased several fold. The browser startup time has been cut by 30% or more. There was little or no sluggishness when running with several applications open including the browser, canola, xchat, and modest. The menu's on the home screen are at least twice as fast as before.

I need others comfortable with these steps to try them out on their own 810 ( or 800 if you are feeling adventurous ) and give me some feedback on how they work for you. I am continuing to make changes to my own device to see how it responds.


QUICK FIX FOR MICROB - Copied from later in the thread

Ok, I'm starting to nail things down some. Here are the "quick fix" pref changes that will make the most difference.


about:config?browser.cache.memory.capacity=8192
about:config?network.http.max-connections=2
about:config?network.http.max-connections-per-server=1
about:config?network.http.max-persistent-connections-per-server=1
about:config?network.http.pipelining.maxrequests=1 000

I still think the sysctl changes improve interactivity under load, but not enough to justify making a mess of people's systems ( yet ). Enabling swap for now should provide enough of a boost for most people.

Last edited by brontide; 2008-03-11 at 01:05.
 

The Following 38 Users Say Thank You to brontide For This Useful Post: