Wed 21 Dec 2011 11:12:43 AM UTC, comment #2:
Hi,
I did some test of the start up times in different versions to find what have caused this regression.
I replaced the main loop (XtAppMainLoop) with a dummy function that returns immediately using LD_PRELOAD, and timed the real time used by xboard from start to exit. It was real time because presumably most of the time is spent by the X server.
All times was about 3.2 seconds until this patch:
commit 30583dd0f88cef9b1281f2ce5fa06651bf6d4bb6
Author: Tim Mann <tim@tim-mann.org>
Date: Mon May 30 13:21:06 2011 -0700
Add a final wildcard default for fonts. This gives XCreateFontSet
more freedom and lets it find fonts for some obscure charsets where
fixed-bold or fixed-medium etc. may not have one.
That increased the time to 3.8 seconds if configured with NLS enabled. It may possibly cause a much worse increase in start up time if you are short on RAM and the computer have to use swap memory.
The time stayed at 3.8 s until this patch:
commit 2bc700b32c6058a3e8f9c3a70d842c525cf0a6e3
Author: H.G. Muller <h.g.muller@hccnet.nl>
Date: Mon Nov 28 11:56:18 2011 +0100
Refrain from making unnecessary resize X request
The window resizing code in InitDrawingSizes is suppressed when no
change is needed. Similarly, changing piece bitmaps is suppressed when
we stay in the same variant (and InitDrawingSizes is called e.g. because
of chaging lineGap through the Board dialog).
It reduced the start up time to 2.3 seconds with NLS enabled and and 1.7 s without NLS.
So my advice at the moment is:
Try the newest version from git or the latest test tar ball (ftp://alpha.gnu.org/gnu/xboard/xboard-4.6.0.20111203.tar.gz), configure it without NLS (the command is "./configure --disable-nls") and see if this solves the problem.
|