[Digikam-users] Can "Sharpen" be parallelized?

Gilles Caulier caulier.gilles at gmail.com
Tue Apr 29 18:27:12 BST 2014


I found time to port Refocus tool about multicore support :

Same condition, same image than with LocalContrast tool :

Without multicore :

digikam(2436)/digikam (core) Digikam::RefocusFilter::refocusImage:
RefocusFilter::Compute matrix...
digikam(2436)/digikam (core) Digikam::RefocusFilter::refocusImage:
RefocusFilter::Apply Matrix to image...
digikam(2436)/digikam (core)
Digikam::DImgThreadedFilter::startFilterDirectly: "Refocus" ::
excecution time :  31563  ms
digikam(2436)/digikam (core)
Digikam::EditorToolThreaded::slotFilterFinished: Preview  "Sharpen"
completed...


With multicore support :

digikam(5291)/digikam (core) Digikam::RefocusFilter::refocusImage:
RefocusFilter::Compute matrix...
digikam(5291)/digikam (core) Digikam::RefocusFilter::refocusImage:
RefocusFilter::Apply Matrix to image...
digikam(5291)/digikam (core)
Digikam::DImgThreadedFilter::startFilterDirectly: "Refocus" ::
excecution time :  10080  ms
digikam(5291)/digikam (core)
Digikam::EditorToolThreaded::slotFilterFinished: Preview  "Sharpen"
completed...

To resume : Refocus tool is 3 times faster than before now !

Gilles Caulier

2014-04-29 18:40 GMT+02:00 Gilles Caulier <caulier.gilles at gmail.com>:
> 2014-04-29 18:38 GMT+02:00 Gilles Caulier <caulier.gilles at gmail.com>:
>> 2014-04-29 17:56 GMT+02:00 Robert Zeller <robert.zeller at robert-zeller.org>:
>>> Hi Gilles,
>>>
>>> sounds good; any progress here is highly appreciated; though a speedup
>>> of a factor of 2 on an 8 core CPU calls for further improvement. BTW:
>>> OpenMP is not 3rd party software;  libgomp1 (openMP runtime library) is
>>> available across all Linux distributions.
>>
>> for digiKam OpemMP is a 3rd party dependency :
>>
>> - digiKam do not use OpenMP.
>> - we don't want to extend dependencies to infinite.
>> - digiKam already use Qt of course.
>> - OpenMP syntax use pre-processor rules which is old style coding, not C++
>
> ==> Another one : OpenMP is not multi-platform as Qt : For ex, OSX do
> not support it...
>
> Gilles Caulier



More information about the Digikam-users mailing list