Wednesday, August 22, 2007

Iconcache is Done :-)

The coding phase of the Summer of Code is now over (for two days already).
Within the last days I managed to add mmap-implementation which instead of opening/reading/closing cache files all the time maps them into shared memory and then just uses that memory. It seems to increase performance (of reading icons from the cache) by about 30%. More than I anticipated.

In the end I managed to get in all the features and ideas that I had, so the work on the icon/pixmap cache can be considered complete now. There might of course be some smaller performance tweaking and bugfixing and apidocs additions and so on, but I don't expect to do any bigger changes.
It also means that if you see a bug concerning icon loading or pixmap cache (I hope you won't ;-) then report it. Either contact me directly or add a comment here or whatever.

I still haven't gotten to doing the final benchmarking... maybe at the end of this week or in the next one...

5 comments:

Anonymous said...

Great job!

Anonymous said...

Congratulations! And thanx a lot for giving KDE 4 a performance boost:-)

Keep up the good work! We're more than happy that Google's enabled you to spend so much time coding for everyone using KDE:-)

Simon

Anonymous said...

Thanks very much for all your effort making KDE a lot faster and enjoying to use.

Oh, I read your last comment from your previous post. Thanks for having explained us the technical details. I feel comfortable with your solution. It seams good.

You've done an impressive right job.

Gustavo Sverzut Barbieri said...

Hi,

Maybe now you can check how to keep most used icons near, like I suggested at https://www.blogger.com/comment.g?blogID=6144115306124694421&postID=3206652760263792916

Idea is to reduce seek time (on load) and keep them in the same memory pages, so when they're swapped out they can be back together (also reducing disk seeks).

Just an idea!

Rivo Laks said...

Gustavo: yeah, that's indeed something that I could try in the future. However I won't do it for 4.0, so maybe for 4.1.

And thanks for the kind words everyone :-)