[KPhotoAlbum] Performance observations

Robert Krawitz rlk at alum.mit.edu
Sun May 13 23:56:24 CEST 2018


Please hold off on merging my latest performance patch pending some
more testing.

A couple more observations:

1) I'm getting a lot of messages like this:

libkdcraw: Preview data size: 1001124
libkdcraw: Using embedded RAW preview extraction
libkdcraw: Failed to load embedded RAW preview
QObject::killTimer: Timers cannot be stopped from another thread
QObject::startTimer: Timers cannot be started from another thread
libkdcraw: Failed to load embedded RAW preview
QObject::killTimer: Timers cannot be stopped from another thread
QObject::startTimer: Timers cannot be started from another thread
libkdcraw: Failed to load embedded RAW preview
QObject::killTimer: Timers cannot be stopped from another thread
QObject::startTimer: Timers cannot be started from another thread
libkdcraw: Failed to load embedded RAW preview
QObject::killTimer: Timers cannot be stopped from another thread
QObject::startTimer: Timers cannot be started from another thread
libkdcraw: Failed to load embedded RAW preview
QObject::killTimer: Timers cannot be stopped from another thread
QObject::startTimer: Timers cannot be started from another thread

The libkdcraw messages are presumably from trying and failing to load
the images as RAW.  The other messages look like they're some kind of
bug in how kpa (or libQt itself) is using QThreads.

2) During image load, iostat 5 is showing 290 MB/sec and maybe 1100
IO/sec.  From strace output, I'm seeing some 1 MB reads from one of
the subthreads (probably the scout thread, which I have set to read 1
MB blocks), but mostly 16K reads (most likely from the main thread).
If the scout thread is doing its work -- and the numbers suggest that
it's at least helping -- those 16K reads are being fetched from RAM,
but I'd still like to see it reading bigger chunks (which may make the
scout thread less necessary).

Turning off the scout thread (on the SSD) results in slightly faster
read times (possibly within margin of error), but much higher I/O
rates.

3) During image load, I'm also getting messages like this (I'm
guessing based on the patter that it's one for every RAW image):

Warning: Ignoring XMP information encoded in the Exif data.
-- 
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