[KPhotoAlbum] Some more things

Robert Krawitz rlk at alum.mit.edu
Mon Jun 18 13:36:51 BST 2018


I've updated contrib/kpa-merge to handle version 8 files; it always
writes version 7.  I also updated database-layout.md to note that
stack IDs and order start with 1, rather than the perhaps expected 0.
I pushed both of these to master.

Finally, I've done some improvements to startup that improve startup
time by about 15% on my system (270K files, version 8 index.xml in
compressed format).  I don't expect them to be problematic, but if
someone wants to review the changes, they're on startup-performance.
The main improvement is that it only creates new path category members
if the directory path isn't already present (it was doing quite a bit
of work).  I also changed the MD5 representation to be a pair of
64-bit unsigneds rather than 4 32-bit unsigneds.

Beyond that, there's not a lot of obvious fat to trim; it's either
optimize a lot of small things even more or make much bigger changes.
About 20% of startup time is spent in the Qt XML parser; much of the
remainder is spent creating the ImageInfo.  To do much better we would
need a more efficient representation (perhaps a binary stream
representation), or defer as much as possible until after the GUI is
up.

-- 
Robert Krawitz                                     <rlk at alum.mit.edu>

***  MIT Engineers   A Proud Tradition   http://mitathletics.com  ***
Member of the League for Programming Freedom  --  http://ProgFree.org
Project lead for Gutenprint   --    http://gimp-print.sourceforge.net

"Linux doesn't dictate how I work, I dictate how Linux works."
--Eric Crampton



More information about the Kphotoalbum mailing list