Post scan multi-processing
Moderator: LSI_Moeller
Post scan multi-processing
Please enable post scan multiprocessor support as a patch to the latest version. SF has many features that are applied after scan. Just using half a processor requires more time, extending the time necessary to work with 36 frame films.
Dear hmmacha
while we will make the step towards multi-core and multi-CPU processing, this will not be possible during the lifetime of SilverFast 6.5.
The whole programming framework would need to be changed and this is a step we are already actively pursueing, but cannot integrate in this "old" version (remember 6.0 had been released December 2002 and the "ground" stems from an even earlier time).
Nevertheless, thank you for encouraging us to move further down the road we're (albeit internally at this time or writing) treading :)
Best regards
Sonny Noack
- Manager Technical Support, LaserSoft Imaging AG -
while we will make the step towards multi-core and multi-CPU processing, this will not be possible during the lifetime of SilverFast 6.5.
The whole programming framework would need to be changed and this is a step we are already actively pursueing, but cannot integrate in this "old" version (remember 6.0 had been released December 2002 and the "ground" stems from an even earlier time).
Nevertheless, thank you for encouraging us to move further down the road we're (albeit internally at this time or writing) treading :)
Best regards
Sonny Noack
- Manager Technical Support, LaserSoft Imaging AG -
Possible simplified multi-processing
I have a suggestion for an interim multi-processing that might be possible to implement.
I assume that when you are scanning, you receive the data from the scanner and write it to a temporary file or memory buffer; then, you do the post-processing from that file/buffer.
What I would suggest is that you extend this to use TWO such buffers/files. You can scan to one, then start post-processing in the normal manner. While this post-processing is going on, you can start another scan to the second buffer; after that is finished you wait for the first post-processing to finish, then start post-processing the first and a new scan to the second.
This feature would initially only be available for batch scanning, so you should not have to do much to the GUI.
While it is a limited capability, it would still almost double the throughput on my DigitDia 4000, where post-processing takes not much more than scanning. All multi-scans etc would of course run sequentially like today - keep it as (technically) simple as possible while achieving at least some parallellism.
I assume that when you are scanning, you receive the data from the scanner and write it to a temporary file or memory buffer; then, you do the post-processing from that file/buffer.
What I would suggest is that you extend this to use TWO such buffers/files. You can scan to one, then start post-processing in the normal manner. While this post-processing is going on, you can start another scan to the second buffer; after that is finished you wait for the first post-processing to finish, then start post-processing the first and a new scan to the second.
This feature would initially only be available for batch scanning, so you should not have to do much to the GUI.
While it is a limited capability, it would still almost double the throughput on my DigitDia 4000, where post-processing takes not much more than scanning. All multi-scans etc would of course run sequentially like today - keep it as (technically) simple as possible while achieving at least some parallellism.
Update to suggestion
Hello again, I saw that I should have been more careful with my phrasing. But I'm sure you get the point - alternately scanning to and post-processing from two buffers, so that you can scan to one and post-process the other and vice versa. It's a sort of poor-man's multitasking, but in my opinion it would be well worthwhile, and should not be as technically demanding as, for instance, partitioning and parallellizing iSRD or advanced filters.
Best regards,
Marek
Best regards,
Marek
-
dickkaiser
- SilverFast Beginner
- Posts: 12
- Joined: Sun May 03, 2009 3:05 am
Re: Post scan multi-processing
I'd like to echo this request. Just overlapping the scanning with the post processing would be fabulous.
There are some less difficult ways to add parallelism to your application. You can replace some of your library calls with threaded high performance libraries such as Intel's IPP. When you do go to add parallelism, you can do it more effectively at a higher level using a threading library like Intel's TBB. Download free evaluation software at: http://software.intel.com/en-us/intel-sdp-home/.
Processor clocks speeds will not be increasing. The major performance boost from now on will be more cores.
Cheers!
There are some less difficult ways to add parallelism to your application. You can replace some of your library calls with threaded high performance libraries such as Intel's IPP. When you do go to add parallelism, you can do it more effectively at a higher level using a threading library like Intel's TBB. Download free evaluation software at: http://software.intel.com/en-us/intel-sdp-home/.
Processor clocks speeds will not be increasing. The major performance boost from now on will be more cores.
Cheers!
-
dickkaiser
- SilverFast Beginner
- Posts: 12
- Joined: Sun May 03, 2009 3:05 am
Re: Post scan multi-processing
I just timed it. My batch scans are scanner bound, not processing bound even with all the extras like SRD and multi-exposure. So, no need for a lot of parallelism, just do the processing in the background while scanning and we'll get 2x the throughput.
Thanks! Nice software.
Cheers,
Dick
Thanks! Nice software.
Cheers,
Dick
-
LSI_Luebker
- SilverFast Master

- Posts: 591
- Joined: Mon May 07, 2007 9:43 am
Re: Post scan multi-processing
Dear Dick,
thank you for your suggestions, we already use multiple cores iSRD which actually makes good use of the additional processing power.
It is implemented in the Mac as well as in the Windows Version of SilverFast.
thank you for your suggestions, we already use multiple cores iSRD which actually makes good use of the additional processing power.
It is implemented in the Mac as well as in the Windows Version of SilverFast.
best regards,
Thomas Luebker,
LaserSoft Imaging AG
Thomas Luebker,
LaserSoft Imaging AG
Re: Post scan multi-processing
Yes, I noticed when I recently upgraded to a multi-core computer. Is this a recent change? iSRD now is pleasantly fast (I'm scanning slides at 3600dpi, so 15megapix/image), and it also seems that the algorithm has been improved to avoid the rare cases when it "went bananas" and made ugly, sharp artefacts.
One question: Would 4 cores then go roughly twice as fast as my current two?
Overlapping scanning with post-processing would gain me about 25-30% improvement in total. Worthwhile but perhaps not critical anymore; especially if iSRD (which is the expensive one) can scale to 4 cores.
Best regards,
Marek
One question: Would 4 cores then go roughly twice as fast as my current two?
Overlapping scanning with post-processing would gain me about 25-30% improvement in total. Worthwhile but perhaps not critical anymore; especially if iSRD (which is the expensive one) can scale to 4 cores.
Best regards,
Marek
-
LSI_Luebker
- SilverFast Master

- Posts: 591
- Joined: Mon May 07, 2007 9:43 am
Re: Post scan multi-processing
Dear Marek,
yes this change has beend introduced recently with the improvements in iSRD that you already noticed.
In terms of more than one Core I can tell you that our Developers have done they best to make this feature scalable, so on my testing MacPro all 8 Cores are used.
yes this change has beend introduced recently with the improvements in iSRD that you already noticed.
In terms of more than one Core I can tell you that our Developers have done they best to make this feature scalable, so on my testing MacPro all 8 Cores are used.
best regards,
Thomas Luebker,
LaserSoft Imaging AG
Thomas Luebker,
LaserSoft Imaging AG
-
dickkaiser
- SilverFast Beginner
- Posts: 12
- Joined: Sun May 03, 2009 3:05 am
Re: Post scan multi-processing
Yes, the performance for iSRD is great. My point is that I'm scanner bound, but my scanner is only scanning half of the time. I scan a slide, then it processes, then it scans another slide. If you can overlap scanning and processing, instead of doing it serially as you do today, then there is no need to make processing faster (at least for batch scans) as the processing step (including iSRD) is already faster than the scan. If the scan of "slide #2" occurs at the same time as the processing of "slide #1" the processing time "hides" behind the next scan. I'm not sure what this would mean for a flat bed scanner, but for my Nikon slide scanner with a feeder it would be great.
-
LSI_Luebker
- SilverFast Master

- Posts: 591
- Joined: Mon May 07, 2007 9:43 am
Re: Post scan multi-processing
Dear dickkaiser,
thanks for your suggestions we will take it into consideration.
thanks for your suggestions we will take it into consideration.
best regards,
Thomas Luebker,
LaserSoft Imaging AG
Thomas Luebker,
LaserSoft Imaging AG
Return to “New features wishlist”
Who is online
Users browsing this forum: No registered users and 1 guest
