OpenCL 1.1 is required. NVidia is dragging their feet when it comes to OpenCL support. They only introduced OpenCL 1.2 support a couple months ago, given that it was standardized back in 2011. OpenCL version doesn't affect speed, it just limits the developer in which features they can use. I generally find OpenCL 1.1 sufficient for my needs.dtic wrote:I'm not sure if a specific version of OpenCL is needed (1.1 , 1.2 , ... ?) or would make a difference in terms of speed.
Scan Tailor "Experimental"
Moderator: peterZ
Re: Scan Tailor "Experimental"
Scan Tailor experimental doesn't output 96 DPI images. It's just what your software shows when DPI information is missing. Usually what you get is input DPI times the resolution enhancement factor.
Re: Scan Tailor "Experimental"
just processed 205 scanned pages (300dpi)dtic wrote:@Xerum, Wow those are some impressive speedup stats! Could you do a speed comparison with and without GPU (OpenCL) support?
i unchecked all accelerate settings and selected my onboard CPU
output process speed was 33 seconds
i then checked both accelerate settings and selected my onboard CPU
output process speed was 27 seconds
i then checked both accelerate settings and selected my GTX465 GPU
output speed was 17 seconds
however when i process the same in ST911
output speed was 2min:45sec
regardless of what accelerate settings you choose you will definitely get heaps better performance from Tulon;s STEXP
Re: Scan Tailor "Experimental"
Thanks Tulon. I realized that my Intel iGPU has OpenCL 1.2 so I can try the acceleration without a separate GPU.
Thanks Xerum. Sounds like the multithreading is the biggest factor. I'll testdrive it myself soon. Will be interesting to compare it to using multiple instances of old ST over command line. Though doubling the speed (compared to no acceleration) with your GTX465 makes me wonder what additional speed improvements one might get with a current flagship GPU (or two!).
Thanks Xerum. Sounds like the multithreading is the biggest factor. I'll testdrive it myself soon. Will be interesting to compare it to using multiple instances of old ST over command line. Though doubling the speed (compared to no acceleration) with your GTX465 makes me wonder what additional speed improvements one might get with a current flagship GPU (or two!).
-
- Posts: 24
- Joined: 03 Apr 2014, 21:20
- E-book readers owned: 8 kindles
- Number of books owned: 3000
- Country: us
Re: Scan Tailor "Experimental"
Many thanks, 64bit works much faster.Tulon wrote:Here is a new experimental release: https://github.com/Tulon/scantailor/rel ... 2015_07_19
This one supports multi-threaded batch processing, only the 64-bit version though.
Re: Scan Tailor "Experimental"
I don't know if 4 threads is 4x faster than 1 thread, given that I have two cores with SMT for a total of 4 threads. But it's much like Finereader processing 4 pages at the same time, the deskew and detect text steps are now much faster.
Is there much a difference in approaching algorithm parallelization? One page on multiple threads? I have no idea about that, but for me it would be something like splitting the page in smaler pieces for each thread?
Is there much a difference in approaching algorithm parallelization? One page on multiple threads? I have no idea about that, but for me it would be something like splitting the page in smaler pieces for each thread?
- dingodog
- Posts: 110
- Joined: 22 Jul 2010, 18:19
- Number of books owned: 1000
- Country: on the net
- Location: on the net
- Contact:
Re: Scan Tailor "Experimental"
I was excited to try this new experimental branch of scantailor
but not having the qt5 libs in my linux environment I downloaded the windows executable build
the old stable branch of scantailor builds for windows worked without pain previously with wine in linux (no problems at all)
but this experimental executable for windows has some issues with wine in linux
trying to select the geometric distortion stage I get a crash.
it is mainly a wine issue, I think, I post only for information and I'll send a bug report to wine HQ
but not having the qt5 libs in my linux environment I downloaded the windows executable build
the old stable branch of scantailor builds for windows worked without pain previously with wine in linux (no problems at all)
but this experimental executable for windows has some issues with wine in linux
trying to select the geometric distortion stage I get a crash.
it is mainly a wine issue, I think, I post only for information and I'll send a bug report to wine HQ
Code: Select all
Unhandled exception: unimplemented function msvcr120.dll.nextafterf called in 32-bit code (0x7b83b203).
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
EIP:7b83b203 ESP:01dcd954 EBP:01dcd9c8 EFLAGS:00000212( - -- I -A- - )
EAX:7b827c79 EBX:7b8a15fc ECX:00000000 EDX:01dcd980
ESI:00000002 EDI:06bea020
Stack dump:
0x01dcd954: 01dcd9f0 00000008 00000002 00d20060
0x01dcd964: 001d4c00 01dcd9a8 80000100 00000001
0x01dcd974: 00000000 7b83b203 00000002 7ecaa4c0
0x01dcd984: 7ecae9d8 01dcd9b8 7ec69926 06bea57c
0x01dcd994: 0000031f 01dcd9c0 7eccb964 01dcda64
0x01dcd9a4: 001d4c00 01dcd9d8 7ec696cc 7eccb964
Backtrace:
=>0 0x7b83b203 RaiseException+0x83() in kernel32 (0x01dcd9c8)
1 0x7eca9fdf __wine_spec_unimplemented_stub+0x2e() in msvcr120 (0x01dcd9fc)
2 0x7ec45605 __wine_stub_nextafterf+0x28() in msvcr120 (0x01dcda28)
3 0x003694fa in dewarping (+0x394f9) (0x01dcda28)
4 0x0036d8db in dewarping (+0x3d8da) (0x01dcda7c)
5 0x0036b8db in dewarping (+0x3b8da) (0x01dcdb0c)
6 0x0037c938 in dewarping (+0x4c937) (0x01dcdd18)
7 0x0037bd94 in dewarping (+0x4bd93) (0x01dcdea0)
8 0x0035ebd0 in dewarping (+0x2ebcf) (0x01dce23c)
9 0x004e375d in scantailor (+0xe375c) (0x01dce454)
10 0x004e2742 in scantailor (+0xe2741) (0x01dce4bc)
11 0x004c5e5d in scantailor (+0xc5e5c) (0x01dce7dc)
12 0x004c1655 in scantailor (+0xc1654) (0x01dce8f0)
13 0x0053c12b in scantailor (+0x13c12a) (0x01dce9c4)
14 0x005230e3 in scantailor (+0x1230e2) (0x01dce9f8)
15 0x67026b15 in qt5core (+0x26b14) (0x01dcea4c)
16 0x67029214 in qt5core (+0x29213) (0x00de4768)
17 0x00de4848 (0x67233c3c)
18 0x67208110 in qt5core (+0x20810f) (0x67208090)
19 0x0f001879 (0x8304498b)
0x7b83b203 RaiseException+0x83 in kernel32: addl $12,%esp
Modules:
Module Address Debug info Name (101 modules)
PE 330000- 3e6000 Export dewarping
PE 3f0000- 400000 Deferred zdll
PE 400000- 6db000 Export scantailor
PE 6e0000- 787000 Deferred imageproc
PE 790000- 7b0000 Deferred foundation
PE 7b0000- bf5000 Deferred qt5gui
PE c00000- c2a000 Deferred libpng
PE c30000- c6c000 Deferred libjpeg
PE c70000- ccf000 Deferred math
PE cd0000- d1d000 Deferred libtiff
PE e30000- f0c000 Deferred qwindows
PE 10000000-10017000 Deferred acceleration
PE 61000000-61028000 Deferred qt5xml
PE 63000000-63046000 Deferred qt5opengl
PE 65000000-65435000 Deferred qt5widgets
PE 67000000-6744a000 Export qt5core
ELF 7a800000-7a8e0000 Deferred opengl32<elf>
\-PE 7a820000-7a8e0000 \ opengl32
ELF 7b800000-7ba4a000 Dwarf kernel32<elf>
\-PE 7b810000-7ba4a000 \ kernel32
ELF 7bc00000-7bcd3000 Deferred ntdll<elf>
\-PE 7bc10000-7bcd3000 \ ntdll
ELF 7bf00000-7bf03000 Deferred <wine-loader>
ELF 7d7b0000-7d7f1000 Deferred usp10<elf>
\-PE 7d7c0000-7d7f1000 \ usp10
ELF 7d7f2000-7d820000 Deferred libcrypt.so.1
ELF 7d820000-7d95e000 Deferred libcrypto.so.0
ELF 7d95e000-7d99e000 Deferred libssl.so.0
ELF 7d99e000-7d9c6000 Deferred libcups.so.2
ELF 7d9c6000-7da00000 Deferred winspool<elf>
\-PE 7d9d0000-7da00000 \ winspool
ELF 7da00000-7daec000 Deferred comctl32<elf>
\-PE 7da10000-7daec000 \ comctl32
ELF 7daec000-7dbcd000 Deferred comdlg32<elf>
\-PE 7daf0000-7dbcd000 \ comdlg32
ELF 7dbcd000-7dbe4000 Deferred userenv<elf>
\-PE 7dbd0000-7dbe4000 \ userenv
ELF 7e1a8000-7e1dc000 Deferred uxtheme<elf>
\-PE 7e1b0000-7e1dc000 \ uxtheme
ELF 7e1dc000-7e1e4000 Deferred libxi.so.6
ELF 7e1e4000-7e201000 Deferred wintab32<elf>
\-PE 7e1f0000-7e201000 \ wintab32
ELF 7e249000-7e24e000 Deferred libxfixes.so.3
ELF 7e24e000-7e257000 Deferred libxcursor.so.1
ELF 7e257000-7e25d000 Deferred libxrandr.so.2
ELF 7e25d000-7e265000 Deferred libxrender.so.1
ELF 7e265000-7e26a000 Deferred libxxf86vm.so.1
ELF 7e26a000-7e26d000 Deferred libxinerama.so.1
ELF 7e26d000-7e272000 Deferred libxdmcp.so.6
ELF 7e272000-7e289000 Deferred libxcb.so.1
ELF 7e289000-7e28b000 Deferred libxcb-xlib.so.0
ELF 7e28b000-7e28e000 Deferred libxau.so.6
ELF 7e28e000-7e376000 Deferred libx11.so.6
ELF 7e376000-7e384000 Deferred libxext.so.6
ELF 7e384000-7e406000 Deferred winex11<elf>
\-PE 7e390000-7e406000 \ winex11
ELF 7e406000-7e50f000 Deferred oleaut32<elf>
\-PE 7e420000-7e50f000 \ oleaut32
ELF 7e50f000-7e535000 Deferred msacm32<elf>
\-PE 7e510000-7e535000 \ msacm32
ELF 7e535000-7e5e4000 Deferred winmm<elf>
\-PE 7e540000-7e5e4000 \ winmm
ELF 7e5e4000-7e605000 Deferred imm32<elf>
\-PE 7e5f0000-7e605000 \ imm32
ELF 7e60f000-7e62f000 Deferred libexpat.so.1
ELF 7e62f000-7e65a000 Deferred libfontconfig.so.1
ELF 7e65a000-7e66b000 Deferred libz.so.1
ELF 7e66b000-7e6d8000 Deferred libfreetype.so.6
ELF 7e6d8000-7e7bf000 Deferred msvcp120<elf>
\-PE 7e710000-7e7bf000 \ msvcp120
ELF 7e7bf000-7e7e3000 Deferred mpr<elf>
\-PE 7e7d0000-7e7e3000 \ mpr
ELF 7e7e3000-7e81a000 Deferred ws2_32<elf>
\-PE 7e7f0000-7e81a000 \ ws2_32
ELF 7e81a000-7e88f000 Deferred rpcrt4<elf>
\-PE 7e830000-7e88f000 \ rpcrt4
ELF 7e88f000-7e992000 Deferred ole32<elf>
\-PE 7e8b0000-7e992000 \ ole32
ELF 7e992000-7e9fb000 Deferred shlwapi<elf>
\-PE 7e9a0000-7e9fb000 \ shlwapi
ELF 7e9fb000-7ec1a000 Deferred shell32<elf>
\-PE 7ea10000-7ec1a000 \ shell32
ELF 7ec1a000-7ecdc000 Dwarf msvcr120<elf>
\-PE 7ec30000-7ecdc000 \ msvcr120
ELF 7ecdc000-7ecf4000 Deferred version<elf>
\-PE 7ece0000-7ecf4000 \ version
ELF 7ecf4000-7ee29000 Deferred user32<elf>
\-PE 7ed10000-7ee29000 \ user32
ELF 7ee29000-7ee90000 Deferred advapi32<elf>
\-PE 7ee40000-7ee90000 \ advapi32
ELF 7ee90000-7ef92000 Deferred gdi32<elf>
\-PE 7eea0000-7ef92000 \ gdi32
ELF 7efd1000-7eff8000 Deferred libm.so.6
ELF 7eff8000-7f000000 Deferred librt.so.1
ELF b7bf3000-b7bfe000 Deferred libnss_files.so.2
ELF b7c00000-b7c04000 Deferred libdl.so.2
ELF b7c04000-b7d46000 Deferred libc.so.6
ELF b7d46000-b7d5d000 Deferred libpthread.so.0
ELF b7d5d000-b7f10000 Dwarf libwine.so.1
ELF b7f11000-b7f2e000 Deferred ld-linux.so.2
ELF ffffe000-fffff000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
0000000c services.exe
00000027 0
00000026 0
0000000e 0
0000000d 0
00000024 winedevice.exe
00000029 0
00000028 0
00000025 0
0000002f (D) C:\Program Files\Scan Tailor\scantailor.exe
0000003a 0
00000039 0
00000038 0 <==
00000037 0
00000036 0
00000030 0
00000031 explorer.exe
00000035 0
00000034 0
00000033 0
00000032 0
System information:
Wine build: wine-1.7.47
Platform: i386
Host system: Linux
Host version: 2.6.21.7
Re: Scan Tailor "Experimental"
no features requests in this forum
Re: Scan Tailor "Experimental"
Hi Tulon,
I can't seem to get the following alignments to apply to "all pages";
- top left and right
- middle left and right
- bottom left and right
the only ones that "apply all" are;
- top middle and bottom
- centre
Thanks
Xe
I can't seem to get the following alignments to apply to "all pages";
- top left and right
- middle left and right
- bottom left and right
the only ones that "apply all" are;
- top middle and bottom
- centre
Thanks
Xe
Re: Scan Tailor "Experimental"
hi,
after test with lastest release, i think it still has output blank page bug with small content, if set alignment match size by scaling with bottom left, bottom center and bottom right. it seems glitch if set center left, center or center right.
after test with lastest release, i think it still has output blank page bug with small content, if set alignment match size by scaling with bottom left, bottom center and bottom right. it seems glitch if set center left, center or center right.
Re: Scan Tailor "Experimental"
I see OpenCL now. I've read that Intel i3 sandy bridge supports OpenCL 1.0 through emulation on the cpu.