[gs-bugs] [Bug 689534] Poor performance reading PDF file

bugs.ghostscript.com-bugzilla-daemon at ghostscript.com bugs.ghostscript.com-bugzilla-daemon at ghostscript.com
Sun Apr 27 23:47:44 PDT 2008


http://bugs.ghostscript.com/show_bug.cgi?id=689534

leonardo at artifex.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|leonardo at artifex.com        |ray.johnston at artifex.com



------- Additional Comments From leonardo at artifex.com  2008-04-27 23:47 -------
Folks, I don't see what can I improve here in the kernel level. The document is 
large, and it needs big resources to rasterize. Particularly, the default band 
size (13 pixels) is too small for it. It causes 764 bands, and most objects are 
too fraggled. When I set -dBufferSpace=40000000 -r300, the ducument completes 
in 20 minutes on the old Zeon 3.05. Since the page size id 53x33 inches, it is 
equivalent to 20 A4 pages, so we have 1 minuter per 1 A4 page - no so bad. I 
believe that Ray should write a proper documentation for end users about 
banding paramenets and memory settings for large pages, so I bumped the 
priority for bug 689668.

Besides that, I think a rewriting of the PDF interpreter in C may help. I see 
the document causes a lot of PS operations for each small graphic object, and 
it would be nice to decreese this expense. I recommend Alex to look whether he 
can optimize the PDF interpreter. Please build gs with 
XCFLAGS=/DDEBUG_TRACE_PS_OPERATORS and run this :

gswin32c.exe -Z!L -dBufferSpace=40000000  -r300 -dNOPAUSE -dNOOUTERSAVE -
dBATCH -dEPSFitPage -sDEVICE=tiffg4 -sOutputFile=cur.tif 689534.pdf 2>j:\o

It will generate a 2Gb trace in 3 hours, and one can see that we execute 200+ 
PS operators for each simple object like this :

3321.89 336.66 m
3322.89 336.66 l
S

Passing the bug to Ray because I believe that the documentation is the critical 
issue here.

If you folks have ideas what to improve in the kernel, I'm open to listen them.



------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.



More information about the gs-bugs mailing list