Development :  K-Meleon Web Browser Forum
K-Meleon development related discussions. 
Need working pagespeed macro
Posted by: Rapido
Date: September 21, 2006 11:46PM


Hi! I need some help get a working pagespeed macro because I'm having trouble with loading several websites. It takes way to long to load them with my computer. I'm running under Win98SE and K-Meleon1.01 plus modem so it takes up to five minutes and more depending on wich sites i'm browsing. So can someone help me to fix a working pagespeed macro for K-Meleon 1.01? The pagespeed macro for K-M0.9 was very helpful to me with dialup choice and no dsl connection. Since I don't have the speedoption that I suspect that most of all users have it is necessary for me to have the pagespeed macro to be able to surf the web in average time and not several hours.

Yours: Rapido

Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: CaptnBlack
Date: September 23, 2006 11:29AM

I took a look at the page speed macros....
Some of those settings are insane, and some are not even valid.
For instance:
"network.http.pipelining.maxrequests", 100"
The max for this pref is 8, no matter how high it's set, it will never make more than 8 requests.

Here's more sane settings if you want to try them.

In macros.cfg:

# PAGESPEED MACRO

# TOGGLE PAGESPEED

ToggleSpeed{
menu = "Enable Page Load Speed-Up"
getpref(BOOL, "network.http.pipelining") == true ? &DisableSpeed:&EnableSpeed;
&Sync;
getpref(BOOL, "network.http.pipelining") == true ? $warn = "enabled":$warn = "disabled";
Alert("Page Load Speed-Up has been ".$warn."!");
}

# ENABLE PAGESPEED

EnableSpeed{
# TURN ON TIMER BASED REFLOW MANAGEMENT
setpref(BOOL, "content.notify.ontimer", true);

# SETS THE ALLOWED TIME BETWEEN REFLOWS IN MICROSECONDS
setpref(INT, "content.notify.interval", 240000);

# SET THE NUMBER OF REFLOWS TO DO BEFORE WAITING FOR THE REST OF THE PAGE TO ARRIVE
setpref(INT, "content.notify.backoffcount", 10);

# ENABLE IMPROVED PIPELINING
setpref(BOOL, "network.http.pipelining", true);
setpref(INT, "network.http.pipelining.maxrequests", 8);
setpref(BOOL, "network.http.proxy.pipelining", true);

# INCREASE MULTI-THREADED DOWNLOAD PERFORMANCE
setpref(INT, "network.http.max-connections", 24);
setpref(INT, "network.http.max-connections-per-server", 16);
setpref(INT, "network.http.max-persistent-connections-per-proxy", 8);
setpref(INT, "network.http.max-persistent-connections-per-server", 4);
}
DisableSpeed{
setpref(BOOL, "content.notify.ontimer", false);
setpref(INT, "content.notify.interval", 120000);
setpref(INT, "content.notify.backoffcount", -1);
setpref(BOOL,"network.http.pipelining", false);
setpref(INT, "network.http.pipelining.maxrequests", 4);
setpref(BOOL, "network.http.proxy.pipelining", false);
setpref(INT, "network.http.max-connections", 24);
setpref(INT, "network.http.max-connections-per-server", 8);
setpref(INT, "network.http.max-persistent-connections-per-proxy", 4);
setpref(INT, "network.http.max-persistent-connections-per-server", 2);
}


In menus.cfg:
# ----- Tools

&Tools{
%ifplugin macros
:&Mail And News
-
tongue sticking out smileyage &Search
:&Web Search
:&Translate From
%else
&Web Search\tCtrl+G=ID_NAV_SEARCH
%endif
%ifplugin macros|privacy
-
:&Privacy
%endif
%ifplugin macros
tongue sticking out smileyro&xy
:&User Agent
-
macros(ToggleSpeed)

}

Theses settings can cause problems loading some pages.

Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: CaptnBlack
Date: September 23, 2006 01:12PM

Forgot to include the sync.

In macros.cfg:
Add this " &SpeedSync; "to the sync macros.

Sync{
&SpeedSync;
&EncodingSync;
&OpenSync;
&PrivacySync;
&UASync;

}

Add this at the bottom of the other macros I posted:

SpeedSync{
setcheck("macros(ToggleSpeed)", getpref(BOOL, "network.http.pipelining") == true ? true:false);
}

I should have said theses are more sane settings for dialup users.

Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: CaptnBlack
Date: September 23, 2006 01:21PM
Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: Rapido
Date: September 23, 2006 08:47PM


Thanks CaptnBlack this macro works perfect for me and the speed has improved and become better.

Yours: Rapido

Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: thomas
Date: October 10, 2006 10:46PM

hi,
can anybody tell me if it is worthwhile to change the settings of, say, network.http.pipelining, if you are dsl-user?
for firefox it seems that such changes make the browser faster.
can i make the same changes for k-meleon?
can anybody recommend a good macro for doing that?
how exactly do i apply a macro?

thomas

Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: guenter
Date: October 11, 2006 12:59AM

@Thomas; AFAIK: Yes - the same here and k-m uses the almost identical prefs.

The applicable js are inserted into user.js in used Profile.
For choice i quote from an older k-meleon's theme release notes.

(von den folgenden fügst du die für dich zutreffenden in die user.js in deinem benutzten Profil ein - du findest das Profil via/unter:
Bearbeiten > Einstellungen > Allgemein > Einstellungen / k-meleon1.02de-AT )


Excerpts from Firefox tweak guide created by Achilles found e. g. at:

http://www.tweakfactor.com/articles/tweaks/firefoxtweak/4.html

Most of us have heard of these tweaks, and they can be used with any Mozilla.
The settings are inserted into user.js, which feeds them into prefs.js on start.
Achilles based his legendary summary at Tweakfactor on a thread at Mozilla Forum.

K-Meleon and some other Gecko browsers that use their native OS widgets will not use tweaks for XUL items.
- So not all tweaks are applicable for k-m, but even those that are not usefull do no harm; k-m just overlooks them.
Since K-Meleon goes with low resources - Slow Computer means slower than Pentium 500 for us ;-) .
Quick and Dirty Settings

user_pref("network.http.pipelining", true);
user_pref("network.http.pipelining.firstrequest", true);
user_pref("network.http.pipelining.maxrequests", 8);
user_pref("nglayout.initialpaint.delay", 0);

Pipelining does multiple data requests at once and should speed things up. Initial Paint Delay actually slows down the rendering of the ENTIRE page but I tend to start reading before the entire page is rendered ; - ) this gives me the impression that the page loads faster.
Common to all configurations

These are the settings that seem to be common to all configuration files regardless of connection speed or computer speed with a couple of additions - plugin paths can be found with about:plugins and the bookmark menu delay is turned off.

user_pref("network.http.pipelining", true);
user_pref("network.http.proxy.pipelining", true);
user_pref("network.http.pipelining.maxrequests", 8);
user_pref("content.notify.backoffcount", 5);
user_pref("plugin.expose_full_path", true);
user_pref("ui.submenuDelay", 0);

Fast Computer Fast Connection

user_pref("content.interrupt.parsing", true);
user_pref("content.max.tokenizing.time", 2250000);
user_pref("content.notify.interval", 750000);
user_pref("content.notify.ontimer", true);
user_pref("content.switch.threshold", 750000);
user_pref("nglayout.initialpaint.delay", 0);
user_pref("network.http.max-connections", 48);
user_pref("network.http.max-connections-per-server", 16);
user_pref("network.http.max-persistent-connections-per-proxy", 16);
user_pref("network.http.max-persistent-connections-per-server", 8);
user_pref("browser.cache.memory.capacity", 65536);

A couple settings of note - Firefox is allocated 4096 KB of memory by default and in this configuration we give it roughly 65MB as denoted by the last line. This can be changed according to what is used.

Fast Computer, Slower Connection

This configuration is more suited to people without ultra fast connections. We are not talking about dial up connections but slower DSL / Cable connections.

user_pref("content.max.tokenizing.time", 2250000);
user_pref("content.notify.interval", 750000);
user_pref("content.notify.ontimer", true);
user_pref("content.switch.threshold", 750000);
user_pref("network.http.max-connections", 48);
user_pref("network.http.max-connections-per-server", 16);
user_pref("network.http.max-persistent-connections-per-proxy", 16);
user_pref("network.http.max-persistent-connections-per-server", 8);
user_pref("nglayout.initialpaint.delay", 0);
user_pref("browser.cache.memory.capacity", 65536);

Fast Computer, Slow Connection (dial-up / modem)
user_pref("browser.xul.error_pages.enabled", true);
user_pref("content.interrupt.parsing", true);
user_pref("content.max.tokenizing.time", 3000000);
user_pref("content.maxtextrun", 8191);
user_pref("content.notify.interval", 750000);
user_pref("content.notify.ontimer", true);
user_pref("content.switch.threshold", 750000);
user_pref("network.http.max-connections", 32);
user_pref("network.http.max-connections-per-server", 8);
user_pref("network.http.max-persistent-connections-per-proxy", 8);
user_pref("network.http.max-persistent-connections-per-server", 4);
user_pref("nglayout.initialpaint.delay", 0);
user_pref("browser.cache.memory.capacity", 65536);

Slow Computer, Fast Connection
user_pref("content.max.tokenizing.time", 3000000);
user_pref("content.notify.backoffcount", 5);
user_pref("content.notify.interval", 1000000);
user_pref("content.notify.ontimer", true);
user_pref("content.switch.threshold", 1000000);
user_pref("content.maxtextrun", 4095);
user_pref("nglayout.initialpaint.delay", 1000);
user_pref("network.http.max-connections", 48);
user_pref("network.http.max-connections-per-server", 16);
user_pref("network.http.max-persistent-connections-per-proxy", 16);
user_pref("network.http.max-persistent-connections-per-server", 8);
user_pref("dom.disable_window_status_change", true);

One of the changes made for this particular configuration is the final line where the status bar is disabled for changing web pages to save processor time.

Slow Computer, Slow Connection(dial-up / modem)

user_pref("content.max.tokenizing.time", 2250000);
user_pref("content.notify.interval", 750000);
user_pref("content.notify.ontimer", true);
user_pref("content.switch.threshold", 750000);
user_pref("nglayout.initialpaint.delay", 750);
user_pref("network.http.max-connections", 32);
user_pref("network.http.max-connections-per-server", 8);
user_pref("network.http.max-persistent-connections-per-proxy", 8);
user_pref("network.http.max-persistent-connections-per-server", 4);
user_pref("dom.disable_window_status_change", true);

mfG

Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: Thomas
Date: October 11, 2006 11:30AM

Hi Guenther,

thanks for your help. i could change the config via :
kmeleon\profiles\default\xxxxx.slt\user.js

it was easy to change it. good to know that you can or have to leave the semi-kolons.

Since I have a fast computer according to the given definition (Intel Pentium 4 and 1,8 GHz), I followed the "fast computer" recommendation and the common-for-all-one.
The browser seems to speed up a bit, but I still have a disturbingly disruptive Seitenaufbau (i.d. page construction) when scrolling.

One more question:
If someone offers a macro in a downloadable directory, is it common to copy the ENTIRE content of the directory and to add it altogether to the very end of "macros.cfg"?

Regards,
Thomas

Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: Thomas
Date: October 11, 2006 01:42PM
Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: guenter
Date: October 12, 2006 03:47AM

Your machine is fast - when specs were tested it was top - & found good.
Jan had similar system when he wrote that.

That is probably by Fast Jan (lontronics.nl) & it is worth a try.
/probably extremly good - If Your conection is like the one he had.

(sein pc war damals gut - eher etwas schneller als deiner )

Jan war unser spziallist - ist aber ->jetzt linuxer :-(

Options: ReplyQuote
Re: Need working pagespeed macro
Posted by: Thomas
Date: October 12, 2006 10:30AM

ich hab gestern die beiden einstellungen getestet und meine, daß die einstellungen aus tips&tricks schneller laufen, aber es ist kaum ein unterschied.

irgendwo hab ich gelesen, daß http.pipelining.maxrequest auf 100 stellen technisch unsinn ist, weil mehr als 8 nicht verarbeitet werden *können*.
ka, ob das stimmt.




mein problem mit dem inhalt des links ist, daß ich nicht versteh,wie ich ihn anwende:

z.B. die Aufforderung:

"In Macros:


To have the option properly checked on startup, add to the following macro:


Sync{

&EngineSync?;
setcheck("macros(SN0)",getpref(INT,$so)==0? true:false);
setcheck("macros(SN1)",getpref(INT,$so)==1? true:false);
setcheck("macros(SN2)",getpref(INT,$so)==2? true:false);
setcheck("macros(SearchLock?)",getpref(BOOL,$sl));
...

setcheck("macros(ToggleSpeed)", getpref(BOOL, "network.http.pipelining") == true ? true:false);

}
"


Wo soll das hin? Bislang hab ich verstanden, daß das in macros.cfg muß.
So weit, so hoffentlich gut. Aber innerhalb von macros.cfg. Wo dahin, am Ende; oder doch eher an einen bestimmten Ort?
Und dann das folgende einfach hinterher?

Options: ReplyQuote


K-Meleon forum is powered by Phorum.