KIconLoader Optimization Idea
Gustavo Pichorim Boiko
gustavo.boiko at kdemail.net
Mon Jun 6 21:17:36 CEST 2005
Em Sunday 05 June 2005 10:45, Luke Alan Sandell escreveu:
> Hi, my name is Luke Sandell, and I am a student at Appalachian State
> University looking for a project to do for Google's Summer of Coding. I had
> an idea for optimization but I wanted to run it by this group before I
> decide.
>
> My idea deals with the never-ending saga of application startup times. From
> watching the debug messages while KDE apps are starting up, it seems that a
> significant amount of time is spent loading icons into memory. This is sad,
> seeing as the same icons are used across the entire KDE session. It seems
> to me that this could be avoided by making KIconLoader's internal cache
> session-global. Right now, KDE doesn't have any classes for sharing memory
> between applications (KSharedPixmap seems a bit overkill for 32x32 pixel
> icons), but one could easily be developed using shm_open(). This would have
> the added bonus that applications would not have identical copies of the
> same data, and thus the KApplication memory footprint would decrease.
> Additionally, the code developed for this project could be reused for
> sharing other types of data between KDE apps to the same end.
>
> What do you think? If this is not a good idea, feel free to suggest others.
Some time ago Lubos Lunak have started an icon server implementation, in which
the server is in charge of keeping one instance of the icon loaded, and all
aplications that request those icons get just the X pixmap handle of the
pixmap.
I'm currently working to finish that implementation, so I can benchmark it to
see if it is worth. If you want to give it a try, I can send you the patches
(there are still some bugs in the implementation, but I think it is ok for
doing initial tests)
Cheers
--
Gustavo Pichorim Boiko
-----------------------------------------------------
KDE Developer Computer Science - UFPR
Conectiva Labs gustavo . boiko @ kdemail . net
-----------------------------------------------------
More information about the Kde-optimize
mailing list